Skip to contentSkip to conversation

ARM: tegra: jump to maincluster earlier

PATCH Applied Lucas Stach 2 participants 2 messages Jun 24, 2015 – Jun 29, 2015

Subsystems (4)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 ARM: tegra: jump to maincluster earlier

There is no point in repeating the board setup on the main cluster. It is done either in the AVP startup path or from a first stage loader.

---
 arch/arm/mach-tegra/include/mach/lowlevel.h | 15 +++++++++------
 arch/arm/mach-tegra/tegra_avp_init.c        |  3 ---
 2 files changed, 9 insertions(+), 9 deletions(-)
arch/arm/mach-tegra/include/mach/lowlevel.h +9 -6
index 768b13d..0c76b88 100644
@@ -243,11 +243,20 @@ void tegra_ll_delay_usec(int delay)
 	while ((int)readl(TEGRA_TMRUS_BASE + TIMER_CNTR_1US) - timeout < 0);
 }
 
+/* reset vector for the AVP, to be called from board reset vector */
+void tegra_avp_reset_vector(uint32_t boarddata);
+
+/* reset vector for the main CPU complex */
+void tegra_maincomplex_entry(void);
+
 static __always_inline
 void tegra_cpu_lowlevel_setup(void)
 {
 	uint32_t r;
 
+	if (tegra_cpu_is_maincomplex())
+		tegra_maincomplex_entry();
+
 	/* set the cpu to SVC32 mode */
 	__asm__ __volatile__("mrs %0, cpsr":"=r"(r));
 	r &= ~0x1f;
@@ -258,10 +267,4 @@ void tegra_cpu_lowlevel_setup(void)
 	tegra_ll_delay_setup();
 }
 
-/* reset vector for the AVP, to be called from board reset vector */
-void tegra_avp_reset_vector(uint32_t boarddata);
-
-/* reset vector for the main CPU complex */
-void tegra_maincomplex_entry(void);
-
 #endif /* __TEGRA_LOWLEVEL_H */
arch/arm/mach-tegra/tegra_avp_init.c +0 -3
index 91fd894..20fcf3f 100644
@@ -265,9 +265,6 @@ void tegra_avp_reset_vector(uint32_t boarddata)
 	/* put boarddata in scratch reg, for main CPU to fetch after startup */
 	writel(boarddata, TEGRA_PMC_BASE + PMC_SCRATCH(10));
 
-	if (tegra_cpu_is_maincomplex())
-		tegra_maincomplex_entry();
-
 	/* we want to bring up the high performance CPU complex */
 	if (tegra_get_chiptype() >= TEGRA30)
 		tegra_cluster_switch_hp();
Signature · 7 lines
2.1.0


_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox
Applied
#1 lore raw
Quoted 4 lines · Lucas Stach

There is no point in repeating the board setup on the main cluster. It is done either in the AVP startup path or from a first stage loader.

Applied, thanks

Sascha

Signature · 9 lines
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/barebox