* [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL
@ 2012-08-06 21:34 Marek Vasut
2012-08-06 21:34 ` [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code Marek Vasut
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Marek Vasut @ 2012-08-06 21:34 UTC (permalink / raw)
To: u-boot
The SPL doesn't need the CP15 reconfiguration, as that's what the
BootROM does for us already. Moreover, when the CP15 is reconfigured
and the code returns control to BootROM, the USB boot works no more.
Remove the code and allow [1] to work properly as well.
[1] http://git.bfuser.eu/?p=marex/mxsldr.git;a=summary
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
---
arch/arm/cpu/arm926ejs/mx28/start.S | 42 -----------------------------------
1 file changed, 42 deletions(-)
diff --git a/arch/arm/cpu/arm926ejs/mx28/start.S b/arch/arm/cpu/arm926ejs/mx28/start.S
index e572b78..7ccd337 100644
--- a/arch/arm/cpu/arm926ejs/mx28/start.S
+++ b/arch/arm/cpu/arm926ejs/mx28/start.S
@@ -180,14 +180,6 @@ _reset:
orr r0,r0,#0xd3
msr cpsr,r0
- /*
- * we do sys-critical inits only at reboot,
- * not when booting from ram!
- */
-#ifndef CONFIG_SKIP_LOWLEVEL_INIT
- bl cpu_init_crit
-#endif
-
bl board_init_ll
/*
@@ -207,40 +199,6 @@ _reset:
pop {r0-r12,r14}
bx lr
-/*
- *************************************************************************
- *
- * CPU_init_critical registers
- *
- * setup important registers
- * setup memory timing
- *
- *************************************************************************
- */
-#ifndef CONFIG_SKIP_LOWLEVEL_INIT
-cpu_init_crit:
- /*
- * flush v4 I/D caches
- */
- mov r0, #0
- mcr p15, 0, r0, c7, c7, 0 /* flush v3/v4 cache */
- mcr p15, 0, r0, c8, c7, 0 /* flush v4 TLB */
-
- /*
- * disable MMU stuff and caches
- */
- mrc p15, 0, r0, c1, c0, 0
- bic r0, r0, #0x00002300 /* clear bits 13, 9:8 (--V- --RS) */
- bic r0, r0, #0x00000087 /* clear bits 7, 2:0 (B--- -CAM) */
- orr r0, r0, #0x00000002 /* set bit 2 (A) Align */
- orr r0, r0, #0x00001000 /* set bit 12 (I) I-Cache */
- mcr p15, 0, r0, c1, c0, 0
-
- mov pc, lr /* back to my caller */
-
- .align 5
-#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
-
_hang:
ldr sp, _TEXT_BASE /* switch to abort stack */
1:
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code
2012-08-06 21:34 [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Marek Vasut
@ 2012-08-06 21:34 ` Marek Vasut
2012-08-17 11:05 ` Stefano Babic
2012-08-20 7:52 ` Stefano Babic
2012-08-17 11:04 ` [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Stefano Babic
2012-08-20 7:52 ` Stefano Babic
2 siblings, 2 replies; 6+ messages in thread
From: Marek Vasut @ 2012-08-06 21:34 UTC (permalink / raw)
To: u-boot
Move some function calls to a more appropriate place, so they're
called only when needed.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
---
arch/arm/cpu/arm926ejs/mx28/spl_power_init.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
index 4b09b0c..e06e6d6 100644
--- a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
+++ b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
@@ -657,17 +657,14 @@ void mx28_power_configure_power_source(void)
mx28_src_power_init();
- batt_ready = mx28_is_batt_ready();
-
if (readl(&power_regs->hw_power_sts) & POWER_STS_VDD5V_GT_VDDIO) {
- batt_good = mx28_is_batt_good();
+ batt_ready = mx28_is_batt_ready();
if (batt_ready) {
/* 5V source detected, good battery detected. */
mx28_batt_boot();
} else {
- if (batt_good) {
- /* 5V source detected, low battery detceted. */
- } else {
+ batt_good = mx28_is_batt_good();
+ if (!batt_good) {
/* 5V source detected, bad battery detected. */
writel(LRADC_CONVERSION_AUTOMATIC,
&lradc_regs->hw_lradc_conversion_clr);
--
1.7.10.4
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL
2012-08-06 21:34 [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Marek Vasut
2012-08-06 21:34 ` [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code Marek Vasut
@ 2012-08-17 11:04 ` Stefano Babic
2012-08-20 7:52 ` Stefano Babic
2 siblings, 0 replies; 6+ messages in thread
From: Stefano Babic @ 2012-08-17 11:04 UTC (permalink / raw)
To: u-boot
On 06/08/2012 23:34, Marek Vasut wrote:
> The SPL doesn't need the CP15 reconfiguration, as that's what the
> BootROM does for us already. Moreover, when the CP15 is reconfigured
> and the code returns control to BootROM, the USB boot works no more.
>
> Remove the code and allow [1] to work properly as well.
>
> [1] http://git.bfuser.eu/?p=marex/mxsldr.git;a=summary
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> ---
> arch/arm/cpu/arm926ejs/mx28/start.S | 42 -----------------------------------
> 1 file changed, 42 deletions(-)
>
> diff --git a/arch/arm/cpu/arm926ejs/mx28/start.S b/arch/arm/cpu/arm926ejs/mx28/start.S
> index e572b78..7ccd337 100644
> --- a/arch/arm/cpu/arm926ejs/mx28/start.S
> +++ b/arch/arm/cpu/arm926ejs/mx28/start.S
> @@ -180,14 +180,6 @@ _reset:
> orr r0,r0,#0xd3
> msr cpsr,r0
>
> - /*
> - * we do sys-critical inits only at reboot,
> - * not when booting from ram!
> - */
> -#ifndef CONFIG_SKIP_LOWLEVEL_INIT
> - bl cpu_init_crit
> -#endif
> -
> bl board_init_ll
>
> /*
> @@ -207,40 +199,6 @@ _reset:
> pop {r0-r12,r14}
> bx lr
>
> -/*
> - *************************************************************************
> - *
> - * CPU_init_critical registers
> - *
> - * setup important registers
> - * setup memory timing
> - *
> - *************************************************************************
> - */
> -#ifndef CONFIG_SKIP_LOWLEVEL_INIT
> -cpu_init_crit:
> - /*
> - * flush v4 I/D caches
> - */
> - mov r0, #0
> - mcr p15, 0, r0, c7, c7, 0 /* flush v3/v4 cache */
> - mcr p15, 0, r0, c8, c7, 0 /* flush v4 TLB */
> -
> - /*
> - * disable MMU stuff and caches
> - */
> - mrc p15, 0, r0, c1, c0, 0
> - bic r0, r0, #0x00002300 /* clear bits 13, 9:8 (--V- --RS) */
> - bic r0, r0, #0x00000087 /* clear bits 7, 2:0 (B--- -CAM) */
> - orr r0, r0, #0x00000002 /* set bit 2 (A) Align */
> - orr r0, r0, #0x00001000 /* set bit 12 (I) I-Cache */
> - mcr p15, 0, r0, c1, c0, 0
> -
> - mov pc, lr /* back to my caller */
> -
> - .align 5
> -#endif /* CONFIG_SKIP_LOWLEVEL_INIT */
> -
> _hang:
> ldr sp, _TEXT_BASE /* switch to abort stack */
> 1:
>
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code
2012-08-06 21:34 ` [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code Marek Vasut
@ 2012-08-17 11:05 ` Stefano Babic
2012-08-20 7:52 ` Stefano Babic
1 sibling, 0 replies; 6+ messages in thread
From: Stefano Babic @ 2012-08-17 11:05 UTC (permalink / raw)
To: u-boot
On 06/08/2012 23:34, Marek Vasut wrote:
> Move some function calls to a more appropriate place, so they're
> called only when needed.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> ---
> arch/arm/cpu/arm926ejs/mx28/spl_power_init.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
> index 4b09b0c..e06e6d6 100644
> --- a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
> +++ b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
> @@ -657,17 +657,14 @@ void mx28_power_configure_power_source(void)
>
> mx28_src_power_init();
>
> - batt_ready = mx28_is_batt_ready();
> -
> if (readl(&power_regs->hw_power_sts) & POWER_STS_VDD5V_GT_VDDIO) {
> - batt_good = mx28_is_batt_good();
> + batt_ready = mx28_is_batt_ready();
> if (batt_ready) {
> /* 5V source detected, good battery detected. */
> mx28_batt_boot();
> } else {
> - if (batt_good) {
> - /* 5V source detected, low battery detceted. */
> - } else {
> + batt_good = mx28_is_batt_good();
> + if (!batt_good) {
> /* 5V source detected, bad battery detected. */
> writel(LRADC_CONVERSION_AUTOMATIC,
> &lradc_regs->hw_lradc_conversion_clr);
>
Acked-by: Stefano Babic <sbabic@denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL
2012-08-06 21:34 [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Marek Vasut
2012-08-06 21:34 ` [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code Marek Vasut
2012-08-17 11:04 ` [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Stefano Babic
@ 2012-08-20 7:52 ` Stefano Babic
2 siblings, 0 replies; 6+ messages in thread
From: Stefano Babic @ 2012-08-20 7:52 UTC (permalink / raw)
To: u-boot
On 06/08/2012 23:34, Marek Vasut wrote:
> The SPL doesn't need the CP15 reconfiguration, as that's what the
> BootROM does for us already. Moreover, when the CP15 is reconfigured
> and the code returns control to BootROM, the USB boot works no more.
>
> Remove the code and allow [1] to work properly as well.
>
> [1] http://git.bfuser.eu/?p=marex/mxsldr.git;a=summary
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> ---
Applied to u-boot-imx, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code
2012-08-06 21:34 ` [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code Marek Vasut
2012-08-17 11:05 ` Stefano Babic
@ 2012-08-20 7:52 ` Stefano Babic
1 sibling, 0 replies; 6+ messages in thread
From: Stefano Babic @ 2012-08-20 7:52 UTC (permalink / raw)
To: u-boot
On 06/08/2012 23:34, Marek Vasut wrote:
> Move some function calls to a more appropriate place, so they're
> called only when needed.
>
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Stefano Babic <sbabic@denx.de>
> Cc: Fabio Estevam <fabio.estevam@freescale.com>
> ---
> arch/arm/cpu/arm926ejs/mx28/spl_power_init.c | 9 +++------
> 1 file changed, 3 insertions(+), 6 deletions(-)
>
> diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
> index 4b09b0c..e06e6d6 100644
> --- a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
> +++ b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c
> @@ -657,17 +657,14 @@ void mx28_power_configure_power_source(void)
>
> mx28_src_power_init();
>
> - batt_ready = mx28_is_batt_ready();
> -
> if (readl(&power_regs->hw_power_sts) & POWER_STS_VDD5V_GT_VDDIO) {
> - batt_good = mx28_is_batt_good();
> + batt_ready = mx28_is_batt_ready();
> if (batt_ready) {
> /* 5V source detected, good battery detected. */
> mx28_batt_boot();
> } else {
> - if (batt_good) {
> - /* 5V source detected, low battery detceted. */
> - } else {
> + batt_good = mx28_is_batt_good();
> + if (!batt_good) {
> /* 5V source detected, bad battery detected. */
> writel(LRADC_CONVERSION_AUTOMATIC,
> &lradc_regs->hw_lradc_conversion_clr);
>
Applied to u-boot-imx, thanks.
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2012-08-20 7:52 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-08-06 21:34 [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Marek Vasut
2012-08-06 21:34 ` [U-Boot] [PATCH 2/2] MX28: Shuffle around the power management code Marek Vasut
2012-08-17 11:05 ` Stefano Babic
2012-08-20 7:52 ` Stefano Babic
2012-08-17 11:04 ` [U-Boot] [PATCH 1/2] MX28: Drop the cp15 reconfiguration from SPL Stefano Babic
2012-08-20 7:52 ` Stefano Babic
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox