Message ID | 1403016777-15121-18-git-send-email-wens@csie.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Jun 17, 2014 at 10:52:54PM +0800, Chen-Yu Tsai wrote: > The Allwinner A23 is a dual-core Cortex-A7-based SoC. It re-uses most of > the IPs found in previous SoCs, notably the A31. > > Signed-off-by: Chen-Yu Tsai <wens@csie.org> > --- > arch/arm/mach-sunxi/Kconfig | 8 ++++++++ > arch/arm/mach-sunxi/sunxi.c | 10 ++++++++++ > 2 files changed, 18 insertions(+) > > diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig > index 0fbd4f1..6434e3b 100644 > --- a/arch/arm/mach-sunxi/Kconfig > +++ b/arch/arm/mach-sunxi/Kconfig > @@ -35,4 +35,12 @@ config MACH_SUN7I > select HAVE_ARM_ARCH_TIMER > select SUN5I_HSTIMER > > +config MACH_SUN8I > + bool "Allwinner A23 (sun8i) SoCs support" > + default ARCH_SUNXI > + select ARCH_HAS_RESET_CONTROLLER > + select ARM_GIC > + select MFD_SUN6I_PRCM > + select RESET_CONTROLLER > + > endif > diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c > index 3f9587b..962ff30 100644 > --- a/arch/arm/mach-sunxi/sunxi.c > +++ b/arch/arm/mach-sunxi/sunxi.c > @@ -53,3 +53,13 @@ static const char * const sun7i_board_dt_compat[] = { > DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family") > .dt_compat = sun7i_board_dt_compat, > MACHINE_END > + > +static const char * const sun8i_board_dt_compat[] = { > + "allwinner,sun8i-a23", > + NULL, > +}; > + > +DT_MACHINE_START(SUN8I_DT, "Allwinner sun8i (A23) Family") > + .init_time = sun6i_timer_init, I haven't seen anything in your code that needed to use this function. Am I missing something? Maxime
On Wed, Jun 18, 2014 at 8:26 PM, Maxime Ripard <maxime.ripard@free-electrons.com> wrote: > On Tue, Jun 17, 2014 at 10:52:54PM +0800, Chen-Yu Tsai wrote: >> The Allwinner A23 is a dual-core Cortex-A7-based SoC. It re-uses most of >> the IPs found in previous SoCs, notably the A31. >> >> Signed-off-by: Chen-Yu Tsai <wens@csie.org> >> --- >> arch/arm/mach-sunxi/Kconfig | 8 ++++++++ >> arch/arm/mach-sunxi/sunxi.c | 10 ++++++++++ >> 2 files changed, 18 insertions(+) >> >> diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig >> index 0fbd4f1..6434e3b 100644 >> --- a/arch/arm/mach-sunxi/Kconfig >> +++ b/arch/arm/mach-sunxi/Kconfig >> @@ -35,4 +35,12 @@ config MACH_SUN7I >> select HAVE_ARM_ARCH_TIMER >> select SUN5I_HSTIMER >> >> +config MACH_SUN8I >> + bool "Allwinner A23 (sun8i) SoCs support" >> + default ARCH_SUNXI >> + select ARCH_HAS_RESET_CONTROLLER >> + select ARM_GIC >> + select MFD_SUN6I_PRCM >> + select RESET_CONTROLLER >> + >> endif >> diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c >> index 3f9587b..962ff30 100644 >> --- a/arch/arm/mach-sunxi/sunxi.c >> +++ b/arch/arm/mach-sunxi/sunxi.c >> @@ -53,3 +53,13 @@ static const char * const sun7i_board_dt_compat[] = { >> DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family") >> .dt_compat = sun7i_board_dt_compat, >> MACHINE_END >> + >> +static const char * const sun8i_board_dt_compat[] = { >> + "allwinner,sun8i-a23", >> + NULL, >> +}; >> + >> +DT_MACHINE_START(SUN8I_DT, "Allwinner sun8i (A23) Family") >> + .init_time = sun6i_timer_init, > > I haven't seen anything in your code that needed to use this > function. Am I missing something? My mistake. From the log I thought all timers needed the reset controller. Turns out only the high speed timer does. I'll remove the call in the next version. ChenYu
On Wed, Jun 18, 2014 at 8:26 PM, Maxime Ripard <maxime.ripard@free-electrons.com> wrote: > On Tue, Jun 17, 2014 at 10:52:54PM +0800, Chen-Yu Tsai wrote: >> The Allwinner A23 is a dual-core Cortex-A7-based SoC. It re-uses most of >> the IPs found in previous SoCs, notably the A31. >> >> Signed-off-by: Chen-Yu Tsai <wens@csie.org> >> --- >> arch/arm/mach-sunxi/Kconfig | 8 ++++++++ >> arch/arm/mach-sunxi/sunxi.c | 10 ++++++++++ >> 2 files changed, 18 insertions(+) >> >> diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig >> index 0fbd4f1..6434e3b 100644 >> --- a/arch/arm/mach-sunxi/Kconfig >> +++ b/arch/arm/mach-sunxi/Kconfig >> @@ -35,4 +35,12 @@ config MACH_SUN7I >> select HAVE_ARM_ARCH_TIMER >> select SUN5I_HSTIMER >> >> +config MACH_SUN8I >> + bool "Allwinner A23 (sun8i) SoCs support" >> + default ARCH_SUNXI >> + select ARCH_HAS_RESET_CONTROLLER >> + select ARM_GIC >> + select MFD_SUN6I_PRCM >> + select RESET_CONTROLLER >> + >> endif >> diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c >> index 3f9587b..962ff30 100644 >> --- a/arch/arm/mach-sunxi/sunxi.c >> +++ b/arch/arm/mach-sunxi/sunxi.c >> @@ -53,3 +53,13 @@ static const char * const sun7i_board_dt_compat[] = { >> DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family") >> .dt_compat = sun7i_board_dt_compat, >> MACHINE_END >> + >> +static const char * const sun8i_board_dt_compat[] = { >> + "allwinner,sun8i-a23", >> + NULL, >> +}; >> + >> +DT_MACHINE_START(SUN8I_DT, "Allwinner sun8i (A23) Family") >> + .init_time = sun6i_timer_init, > > I haven't seen anything in your code that needed to use this > function. Am I missing something? (Adding Maxime back to recipients...) My mistake. From the log I thought all timers needed the reset controller. Turns out only the high speed timer does. I'll remove the call in the next version. ChenYu
diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig index 0fbd4f1..6434e3b 100644 --- a/arch/arm/mach-sunxi/Kconfig +++ b/arch/arm/mach-sunxi/Kconfig @@ -35,4 +35,12 @@ config MACH_SUN7I select HAVE_ARM_ARCH_TIMER select SUN5I_HSTIMER +config MACH_SUN8I + bool "Allwinner A23 (sun8i) SoCs support" + default ARCH_SUNXI + select ARCH_HAS_RESET_CONTROLLER + select ARM_GIC + select MFD_SUN6I_PRCM + select RESET_CONTROLLER + endif diff --git a/arch/arm/mach-sunxi/sunxi.c b/arch/arm/mach-sunxi/sunxi.c index 3f9587b..962ff30 100644 --- a/arch/arm/mach-sunxi/sunxi.c +++ b/arch/arm/mach-sunxi/sunxi.c @@ -53,3 +53,13 @@ static const char * const sun7i_board_dt_compat[] = { DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family") .dt_compat = sun7i_board_dt_compat, MACHINE_END + +static const char * const sun8i_board_dt_compat[] = { + "allwinner,sun8i-a23", + NULL, +}; + +DT_MACHINE_START(SUN8I_DT, "Allwinner sun8i (A23) Family") + .init_time = sun6i_timer_init, + .dt_compat = sun8i_board_dt_compat, +MACHINE_END
The Allwinner A23 is a dual-core Cortex-A7-based SoC. It re-uses most of the IPs found in previous SoCs, notably the A31. Signed-off-by: Chen-Yu Tsai <wens@csie.org> --- arch/arm/mach-sunxi/Kconfig | 8 ++++++++ arch/arm/mach-sunxi/sunxi.c | 10 ++++++++++ 2 files changed, 18 insertions(+)