ARM: mach-shmobile: r8a7779 PFC GPIO-only prototype
Magnus Damm
maintainerPATCH 5/7 ARM: mach-shmobile: r8a7779 PFC GPIO-only prototype
From: Magnus Damm <[email protected]>
Initial r8a7779 PFC prototype support.
Only regular GPIOs are supported at this time. GPIO_FN are not supported because they require variable bit width support in be the shared pfc code.
This prototype requires a filthy mapping hack for the PFC/GPIO base addresses applied on top of this patch to workt. The pfc code needs to be extended to make use of ioremap() to support this SoC.
Not-yet-signed-off-by Magnus Damm <[email protected]>
---
arch/arm/mach-shmobile/Kconfig | 2 arch/arm/mach-shmobile/Makefile | 1 arch/arm/mach-shmobile/board-marzen.c | 2 arch/arm/mach-shmobile/include/mach/common.h | 1 arch/arm/mach-shmobile/include/mach/r8a7779.h | 63 +++ arch/arm/mach-shmobile/pfc-r8a7779.c | 452 +++++++++++++++++++++++++ 6 files changed, 520 insertions(+), 1 deletion(-)
arch/arm/mach-shmobile/Kconfig +2 -0
@@ -33,6 +33,7 @@ config ARCH_R8A7779 select CPU_V7 select SH_CLK_CPG select ARM_GIC + select ARCH_WANT_OPTIONAL_GPIOLIB comment "SH-Mobile Board Type"
@@ -84,6 +85,7 @@ config MACH_KOTA2 config MACH_MARZEN bool "MARZEN board" depends on ARCH_R8A7779 + select ARCH_REQUIRE_GPIOLIB comment "SH-Mobile System Configuration"
arch/arm/mach-shmobile/Makefile +1 -0
@@ -24,6 +24,7 @@ pfc-$(CONFIG_ARCH_SH7367) += pfc-sh7367. pfc-$(CONFIG_ARCH_SH7377) += pfc-sh7377.o pfc-$(CONFIG_ARCH_SH7372) += pfc-sh7372.o pfc-$(CONFIG_ARCH_SH73A0) += pfc-sh73a0.o +pfc-$(CONFIG_ARCH_R8A7779) += pfc-r8a7779.o # IRQ objects obj-$(CONFIG_ARCH_SH7367) += entry-intc.o
arch/arm/mach-shmobile/board-marzen.c +2 -0
@@ -92,6 +92,8 @@ static void __init marzen_init_early(voistatic void __init marzen_init (void ) { +r8a7779_pinmux_init (); +r8a7779_add_standard_devices ();platform_add_devices (marzen_devices,ARRAY_SIZE (marzen_devices)); }
arch/arm/mach-shmobile/include/mach/common.h +1 -0
@@ -57,5 +57,6 @@ extern void r8a7779_init_irq(void);extern void r8a7779_add_early_devices (void );extern void r8a7779_add_standard_devices (void );extern void r8a7779_clock_init (void ); +extern void r8a7779_pinmux_init (void );#endif /* __ARCH_MACH_COMMON_H */
arch/arm/mach-shmobile/include/mach/r8a7779.h +62 -1
68 lines not on this page · raw message
arch/arm/mach-shmobile/pfc-r8a7779.c new file +452 -0
452 lines not on this page · raw message