ARM: OMAP2+: am33xx: Add AM335XEVM machine support
Subsystems (3)
PATCH 1/1 ARM: OMAP2+: am33xx: Add AM335XEVM machine support
From: Afzal Mohammed <[email protected]>
This patch adds minimal support for AM335X machine init.
During last merge window, two separate patches supporting am33xx machine init had been submitted,
1. Link to earlier Baseport patch submission (Legacy):
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg59325.html
2. Link to earlier DT based machine init support patch submission:
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg61398.html
And both had got accepted at that time, but got missed during merge window.
But now, since we have taken decision to make am33xx as a separate class and not to follow omap3 family, these patches needs to changes accordingly (only changes),
- Combine both the patches, since early init and timer init used in board-generic.c file requires them.
- Remove dependency on AM3517EVM, and only use DT approach for machine init.
- Change the config option (as changed recently) CONFIG_SOC_OMAPAM33XX --> CONFIG_SOC_AM33XX
--- arch/arm/mach-omap2/board-generic.c | 18 ++++++++++++++++++ arch/arm/mach-omap2/common.h | 2 ++ arch/arm/mach-omap2/io.c | 10 ++++++++++ arch/arm/mach-omap2/irq.c | 2 +- arch/arm/mach-omap2/timer.c | 5 +++++ 5 files changed, 36 insertions(+), 1 deletions(-)
arch/arm/mach-omap2/board-generic.c +18 -0
@@ -129,6 +129,24 @@ DT_MACHINE_START(OMAP3_DT, "Generic OMAP3 (Flattened Device Tree)") MACHINE_END#endif +#ifdef CONFIG_SOC_AM33XX +static const char *am33xx_boards_compat[]__initdata = { +"ti,am33xx" , +NULL , +}; + +DT_MACHINE_START (AM33XX_DT ,"Generic AM33XX (Flattened Device Tree)" ) + .reserve = omap_reserve, + .map_io = am33xx_map_io, + .init_early = am33xx_init_early, + .init_irq = omap_init_irq, + .handle_irq = omap3_intc_handle_irq, + .init_machine = omap_generic_init, + .timer = &omap3_am33xx_timer, + .dt_compat = am33xx_boards_compat, +MACHINE_END +#endif +#ifdef CONFIG_ARCH_OMAP4 static struct twl4030_platform_data sdp4430_twldata = { .irq_base = TWL6030_IRQ_BASE,
arch/arm/mach-omap2/common.h +2 -0
@@ -83,6 +83,7 @@ extern void omap2_init_common_infrastructure(void);extern struct sys_timer omap2_timer;extern struct sys_timer omap3_timer;extern struct sys_timer omap3_secure_timer; +extern struct sys_timer omap3_am33xx_timer;extern struct sys_timer omap4_timer;void omap2420_init_early (void );
@@ -93,6 +94,7 @@ void omap3630_init_early(void);void omap3_init_early (void );/* Do not use this one */ void am35xx_init_early (void );void ti81xx_init_early (void ); +void am33xx_init_early (void );void omap4430_init_early (void );void omap_prcm_restart (char ,const char *);
arch/arm/mach-omap2/io.c +10 -0
@@ -438,6 +438,16 @@ void __init ti81xx_init_early(void) }#endif +#ifdef CONFIG_SOC_AM33XX +void __init am33xx_init_early (void ) +{ +omap2_set_globals_am33xx (); +omap3xxx_check_revision (); +ti81xx_check_features (); +omap_common_init_early (); +} +#endif +#ifdef CONFIG_ARCH_OMAP4 void __init omap4430_init_early (void ) {
arch/arm/mach-omap2/irq.c +1 -1
@@ -278,7 +278,7 @@ int __init omap_intc_of_init(struct device_node *node,return 0 ; } -#ifdef CONFIG_ARCH_OMAP3 +#if defined(CONFIG_ARCH_OMAP3 ) || defined(CONFIG_SOC_AM33XX )static struct omap3_intc_regs intc_context[ARRAY_SIZE (irq_banks)];void omap_intc_save_context (void )
arch/arm/mach-omap2/timer.c +5 -0
@@ -332,6 +332,11 @@ OMAP_SYS_TIMER_INIT(3_secure, OMAP3_SECURE_TIMER, OMAP3_CLKEV_SOURCE, OMAP_SYS_TIMER(3_secure)#endif +#ifdef CONFIG_SOC_AM33XX +OMAP_SYS_TIMER_INIT(3_am33xx, 1, OMAP4_MPU_SOURCE, 2, OMAP4_MPU_SOURCE) +OMAP_SYS_TIMER(3_am33xx) +#endif +#ifdef CONFIG_ARCH_OMAP4 #ifdef CONFIG_LOCAL_TIMERS static DEFINE_TWD_LOCAL_TIMER(twd_local_timer,
Signature · 1 line
1.7.0.4
PATCH 1/1 ARM: OMAP2+: am33xx: Add AM335XEVM machine support
Quoted 31 lines · Vaibhav
From: Afzal Mohammed <[email protected]>
This patch adds minimal support for AM335X machine init.
During last merge window, two separate patches supporting am33xx machine init had been submitted,
1. Link to earlier Baseport patch submission (Legacy):
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg59325.html
2. Link to earlier DT based machine init support patch submission:
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg61398.htmlAnd both had got accepted at that time, but got missed during merge window.
But now, since we have taken decision to make am33xx as a separate class and not to follow omap3 family, these patches needs to changes accordingly (only changes),
- Combine both the patches, since early init and timer init used in
board-generic.cfile requires them.
- Remove dependency on AM3517EVM, and only use DT approach for machine init.
- Change the config option (as changed recently)CONFIG_SOC_OMAPAM33XX-->CONFIG_SOC_AM33XXSigned-off-by Vaibhav Hiremath <[email protected]>Signed-off-by Vaibhav Hiremath <[email protected]>Cc Tony Lindgren <[email protected]>Cc Benoit Cousson <[email protected]>Cc Paul Walmsley <[email protected]>
Quoted 8 lines
--- arch/arm/mach-omap2/board-generic.c | 18 ++++++++++++++++++ arch/arm/mach-omap2/common.h | 2 ++ arch/arm/mach-omap2/io.c | 10 ++++++++++ arch/arm/mach-omap2/irq.c | 2 +- arch/arm/mach-omap2/timer.c | 5 +++++ 5 files changed, 36 insertions(+), 1 deletions(-)
Tony,
Can this be merged now???
Thanks,
Vaibhav
Tony Lindgren
maintainerPATCH 1/1 ARM: OMAP2+: am33xx: Add AM335XEVM machine support
Quoted 41 lines · Hiremath, Vaibhav
Quoted 31 lines · Vaibhav
From: Afzal Mohammed <[email protected]>
This patch adds minimal support for AM335X machine init.
During last merge window, two separate patches supporting am33xx machine init had been submitted,
1. Link to earlier Baseport patch submission (Legacy):
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg59325.html
2. Link to earlier DT based machine init support patch submission:
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg61398.htmlAnd both had got accepted at that time, but got missed during merge window.
But now, since we have taken decision to make am33xx as a separate class and not to follow omap3 family, these patches needs to changes accordingly (only changes),
- Combine both the patches, since early init and timer init used in
board-generic.cfile requires them.
- Remove dependency on AM3517EVM, and only use DT approach for machine init.
- Change the config option (as changed recently)CONFIG_SOC_OMAPAM33XX-->CONFIG_SOC_AM33XXSigned-off-by Vaibhav Hiremath <[email protected]>Signed-off-by Vaibhav Hiremath <[email protected]>Cc Tony Lindgren <[email protected]>Cc Benoit Cousson <[email protected]>Cc Paul Walmsley <[email protected]>Quoted 8 lines
--- arch/arm/mach-omap2/board-generic.c | 18 ++++++++++++++++++ arch/arm/mach-omap2/common.h | 2 ++ arch/arm/mach-omap2/io.c | 10 ++++++++++ arch/arm/mach-omap2/irq.c | 2 +- arch/arm/mach-omap2/timer.c | 5 +++++ 5 files changed, 36 insertions(+), 1 deletions(-)
Quoted 3 lines
Tony,
Can this be merged now???
Adding this too to devel-am33xx branch.
Tony
PATCH 1/1 ARM: OMAP2+: am33xx: Add AM335XEVM machine support
Quoted 42 lines · Tony Lindgren
Quoted 41 lines · Hiremath, Vaibhav
Quoted 39 lines · Vaibhav
From: Afzal Mohammed <[email protected]>
This patch adds minimal support for AM335X machine init.
During last merge window, two separate patches supporting am33xx machine init had been submitted,
1. Link to earlier Baseport patch submission (Legacy):
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg59325.html
2. Link to earlier DT based machine init support patch submission:
http://www.mail-archive.com/linux-omap at vger.kernel.org/msg61398.htmlAnd both had got accepted at that time, but got missed during merge window.
But now, since we have taken decision to make am33xx as a separate class and not to follow omap3 family, these patches needs to changes accordingly (only changes),
- Combine both the patches, since early init and timer init used in
board-generic.cfile requires them.
- Remove dependency on AM3517EVM, and only use DT approach for machine init.
- Change the config option (as changed recently)CONFIG_SOC_OMAPAM33XX-->CONFIG_SOC_AM33XXSigned-off-by Vaibhav Hiremath <[email protected]>Signed-off-by Vaibhav Hiremath <[email protected]>Cc Tony Lindgren <[email protected]>Cc Benoit Cousson <[email protected]>Cc Paul Walmsley <[email protected]>--- arch/arm/mach-omap2/board-generic.c | 18 ++++++++++++++++++ arch/arm/mach-omap2/common.h | 2 ++ arch/arm/mach-omap2/io.c | 10 ++++++++++ arch/arm/mach-omap2/irq.c | 2 +- arch/arm/mach-omap2/timer.c | 5 +++++ 5 files changed, 36 insertions(+), 1 deletions(-)
Quoted 6 lines
Quoted 3 lines
Tony,
Can this be merged now???
Adding this too to devel-am33xx branch.
Thanks Tony,
Also, request you to add it as part of next pull request to the linux-next, at early rc cycle itself.
Paul,
Can you also send a pull request for AM33XX voltagedomain, cm, clockdomain, prm, powerdomain patches?
Also request you to review clock-tree and hwmod changes, so that, they can also be merged within time.
Quoted 1 line
From clocktree perspective, I believe now I have to migrate to Rajendr's
common-clock framework changes, so let me finish that and send new version.
Thanks,
Vaibhav
Tony Lindgren
maintainerPATCH 1/1 ARM: OMAP2+: am33xx: Add AM335XEVM machine support
Quoted 8 lines · Hiremath, Vaibhav
Quoted 3 lines · Tony Lindgren
Adding this too to devel-am33xx branch.
Thanks Tony,
Also, request you to add it as part of next pull request to the linux-next, at early rc cycle itself.
Yes it should hit arm-soc and linux-next after -rc2 or so.
Quoted 13 lines
Paul,
Can you also send a pull request for AM33XX voltagedomain, cm, clockdomain, prm, powerdomain patches?
Also request you to review clock-tree and hwmod changes, so that, they can also be merged within time.From clocktree perspective, I believe now I have to migrate to Rajendr's common-clock framework changes, so let me finish that and send new version.
Thanks,
Vaibhav