![Geert Uytterhoeven](/assets/img/avatar_default.png)
If the kernel is built to support multi-ARM configuration with shmobile support built in, then drivers/sh is not built. This contains the PM runtime code in drivers/sh/pm_runtime.c, which implicitly enables the module clocks for all devices, and thus is quite essential. Without this, the state of clocks depends on implicit reset state, or on the bootloader. If ARCH_SHMOBILE_MULTI then build the drivers/sh directory, but ensure that bits that may conflict (drivers/sh/clk if the common clock framework is enabled) or are not used (drivers/sh/intc), are not built. Also, only enable the PM runtime code when actually running on a shmobile SoCs that needs it. ARCH_SHMOBILE_MULTI was added a while ago by commitefacfce5f8
("ARM: shmobile: Introduce ARCH_SHMOBILE_MULTI"), but drivers/sh was compiled for both ARCH_SHMOBILE_LEGACY and ARCH_SHMOBILE_MULTI until commitbf98c1eac1
("ARM: Rename ARCH_SHMOBILE to ARCH_SHMOBILE_LEGACY"). Inspired by a patch from Ben Dooks <ben.dooks@codethink.co.uk>. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
13 lines
294 B
Makefile
13 lines
294 B
Makefile
#
|
|
# Makefile for the SuperH specific drivers.
|
|
#
|
|
obj-$(CONFIG_SUPERH) += intc/
|
|
obj-$(CONFIG_ARCH_SHMOBILE_LEGACY) += intc/
|
|
ifneq ($(CONFIG_COMMON_CLK),y)
|
|
obj-$(CONFIG_HAVE_CLK) += clk/
|
|
endif
|
|
obj-$(CONFIG_MAPLE) += maple/
|
|
obj-$(CONFIG_SUPERHYWAY) += superhyway/
|
|
|
|
obj-y += pm_runtime.o
|