Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c5107027 authored by Afzal Mohammed's avatar Afzal Mohammed Committed by Tony Lindgren
Browse files

ARM: OMAP2+: AM43x: early init



Minimal early init - PRCM initialization not yet taken care.

Control module is similar (base address, feature register etc.) as
that of AM335x, while PRCM base address is different. Instead of
adding a new header file for AM43x, PRCM base address is added in
AM335x header file as it is similar to it to a large extent.

Signed-off-by: default avatarAfzal Mohammed <afzal@ti.com>
[tony@atomide.com: updated to drop am33xx_check_features()]
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent addb154a
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -21,6 +21,7 @@
#define AM33XX_SCM_BASE		0x44E10000
#define AM33XX_SCM_BASE		0x44E10000
#define AM33XX_CTRL_BASE	AM33XX_SCM_BASE
#define AM33XX_CTRL_BASE	AM33XX_SCM_BASE
#define AM33XX_PRCM_BASE	0x44E00000
#define AM33XX_PRCM_BASE	0x44E00000
#define AM43XX_PRCM_BASE	0x44DF0000
#define AM33XX_TAP_BASE		(AM33XX_CTRL_BASE + 0x3FC)
#define AM33XX_TAP_BASE		(AM33XX_CTRL_BASE + 0x3FC)


#endif /* __ASM_ARCH_AM33XX_H */
#endif /* __ASM_ARCH_AM33XX_H */
+1 −0
Original line number Original line Diff line number Diff line
@@ -96,6 +96,7 @@ void am33xx_init_early(void);
void am35xx_init_early(void);
void am35xx_init_early(void);
void ti81xx_init_early(void);
void ti81xx_init_early(void);
void am33xx_init_early(void);
void am33xx_init_early(void);
void am43xx_init_early(void);
void omap4430_init_early(void);
void omap4430_init_early(void);
void omap5_init_early(void);
void omap5_init_early(void);
void omap3_init_late(void);	/* Do not use this one */
void omap3_init_late(void);	/* Do not use this one */
+13 −0
Original line number Original line Diff line number Diff line
@@ -586,6 +586,19 @@ void __init am33xx_init_early(void)
}
}
#endif
#endif


#ifdef CONFIG_SOC_AM43XX
void __init am43xx_init_early(void)
{
	omap2_set_globals_tap(AM335X_CLASS,
			      AM33XX_L4_WK_IO_ADDRESS(AM33XX_TAP_BASE));
	omap2_set_globals_control(AM33XX_L4_WK_IO_ADDRESS(AM33XX_CTRL_BASE),
				  NULL);
	omap2_set_globals_prm(AM33XX_L4_WK_IO_ADDRESS(AM43XX_PRCM_BASE));
	omap2_set_globals_cm(AM33XX_L4_WK_IO_ADDRESS(AM43XX_PRCM_BASE), NULL);
	omap3xxx_check_revision();
}
#endif

#ifdef CONFIG_ARCH_OMAP4
#ifdef CONFIG_ARCH_OMAP4
void __init omap4430_init_early(void)
void __init omap4430_init_early(void)
{
{