ARM: mach-shmobile: sh7367 clock framework V2
Magnus Damm
maintainerPATCH 1/1 ARM: mach-shmobile: sh7367 clock framework V2
From: Magnus Damm <[email protected]>
This patch is V2 of clock framework tables/code for sh7367. MSTP support is included for the following hardware blocks:
KEYSC, SCIF, IIC, IRDA, FLCTL, VOU, SIU, USB, SDHI and UIO.
Signed-off-by Magnus Damm <[email protected]>
---
arch/arm/mach-shmobile/Kconfig | 1 arch/arm/mach-shmobile/board-g3evm.c | 19 - arch/arm/mach-shmobile/clock-sh7367.c | 353 +++++++++++++++++++++++--- arch/arm/mach-shmobile/include/mach/common.h | 2 4 files changed, 337 insertions(+), 38 deletions(-)
arch/arm/mach-shmobile/Kconfig +1 -0
@@ -7,6 +7,7 @@ config ARCH_SH7367 select CPU_V6 select HAVE_CLK select COMMON_CLKDEV + select SH_CLK_CPG select GENERIC_CLOCKEVENTS config ARCH_SH7377
arch/arm/mach-shmobile/board-g3evm.c +13 -6
@@ -37,6 +37,7 @@#include <asm/mach-types.h> #include <asm/mach/arch.h> #include <asm/mach/map.h> +#include <asm/mach/time.h> /* * IrDA
@@ -259,9 +260,8 @@ static void __init g3evm_map_io(void) {iotable_init (g3evm_io_desc,ARRAY_SIZE (g3evm_io_desc)); -/* setup early devices, clocks and console here as well */ +/* setup early devices and console here as well */ sh7367_add_early_devices (); -sh7367_clock_init ();shmobile_setup_console (); }
@@ -298,9 +298,6 @@ static void __init g3evm_init(void)gpio_request (GPIO_FN_EXTLP ,NULL );gpio_request (GPIO_FN_IDIN ,NULL ); -/* enable clock in SYMSTPCR2 */ -__raw_writel (__raw_readl (0xe6158048 ) & ~(1 <<22 ),0xe6158048 ); -/* setup USB phy */ __raw_writew (0x0300 ,0xe605810a );/* USBCR1 */ __raw_writew (0x00e0 ,0xe60581c0 );/* CPFCH */
@@ -356,11 +353,21 @@ static void __init g3evm_init(void)platform_add_devices (g3evm_devices,ARRAY_SIZE (g3evm_devices)); } +static void __init g3evm_timer_init (void ) +{ +sh7367_clock_init (); + shmobile_timer.init (); +} + +static struct sys_timer g3evm_timer = { + .init = g3evm_timer_init, +}; +MACHINE_START (G3EVM ,"g3evm" ) .phys_io = 0xe6000000, .io_pg_offst = ((0xe6000000) >> 18) & 0xfffc, .map_io = g3evm_map_io, .init_irq = sh7367_init_irq, .init_machine = g3evm_init, - .timer = &shmobile_timer, + .timer = &g3evm_timer,MACHINE_END
arch/arm/mach-shmobile/clock-sh7367.c +321 -32
379 lines not on this page · raw message
arch/arm/mach-shmobile/include/mach/common.h +2 -0
@@ -11,6 +11,8 @@ extern void sh7367_add_early_devices(voiextern void sh7367_add_standard_devices (void );extern void sh7367_clock_init (void );extern void sh7367_pinmux_init (void ); +extern struct clk sh7367_extalb1_clk; +extern struct clk sh7367_extal2_clk;extern void sh7377_init_irq (void );extern void sh7377_add_early_devices (void );