Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

clk: ux500: Pass clock base adresses in initcall for u8540 and u9540

Align on u8500 version, pass clock base address in clk_init functions
for u8540 and u9540.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Philippe Begnic <philippe.begnic@st.com>
Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Mike Turquette <mturquette@linaro.org>

authored by

Philippe Begnic and committed by
Mike Turquette
1237e598 88235988

+12 -8
+4 -2
arch/arm/mach-ux500/cpu.c
··· 76 76 } else if (cpu_is_u9540()) { 77 77 prcmu_early_init(U8500_PRCMU_BASE, SZ_8K - 1); 78 78 ux500_pm_init(U8500_PRCMU_BASE, SZ_8K - 1); 79 - u8500_clk_init(U8500_CLKRST1_BASE, U8500_CLKRST2_BASE, 79 + u9540_clk_init(U8500_CLKRST1_BASE, U8500_CLKRST2_BASE, 80 80 U8500_CLKRST3_BASE, U8500_CLKRST5_BASE, 81 81 U8500_CLKRST6_BASE); 82 82 } else if (cpu_is_u8540()) { 83 83 prcmu_early_init(U8500_PRCMU_BASE, SZ_8K + SZ_4K - 1); 84 84 ux500_pm_init(U8500_PRCMU_BASE, SZ_8K + SZ_4K - 1); 85 - u8540_clk_init(); 85 + u8540_clk_init(U8500_CLKRST1_BASE, U8500_CLKRST2_BASE, 86 + U8500_CLKRST3_BASE, U8500_CLKRST5_BASE, 87 + U8500_CLKRST6_BASE); 86 88 } 87 89 } 88 90
+2 -2
drivers/clk/ux500/u8540_clk.c
··· 12 12 #include <linux/clk-provider.h> 13 13 #include <linux/mfd/dbx500-prcmu.h> 14 14 #include <linux/platform_data/clk-ux500.h> 15 - 16 15 #include "clk.h" 17 16 18 - void u8540_clk_init(void) 17 + void u8540_clk_init(u32 clkrst1_base, u32 clkrst2_base, u32 clkrst3_base, 18 + u32 clkrst5_base, u32 clkrst6_base) 19 19 { 20 20 /* register clocks here */ 21 21 }
+2 -2
drivers/clk/ux500/u9540_clk.c
··· 12 12 #include <linux/clk-provider.h> 13 13 #include <linux/mfd/dbx500-prcmu.h> 14 14 #include <linux/platform_data/clk-ux500.h> 15 - 16 15 #include "clk.h" 17 16 18 - void u9540_clk_init(void) 17 + void u9540_clk_init(u32 clkrst1_base, u32 clkrst2_base, u32 clkrst3_base, 18 + u32 clkrst5_base, u32 clkrst6_base) 19 19 { 20 20 /* register clocks here */ 21 21 }
+4 -2
include/linux/platform_data/clk-ux500.h
··· 12 12 13 13 void u8500_clk_init(u32 clkrst1_base, u32 clkrst2_base, u32 clkrst3_base, 14 14 u32 clkrst5_base, u32 clkrst6_base); 15 - void u9540_clk_init(void); 16 - void u8540_clk_init(void); 15 + void u9540_clk_init(u32 clkrst1_base, u32 clkrst2_base, u32 clkrst3_base, 16 + u32 clkrst5_base, u32 clkrst6_base); 17 + void u8540_clk_init(u32 clkrst1_base, u32 clkrst2_base, u32 clkrst3_base, 18 + u32 clkrst5_base, u32 clkrst6_base); 17 19 18 20 #endif /* __CLK_UX500_H */