forked from Minki/linux
a11da7df65
This branch contains a largeish set of updates of power management and clock setup. The bulk of it is for OMAP/AM33xx platforms, but also a few around hotplug/suspend/resume on Exynos. It includes a split-up of some of the OMAP clock data into separate files which adds to the diffstat, but gross delta is fairly reasonable. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) iQIcBAABAgAGBQJQySrdAAoJEIwa5zzehBx3XBMQAJCgrE/I1vbuiENiVMLpQkN7 0Y5t89SwoALnme5jsM8vW/H0o6b163FfH+249UNs6dyk6MdCqqSv8cQVvSfCKRKn m4JTXS6njSnYgU025klNU9W3FyMuFcgH8b63+c5+sCcqfvdkxrjpNoKqAYNxQlgJ 6DHgHCKZP3JB1e2EFqViw0GJgZIjTNxlWvx8XLcAShSapQ+Ovq/iAcKo41o7ZadB 4zV//VkBMv0TLNTs6SoR0EO8qM+2nIUKE8fgPrRxvvb98tuasKPvlSq9VUeIjnYk kWjNTQYbD1IkrAMPYrwcpLU3xkEr14wrKDBtPK6GdCDcXzdyKq3fzROOXNsqrLmn Y8PkY+J39B59F0DKjyrCjasZyi0tQQV6ps5Xm2X2CB003GWEbo1yu+BodShYEyaL 7OvkLiVpOtq+LOYcsScHtOGdO9le2O3yZevNRvlrCDCvJUYbXNjaM9ZrWcQuTlJc oseYNSRPaIP5PMv2c+Xup9qh/dyAjj8g6gSi9BlDvwVOu/+Cf3laaCAXaFph22jT /m8fW2paiP5UJ0gSt1MLAGFxKi0YI/Qxck8G11LJxUwMZd3SIfOPUAY27tnNC4yL GRynOi3BFRMUAe/Leu2qgwEyoME5nHn+OmAKb36WTYH/HL+PGzHq84e+Wfdan8ha YcSKc1A52LSoYTi4XTUX =h2Qo -----END PGP SIGNATURE----- Merge tag 'pm-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc Pull ARM SoC power management and clock changes from Olof Johansson: "This branch contains a largeish set of updates of power management and clock setup. The bulk of it is for OMAP/AM33xx platforms, but also a few around hotplug/suspend/resume on Exynos. It includes a split-up of some of the OMAP clock data into separate files which adds to the diffstat, but gross delta is fairly reasonable." * tag 'pm-merge' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (60 commits) ARM: OMAP: Move plat-omap/dma-omap.h to include/linux/omap-dma.h ASoC: OMAP: mcbsp fixes for enabling ARM multiplatform support watchdog: OMAP: fixup for ARM multiplatform support ARM: EXYNOS: Add flush_cache_all in suspend finisher ARM: EXYNOS: Remove scu_enable from cpuidle ARM: EXYNOS: Fix soft reboot hang after suspend/resume ARM: EXYNOS: Add support for rtc wakeup ARM: EXYNOS: fix the hotplug for Cortex-A15 ARM: OMAP2+: omap_device: Correct resource handling for DT boot ARM: OMAP2+: hwmod: Add possibility to count hwmod resources based on type ARM: OMAP2+: hwmod: Add support for per hwmod/module context lost count ARM: OMAP2+: PRM: initialize some PRM functions early ARM: OMAP2+: voltage: fixup oscillator handling when CONFIG_PM=n ARM: OMAP4: USB: power down MUSB PHY during boot ARM: OMAP2+: clock: Cleanup !CONFIG_COMMON_CLK parts ARM: OMAP2xxx: clock: drop obsolete clock data ARM: OMAP2: clock: Cleanup !CONFIG_COMMON_CLK parts ARM: OMAP3+: DPLL: drop !CONFIG_COMMON_CLK sections ARM: AM33xx: clock: drop obsolete clock data ARM: OMAP3xxx: clk: drop obsolete clock data ...
421 lines
9.3 KiB
Plaintext
421 lines
9.3 KiB
Plaintext
if ARCH_OMAP2PLUS
|
|
|
|
menu "TI OMAP2/3/4 Specific Features"
|
|
|
|
config ARCH_OMAP2PLUS_TYPICAL
|
|
bool "Typical OMAP configuration"
|
|
default y
|
|
select AEABI
|
|
select HIGHMEM
|
|
select I2C
|
|
select I2C_OMAP
|
|
select MENELAUS if ARCH_OMAP2
|
|
select NEON if ARCH_OMAP3 || ARCH_OMAP4 || SOC_OMAP5
|
|
select PM_RUNTIME
|
|
select REGULATOR
|
|
select SERIAL_OMAP
|
|
select SERIAL_OMAP_CONSOLE
|
|
select TWL4030_CORE if ARCH_OMAP3 || ARCH_OMAP4
|
|
select TWL4030_POWER if ARCH_OMAP3 || ARCH_OMAP4
|
|
select VFP
|
|
help
|
|
Compile a kernel suitable for booting most boards
|
|
|
|
config SOC_HAS_OMAP2_SDRC
|
|
bool "OMAP2 SDRAM Controller support"
|
|
|
|
config SOC_HAS_REALTIME_COUNTER
|
|
bool "Real time free running counter"
|
|
|
|
config ARCH_OMAP2
|
|
bool "TI OMAP2"
|
|
depends on ARCH_OMAP2PLUS
|
|
default y
|
|
select CPU_V6
|
|
select MULTI_IRQ_HANDLER
|
|
select SOC_HAS_OMAP2_SDRC
|
|
select COMMON_CLK
|
|
|
|
config ARCH_OMAP3
|
|
bool "TI OMAP3"
|
|
depends on ARCH_OMAP2PLUS
|
|
default y
|
|
select ARCH_HAS_OPP
|
|
select ARM_CPU_SUSPEND if PM
|
|
select CPU_V7
|
|
select MULTI_IRQ_HANDLER
|
|
select OMAP_INTERCONNECT
|
|
select PM_OPP if PM
|
|
select PM_RUNTIME if CPU_IDLE
|
|
select SOC_HAS_OMAP2_SDRC
|
|
select COMMON_CLK
|
|
select USB_ARCH_HAS_EHCI if USB_SUPPORT
|
|
|
|
config ARCH_OMAP4
|
|
bool "TI OMAP4"
|
|
default y
|
|
depends on ARCH_OMAP2PLUS
|
|
select ARCH_HAS_OPP
|
|
select ARCH_NEEDS_CPU_IDLE_COUPLED if SMP
|
|
select ARM_CPU_SUSPEND if PM
|
|
select ARM_ERRATA_720789
|
|
select ARM_GIC
|
|
select CACHE_L2X0
|
|
select CPU_V7
|
|
select HAVE_SMP
|
|
select LOCAL_TIMERS if SMP
|
|
select OMAP_INTERCONNECT
|
|
select PL310_ERRATA_588369
|
|
select PL310_ERRATA_727915
|
|
select PM_OPP if PM
|
|
select PM_RUNTIME if CPU_IDLE
|
|
select USB_ARCH_HAS_EHCI if USB_SUPPORT
|
|
select COMMON_CLK
|
|
|
|
config SOC_OMAP5
|
|
bool "TI OMAP5"
|
|
select ARM_ARCH_TIMER
|
|
select ARM_CPU_SUSPEND if PM
|
|
select ARM_GIC
|
|
select CPU_V7
|
|
select HAVE_SMP
|
|
select SOC_HAS_REALTIME_COUNTER
|
|
select COMMON_CLK
|
|
|
|
comment "OMAP Core Type"
|
|
depends on ARCH_OMAP2
|
|
|
|
config SOC_OMAP2420
|
|
bool "OMAP2420 support"
|
|
depends on ARCH_OMAP2
|
|
default y
|
|
select OMAP_DM_TIMER
|
|
select SOC_HAS_OMAP2_SDRC
|
|
|
|
config SOC_OMAP2430
|
|
bool "OMAP2430 support"
|
|
depends on ARCH_OMAP2
|
|
default y
|
|
select SOC_HAS_OMAP2_SDRC
|
|
|
|
config SOC_OMAP3430
|
|
bool "OMAP3430 support"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select SOC_HAS_OMAP2_SDRC
|
|
|
|
config SOC_TI81XX
|
|
bool "TI81XX support"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
|
|
config SOC_AM33XX
|
|
bool "AM33XX support"
|
|
default y
|
|
select ARM_CPU_SUSPEND if PM
|
|
select CPU_V7
|
|
select MULTI_IRQ_HANDLER
|
|
select COMMON_CLK
|
|
|
|
config OMAP_PACKAGE_ZAF
|
|
bool
|
|
|
|
config OMAP_PACKAGE_ZAC
|
|
bool
|
|
|
|
config OMAP_PACKAGE_CBC
|
|
bool
|
|
|
|
config OMAP_PACKAGE_CBB
|
|
bool
|
|
|
|
config OMAP_PACKAGE_CUS
|
|
bool
|
|
|
|
config OMAP_PACKAGE_CBP
|
|
bool
|
|
|
|
config OMAP_PACKAGE_CBL
|
|
bool
|
|
|
|
config OMAP_PACKAGE_CBS
|
|
bool
|
|
|
|
comment "OMAP Board Type"
|
|
depends on ARCH_OMAP2PLUS
|
|
|
|
config MACH_OMAP_GENERIC
|
|
bool "Generic OMAP2+ board"
|
|
depends on ARCH_OMAP2PLUS
|
|
default y
|
|
help
|
|
Support for generic TI OMAP2+ boards using Flattened Device Tree.
|
|
More information at Documentation/devicetree
|
|
|
|
config MACH_OMAP2_TUSB6010
|
|
bool
|
|
depends on ARCH_OMAP2 && SOC_OMAP2420
|
|
default y if MACH_NOKIA_N8X0
|
|
|
|
config MACH_OMAP_H4
|
|
bool "OMAP 2420 H4 board"
|
|
depends on SOC_OMAP2420
|
|
default y
|
|
select OMAP_DEBUG_DEVICES
|
|
select OMAP_PACKAGE_ZAF
|
|
|
|
config MACH_OMAP_APOLLON
|
|
bool "OMAP 2420 Apollon board"
|
|
depends on SOC_OMAP2420
|
|
default y
|
|
select OMAP_PACKAGE_ZAC
|
|
|
|
config MACH_OMAP_2430SDP
|
|
bool "OMAP 2430 SDP board"
|
|
depends on SOC_OMAP2430
|
|
default y
|
|
select OMAP_PACKAGE_ZAC
|
|
|
|
config MACH_OMAP3_BEAGLE
|
|
bool "OMAP3 BEAGLE board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_DEVKIT8000
|
|
bool "DEVKIT8000 board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CUS
|
|
|
|
config MACH_OMAP_LDP
|
|
bool "OMAP3 LDP board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_OMAP3530_LV_SOM
|
|
bool "OMAP3 Logic 3530 LV SOM board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
help
|
|
Support for the LogicPD OMAP3530 SOM Development kit
|
|
for full description please see the products webpage at
|
|
http://www.logicpd.com/products/development-kits/texas-instruments-zoom%E2%84%A2-omap35x-development-kit
|
|
|
|
config MACH_OMAP3_TORPEDO
|
|
bool "OMAP3 Logic 35x Torpedo board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
help
|
|
Support for the LogicPD OMAP35x Torpedo Development kit
|
|
for full description please see the products webpage at
|
|
http://www.logicpd.com/products/development-kits/zoom-omap35x-torpedo-development-kit
|
|
|
|
config MACH_OVERO
|
|
bool "Gumstix Overo board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_OMAP3EVM
|
|
bool "OMAP 3530 EVM board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_OMAP3517EVM
|
|
bool "OMAP3517/ AM3517 EVM board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_CRANEBOARD
|
|
bool "AM3517/05 CRANE board"
|
|
depends on ARCH_OMAP3
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_OMAP3_PANDORA
|
|
bool "OMAP3 Pandora"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
|
|
config MACH_TOUCHBOOK
|
|
bool "OMAP3 Touch Book"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_OMAP_3430SDP
|
|
bool "OMAP 3430 SDP board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_NOKIA_N800
|
|
bool
|
|
|
|
config MACH_NOKIA_N810
|
|
bool
|
|
|
|
config MACH_NOKIA_N810_WIMAX
|
|
bool
|
|
|
|
config MACH_NOKIA_N8X0
|
|
bool "Nokia N800/N810"
|
|
depends on SOC_OMAP2420
|
|
default y
|
|
select MACH_NOKIA_N800
|
|
select MACH_NOKIA_N810
|
|
select MACH_NOKIA_N810_WIMAX
|
|
select OMAP_PACKAGE_ZAC
|
|
|
|
config MACH_NOKIA_RM680
|
|
bool "Nokia N950 (RM-680) / N9 (RM-696) phones"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select MACH_NOKIA_RM696
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_NOKIA_RX51
|
|
bool "Nokia N900 (RX-51) phone"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_OMAP_ZOOM2
|
|
bool "OMAP3 Zoom2 board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SERIAL_8250
|
|
select SERIAL_8250_CONSOLE
|
|
select SERIAL_CORE_CONSOLE
|
|
|
|
config MACH_OMAP_ZOOM3
|
|
bool "OMAP3630 Zoom3 board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBP
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
select SERIAL_8250
|
|
select SERIAL_8250_CONSOLE
|
|
select SERIAL_CORE_CONSOLE
|
|
|
|
config MACH_CM_T35
|
|
bool "CompuLab CM-T35/CM-T3730 modules"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select MACH_CM_T3730
|
|
select OMAP_PACKAGE_CUS
|
|
|
|
config MACH_CM_T3517
|
|
bool "CompuLab CM-T3517 module"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_CM_T3730
|
|
bool
|
|
|
|
config MACH_IGEP0020
|
|
bool "IGEP v2 board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_IGEP0030
|
|
bool "IGEP OMAP3 module"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select MACH_IGEP0020
|
|
select OMAP_PACKAGE_CBB
|
|
|
|
config MACH_SBC3530
|
|
bool "OMAP3 SBC STALKER board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CUS
|
|
|
|
config MACH_OMAP_3630SDP
|
|
bool "OMAP3630 SDP board"
|
|
depends on ARCH_OMAP3
|
|
default y
|
|
select OMAP_PACKAGE_CBP
|
|
|
|
config MACH_TI8168EVM
|
|
bool "TI8168 Evaluation Module"
|
|
depends on SOC_TI81XX
|
|
default y
|
|
|
|
config MACH_TI8148EVM
|
|
bool "TI8148 Evaluation Module"
|
|
depends on SOC_TI81XX
|
|
default y
|
|
|
|
config MACH_OMAP_4430SDP
|
|
bool "OMAP 4430 SDP board"
|
|
default y
|
|
depends on ARCH_OMAP4
|
|
select OMAP_PACKAGE_CBL
|
|
select OMAP_PACKAGE_CBS
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
|
|
config MACH_OMAP4_PANDA
|
|
bool "OMAP4 Panda Board"
|
|
default y
|
|
depends on ARCH_OMAP4
|
|
select OMAP_PACKAGE_CBL
|
|
select OMAP_PACKAGE_CBS
|
|
select REGULATOR_FIXED_VOLTAGE if REGULATOR
|
|
|
|
config OMAP3_EMU
|
|
bool "OMAP3 debugging peripherals"
|
|
depends on ARCH_OMAP3
|
|
select ARM_AMBA
|
|
select OC_ETM
|
|
help
|
|
Say Y here to enable debugging hardware of omap3
|
|
|
|
config OMAP3_SDRC_AC_TIMING
|
|
bool "Enable SDRC AC timing register changes"
|
|
depends on ARCH_OMAP3
|
|
default n
|
|
help
|
|
If you know that none of your system initiators will attempt to
|
|
access SDRAM during CORE DVFS, select Y here. This should boost
|
|
SDRAM performance at lower CORE OPPs. There are relatively few
|
|
users who will wish to say yes at this point - almost everyone will
|
|
wish to say no. Selecting yes without understanding what is
|
|
going on could result in system crashes;
|
|
|
|
config OMAP4_ERRATA_I688
|
|
bool "OMAP4 errata: Async Bridge Corruption"
|
|
depends on ARCH_OMAP4
|
|
select ARCH_HAS_BARRIERS
|
|
help
|
|
If a data is stalled inside asynchronous bridge because of back
|
|
pressure, it may be accepted multiple times, creating pointer
|
|
misalignment that will corrupt next transfers on that data path
|
|
until next reset of the system (No recovery procedure once the
|
|
issue is hit, the path remains consistently broken). Async bridge
|
|
can be found on path between MPU to EMIF and MPU to L3 interconnect.
|
|
This situation can happen only when the idle is initiated by a
|
|
Master Request Disconnection (which is trigged by software when
|
|
executing WFI on CPU).
|
|
The work-around for this errata needs all the initiators connected
|
|
through async bridge must ensure that data path is properly drained
|
|
before issuing WFI. This condition will be met if one Strongly ordered
|
|
access is performed to the target right before executing the WFI.
|
|
In MPU case, L3 T2ASYNC FIFO and DDR T2ASYNC FIFO needs to be drained.
|
|
IO barrier ensure that there is no synchronisation loss on initiators
|
|
operating on both interconnect port simultaneously.
|
|
endmenu
|
|
|
|
endif
|