linux/drivers/soc
Dave Gerlach 6afaff1c66 soc: ti: pm33xx: Add base cpuidle support
Some cpuidle C-states supported on am335x and am437x, like C1 on am335x,
require the use of the wkup_m3_ipc driver, and all C-states beyond C0 on
both platforms require the use of the SRAM sleep code.

Pass am33xx_do_sram_idle as the idle function to the platform pm core to
be used by the cpuidle-arm driver when entering cpuidle states.
am33xx_do_sram_idle will detect when the wkup_m3 is needed and ping it
if necessary before calling the final cpu_suspend op which will execute
the SRAM code to put the cpu into idle.

Finally, use the begin_suspend and finish_suspend platform ops to be
called at the beginning and end of suspend path to allow use of
cpu_idle_poll_ctrl.

This prevents races between cpuidle and suspend paths trying to
communicate with the wkup_m3, as during suspend we only want it
configured for entry to suspend.

Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Dave Gerlach <d-gerlach@ti.com>
Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
Signed-off-by: Tony Lindgren <tony@atomide.com>
2020-02-27 09:27:28 -08:00
..
actions treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
amlogic soc: amlogic: meson-ee-pwrc: propagate errors from pm_genpd_init() 2019-12-09 15:21:20 -08:00
aspeed soc: aspeed: Fix snoop_file_poll()'s return type 2019-12-05 10:10:08 -08:00
atmel drivers: soc: atmel: move sam9x60 under its own config flag 2019-12-10 00:44:53 +01:00
bcm soc: bcm: brcmstb: biuctrl: Update programming for 7211 2020-01-05 13:44:04 -08:00
dove treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
fsl soc: fsl: qe: remove set but not used variable 'mm_gc' 2020-01-08 16:02:48 -06:00
gemini
imx soc: imx: Enable compile testing of IMX_SCU_SOC 2020-01-09 17:20:10 +08:00
ixp4xx soc: ixp4xx: Protect IXP4xx SoC drivers by ARCH_IXP4XX || COMPILE_TEST 2019-08-29 17:34:38 +02:00
lantiq soc: lantiq: convert to devm_platform_ioremap_resource 2020-01-10 11:44:52 -08:00
mediatek Merge branch 'v5.5-next/cmdq-stable' into v5.5-next/soc 2020-01-10 11:00:45 +01:00
qcom soc: qcom: rpmhpd: Set 'active_only' for active only power domains 2020-01-07 15:19:30 -08:00
renesas soc: renesas: Add ARCH_R8A7795[01] for existing R-Car H3 2020-01-06 11:08:43 +01:00
rockchip ARM: SoC-related driver updates 2019-07-19 17:13:56 -07:00
samsung soc: samsung: Rename Samsung and Exynos to lowercase 2020-01-07 20:46:31 +01:00
sifive riscv: move sifive_l2_cache.h to include/soc 2020-01-12 10:12:44 -08:00
sunxi treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
tegra ARM: SoC-related driver updates 2020-02-08 14:04:19 -08:00
ti soc: ti: pm33xx: Add base cpuidle support 2020-02-27 09:27:28 -08:00
ux500 ARM: ux500: add missing of_node_put() 2019-07-23 09:49:32 +02:00
versatile treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
xilinx ARM: SoC-related driver updates 2020-02-08 14:04:19 -08:00
zte treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 194 2019-05-30 11:29:22 -07:00
Kconfig riscv: move sifive_l2_cache.c to drivers/soc 2019-12-20 03:40:24 -08:00
Makefile riscv: move sifive_l2_cache.c to drivers/soc 2019-12-20 03:40:24 -08:00