clk: tegra: EMC clock driver depends on EMC driver
authorThierry Reding <treding@nvidia.com>
Wed, 1 Apr 2015 07:10:58 +0000 (09:10 +0200)
committerThierry Reding <treding@nvidia.com>
Wed, 13 May 2015 13:17:13 +0000 (15:17 +0200)
The EMC clock driver uses symbols exported by the EMC driver, so it
needs the corresponding dependency to avoid build breakage.

Signed-off-by: Thierry Reding <treding@nvidia.com>
drivers/clk/Kconfig
drivers/clk/tegra/Kconfig [new file with mode: 0644]
drivers/clk/tegra/Makefile
drivers/clk/tegra/clk.h

index 9897f353bf1a63f24a0192aeff7ea9785a7c32bf..ff20c485418a5fecbb3b5d4e5fd434ff5c9adfdf 100644 (file)
@@ -158,3 +158,4 @@ source "drivers/clk/bcm/Kconfig"
 source "drivers/clk/mvebu/Kconfig"
 
 source "drivers/clk/samsung/Kconfig"
+source "drivers/clk/tegra/Kconfig"
diff --git a/drivers/clk/tegra/Kconfig b/drivers/clk/tegra/Kconfig
new file mode 100644 (file)
index 0000000..1ba30d1
--- /dev/null
@@ -0,0 +1,3 @@
+config TEGRA_CLK_EMC
+       def_bool y
+       depends on TEGRA124_EMC
index 18c28d1ae400de3d765cdae8f5da4b6c3bc62164..aec862ba7a17547b870a175ef436927b2c7307d3 100644 (file)
@@ -11,8 +11,9 @@ obj-y                                 += clk-tegra-periph.o
 obj-y                                  += clk-tegra-pmc.o
 obj-y                                  += clk-tegra-fixed.o
 obj-y                                  += clk-tegra-super-gen4.o
+obj-$(CONFIG_TEGRA_CLK_EMC)            += clk-emc.o
 obj-$(CONFIG_ARCH_TEGRA_2x_SOC)         += clk-tegra20.o
 obj-$(CONFIG_ARCH_TEGRA_3x_SOC)         += clk-tegra30.o
 obj-$(CONFIG_ARCH_TEGRA_114_SOC)       += clk-tegra114.o
-obj-$(CONFIG_ARCH_TEGRA_124_SOC)       += clk-tegra124.o clk-emc.o
+obj-$(CONFIG_ARCH_TEGRA_124_SOC)       += clk-tegra124.o
 obj-$(CONFIG_ARCH_TEGRA_132_SOC)       += clk-tegra124.o
index e69e98a7bc80705075372e013474aa0bc293907d..75ddc8ff8bd4aff97d61ff9ae27095aa2ba0cf33 100644 (file)
@@ -623,8 +623,17 @@ void tegra_super_clk_gen4_init(void __iomem *clk_base,
                        void __iomem *pmc_base, struct tegra_clk *tegra_clks,
                        struct tegra_clk_pll_params *pll_params);
 
+#ifdef CONFIG_TEGRA_CLK_EMC
 struct clk *tegra_clk_register_emc(void __iomem *base, struct device_node *np,
                                   spinlock_t *lock);
+#else
+static inline struct clk *tegra_clk_register_emc(void __iomem *base,
+                                                struct device_node *np,
+                                                spinlock_t *lock)
+{
+       return NULL;
+}
+#endif
 
 void tegra114_clock_tune_cpu_trimmers_high(void);
 void tegra114_clock_tune_cpu_trimmers_low(void);