6f80b3bb8a
CONFIG_OMAP_32K_TIMER is kind of standing on the single zImage way. Make OMAP2+ timer code independant from the CONFIG_OMAP_32K_TIMER setting. To remove the dependancy, several conversions/additions had to be done: 1) Timer initialization functions are named by the platform name and the clock source in use. This also makes it possible to define and use the GPTIMER as the clock source instead of the 32K timer on platforms that do not have the 32K timer ip block or the 32K timer is not wired on the board. Currently, the the timer is chosen in the machine_desc structure on per board basis. Later, DT should be used to choose the timer. 2) Settings under the CONFIG_OMAP_32K_TIMER option are used as defaults and those under !CONFIG_OMAP_32K_TIMER are removed. This removes the CONFIG_OMAP_32K_TIMER on OMAP2+ timer code. 3) Since we have all the timers defined inside machine_desc structure and we no longer need the fallback to gp_timer clock source in case 32k_timer clock source is unavailable (namely on AM33xx), we no longer need the #ifdef around omap2_sync32k_clocksource_init() function. Remove the #ifdef CONFIG_OMAP_32K_TIMER around the omap2_sync32k_clocksource_init() function. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Cc: Jon Hunter <jon-hunter@ti.com> Cc: Santosh Shilimkar <santosh.shilimkar@ti.com> Cc: Vaibhav Hiremath <hvaibhav@ti.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Reviewed-by: Jon Hunter <jon-hunter@ti.com>
216 lines
6 KiB
Text
216 lines
6 KiB
Text
if ARCH_OMAP
|
|
|
|
menu "TI OMAP Common Features"
|
|
|
|
config ARCH_OMAP_OTG
|
|
bool
|
|
|
|
choice
|
|
prompt "OMAP System Type"
|
|
default ARCH_OMAP2PLUS
|
|
|
|
config ARCH_OMAP1
|
|
bool "TI OMAP1"
|
|
select CLKDEV_LOOKUP
|
|
select CLKSRC_MMIO
|
|
select GENERIC_IRQ_CHIP
|
|
select HAVE_IDE
|
|
select IRQ_DOMAIN
|
|
select NEED_MACH_IO_H if PCCARD
|
|
select NEED_MACH_MEMORY_H
|
|
help
|
|
"Systems based on omap7xx, omap15xx or omap16xx"
|
|
|
|
config ARCH_OMAP2PLUS
|
|
bool "TI OMAP2/3/4"
|
|
select CLKDEV_LOOKUP
|
|
select GENERIC_IRQ_CHIP
|
|
select OMAP_DM_TIMER
|
|
select PINCTRL
|
|
select PROC_DEVICETREE if PROC_FS
|
|
select SPARSE_IRQ
|
|
select USE_OF
|
|
help
|
|
"Systems based on OMAP2, OMAP3, OMAP4 or OMAP5"
|
|
|
|
endchoice
|
|
|
|
comment "OMAP Feature Selections"
|
|
|
|
config OMAP_DEBUG_DEVICES
|
|
bool
|
|
help
|
|
For debug cards on TI reference boards.
|
|
|
|
config OMAP_DEBUG_LEDS
|
|
def_bool y if NEW_LEDS
|
|
depends on OMAP_DEBUG_DEVICES
|
|
select LEDS_CLASS
|
|
|
|
config POWER_AVS_OMAP
|
|
bool "AVS(Adaptive Voltage Scaling) support for OMAP IP versions 1&2"
|
|
depends on POWER_AVS && (ARCH_OMAP3 || ARCH_OMAP4) && PM
|
|
select POWER_SUPPLY
|
|
help
|
|
Say Y to enable AVS(Adaptive Voltage Scaling)
|
|
support on OMAP containing the version 1 or
|
|
version 2 of the SmartReflex IP.
|
|
V1 is the 65nm version used in OMAP3430.
|
|
V2 is the update for the 45nm version of the IP used in OMAP3630
|
|
and OMAP4430
|
|
|
|
Please note, that by default SmartReflex is only
|
|
initialized and not enabled. To enable the automatic voltage
|
|
compensation for vdd mpu and vdd core from user space,
|
|
user must write 1 to
|
|
/debug/smartreflex/sr_<X>/autocomp,
|
|
where X is mpu_iva or core for OMAP3.
|
|
Optionally autocompensation can be enabled in the kernel
|
|
by default during system init via the enable_on_init flag
|
|
which an be passed as platform data to the smartreflex driver.
|
|
|
|
config POWER_AVS_OMAP_CLASS3
|
|
bool "Class 3 mode of Smartreflex Implementation"
|
|
depends on POWER_AVS_OMAP && TWL4030_CORE
|
|
help
|
|
Say Y to enable Class 3 implementation of Smartreflex
|
|
|
|
Class 3 implementation of Smartreflex employs continuous hardware
|
|
voltage calibration.
|
|
|
|
config OMAP_RESET_CLOCKS
|
|
bool "Reset unused clocks during boot"
|
|
depends on ARCH_OMAP
|
|
help
|
|
Say Y if you want to reset unused clocks during boot.
|
|
This option saves power, but assumes all drivers are
|
|
using the clock framework. Broken drivers that do not
|
|
yet use clock framework may not work with this option.
|
|
If you are booting from another operating system, you
|
|
probably do not want this option enabled until your
|
|
device drivers work properly.
|
|
|
|
config OMAP_MUX
|
|
bool "OMAP multiplexing support"
|
|
depends on ARCH_OMAP
|
|
default y
|
|
help
|
|
Pin multiplexing support for OMAP boards. If your bootloader
|
|
sets the multiplexing correctly, say N. Otherwise, or if unsure,
|
|
say Y.
|
|
|
|
config OMAP_MUX_DEBUG
|
|
bool "Multiplexing debug output"
|
|
depends on OMAP_MUX
|
|
help
|
|
Makes the multiplexing functions print out a lot of debug info.
|
|
This is useful if you want to find out the correct values of the
|
|
multiplexing registers.
|
|
|
|
config OMAP_MUX_WARNINGS
|
|
bool "Warn about pins the bootloader didn't set up"
|
|
depends on OMAP_MUX
|
|
default y
|
|
help
|
|
Choose Y here to warn whenever driver initialization logic needs
|
|
to change the pin multiplexing setup. When there are no warnings
|
|
printed, it's safe to deselect OMAP_MUX for your product.
|
|
|
|
config OMAP_MBOX_FWK
|
|
tristate "Mailbox framework support"
|
|
depends on ARCH_OMAP
|
|
help
|
|
Say Y here if you want to use OMAP Mailbox framework support for
|
|
DSP, IVA1.0 and IVA2 in OMAP1/2/3.
|
|
|
|
config OMAP_MBOX_KFIFO_SIZE
|
|
int "Mailbox kfifo default buffer size (bytes)"
|
|
depends on OMAP_MBOX_FWK
|
|
default 256
|
|
help
|
|
Specify the default size of mailbox's kfifo buffers (bytes).
|
|
This can also be changed at runtime (via the mbox_kfifo_size
|
|
module parameter).
|
|
|
|
config OMAP_IOMMU_IVA2
|
|
bool
|
|
|
|
config OMAP_MPU_TIMER
|
|
bool "Use mpu timer"
|
|
depends on ARCH_OMAP1
|
|
help
|
|
Select this option if you want to use the OMAP mpu timer. This
|
|
timer provides more intra-tick resolution than the 32KHz timer,
|
|
but consumes more power.
|
|
|
|
config OMAP_32K_TIMER
|
|
bool "Use 32KHz timer"
|
|
depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS
|
|
default y if (ARCH_OMAP16XX || ARCH_OMAP2PLUS)
|
|
help
|
|
Select this option if you want to enable the OMAP 32KHz timer.
|
|
This timer saves power compared to the OMAP_MPU_TIMER, and has
|
|
support for no tick during idle. The 32KHz timer provides less
|
|
intra-tick resolution than OMAP_MPU_TIMER. The 32KHz timer is
|
|
currently only available for OMAP16XX, 24XX, 34XX and OMAP4/5.
|
|
|
|
On OMAP2PLUS this value is only used for CONFIG_HZ and
|
|
CLOCK_TICK_RATE compile time calculation.
|
|
The actual timer selection is done in the board file
|
|
through the (DT_)MACHINE_START structure.
|
|
|
|
|
|
config OMAP3_L2_AUX_SECURE_SAVE_RESTORE
|
|
bool "OMAP3 HS/EMU save and restore for L2 AUX control register"
|
|
depends on ARCH_OMAP3 && PM
|
|
default n
|
|
help
|
|
Without this option, L2 Auxiliary control register contents are
|
|
lost during off-mode entry on HS/EMU devices. This feature
|
|
requires support from PPA / boot-loader in HS/EMU devices, which
|
|
currently does not exist by default.
|
|
|
|
config OMAP3_L2_AUX_SECURE_SERVICE_SET_ID
|
|
int "Service ID for the support routine to set L2 AUX control"
|
|
depends on OMAP3_L2_AUX_SECURE_SAVE_RESTORE
|
|
default 43
|
|
help
|
|
PPA routine service ID for setting L2 auxiliary control register.
|
|
|
|
config OMAP_32K_TIMER_HZ
|
|
int "Kernel internal timer frequency for 32KHz timer"
|
|
range 32 1024
|
|
depends on OMAP_32K_TIMER
|
|
default "128"
|
|
help
|
|
Kernel internal timer frequency should be a divisor of 32768,
|
|
such as 64 or 128.
|
|
|
|
config OMAP_DM_TIMER
|
|
bool "Use dual-mode timer"
|
|
depends on ARCH_OMAP16XX || ARCH_OMAP2PLUS
|
|
help
|
|
Select this option if you want to use OMAP Dual-Mode timers.
|
|
|
|
config OMAP_SERIAL_WAKE
|
|
bool "Enable wake-up events for serial ports"
|
|
depends on ARCH_OMAP1 && OMAP_MUX
|
|
default y
|
|
help
|
|
Select this option if you want to have your system wake up
|
|
to data on the serial RX line. This allows you to wake the
|
|
system from serial console.
|
|
|
|
choice
|
|
prompt "OMAP PM layer selection"
|
|
depends on ARCH_OMAP
|
|
default OMAP_PM_NOOP
|
|
|
|
config OMAP_PM_NOOP
|
|
bool "No-op/debug PM layer"
|
|
|
|
endchoice
|
|
|
|
endmenu
|
|
|
|
endif
|