[PATCH 01/17] arm: pxa: Prepare for NAND clkdev lookup on PXA3xx
Sebastian Hesselbarth
sebastian.hesselbarth at gmail.com
Thu Oct 8 15:06:03 PDT 2015
To allow PXA3xx nand driver to be reused on Marvell Armada 370/XP,
prepare to provide a common clock for the NAND driver on PXA3xx.
Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth at gmail.com>
---
Cc: Robert Jarzmik <robert.jarzmik at free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni at free-electrons.com>
Cc: Ezequiel Garcia <ezequiel at vanguardiasur.com.ar>
Cc: barebox at lists.infradead.org
---
arch/arm/Kconfig | 1 +
arch/arm/mach-pxa/Kconfig | 2 ++
arch/arm/mach-pxa/speed-pxa3xx.c | 16 ++++++++++++++++
3 files changed, 19 insertions(+)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 203f912e96e5..90af91819f08 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -147,6 +147,7 @@ config ARCH_PXA
bool "Intel/Marvell PXA based"
select GENERIC_GPIO
select HAS_POWEROFF
+ select HAVE_CLK
config ARCH_ROCKCHIP
bool "Rockchip RX3xxx"
diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig
index 54094f4ca0ed..1c0894892b17 100644
--- a/arch/arm/mach-pxa/Kconfig
+++ b/arch/arm/mach-pxa/Kconfig
@@ -17,6 +17,8 @@ config ARCH_PXA2XX
config ARCH_PXA3XX
bool
select CPU_XSC3
+ select CLKDEV_LOOKUP
+ select COMMON_CLK
config ARCH_PXA310
bool
diff --git a/arch/arm/mach-pxa/speed-pxa3xx.c b/arch/arm/mach-pxa/speed-pxa3xx.c
index 6a08ea78f065..91e03eae4a52 100644
--- a/arch/arm/mach-pxa/speed-pxa3xx.c
+++ b/arch/arm/mach-pxa/speed-pxa3xx.c
@@ -8,6 +8,9 @@
*/
#include <common.h>
+#include <init.h>
+#include <linux/clk.h>
+#include <linux/clkdev.h>
#include <mach/clock.h>
#include <mach/pxa-regs.h>
@@ -31,3 +34,16 @@ unsigned long pxa_get_nandclk(void)
else
return 156000000;
}
+
+static int pxa3xx_clock_init(void)
+{
+ unsigned long nand_rate = (cpu_is_pxa320()) ? 104000000 : 156000000;
+ struct clk *clk;
+
+ clk = clk_fixed("nand", nand_rate);
+ if (IS_ERR(clk))
+ return PTR_ERR(clk);
+
+ return clk_register_clkdev(clk, NULL, "mrvl_nand");
+}
+postcore_initcall(pxa3xx_clock_init);
--
2.1.0
More information about the barebox
mailing list