8f0de0d62f
The timekeeping doesn't depend on HZ value in presence of fine grained clocksource and hence there should not be any time drift because of HZ value which was chosen to be divisor of 32768. OMAP has been using HZ = 128 value to avoid any time drift issues because of 32768 HZ clock. But with various measurements performed with HZ = 100, no time drift is observed and it also proves the point about HZ not having impact on time keeping on OMAP. Very informative thread on this topic is here: https://lkml.org/lkml/2013/1/29/435 Special thanks to John Stulz, Arnd Bergmann and Russell King for their valuable suggestions. Cc: Arnd Bergmann <arnd@arndb.de> Cc: Russell King <linux@arm.linux.org.uk> Cc: John Stultz <john.stultz@linaro.org> Cc: Tony Lindgren <tony@atomide.com> Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Tested-by: Lokesh Vutla <lokeshvutla@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
208 lines
5.8 KiB
Plaintext
208 lines
5.8 KiB
Plaintext
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_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
|