From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthias Fuchs Date: Tue, 31 Jan 2012 11:24:36 +0100 Subject: [U-Boot] [PATCH] i.MX28: Fix VDDIO and VDDA setup In-Reply-To: <1327968001-13567-1-git-send-email-marek.vasut@gmail.com> References: <1327968001-13567-1-git-send-email-marek.vasut@gmail.com> Message-ID: <4F27C164.2030203@esd.eu> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de I tested both patch on my mx28evk. At least I cannot notice any missbehavior :-) Downloading the patched u-boot via USB recovery download still does not work. Marek, did you find any further mentionable difference between bootlets code and current u-boot implementation? Matthias On 31.01.2012 01:00, Marek Vasut wrote: > The DC power STS shouldn't be checked if booting off 5V supply. > > Signed-off-by: Marek Vasut > Cc: Wolfgang Denk > Cc: Detlev Zundel > Cc: Stefano Babic > Cc: Robert Deli?n > Cc: Fabio Estevam > Cc: Matthias Fuchs > --- > arch/arm/cpu/arm926ejs/mx28/spl_power_init.c | 16 ++++++++++++---- > 1 files changed, 12 insertions(+), 4 deletions(-) > > Note: Guys, please give this a testrun. I think it might fix the issue Robert > was observing. I dug into the imx-bootlets and the bootrom X-Files and found > this paranormal piece of code. Adding it fixes the boot issue on my crappy > board. > > M > > diff --git a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c > index ee0f237..c6c25d9 100644 > --- a/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c > +++ b/arch/arm/cpu/arm926ejs/mx28/spl_power_init.c > @@ -802,7 +802,9 @@ void mx28_power_set_vddio(uint32_t new_target, uint32_t new_brownout) > clrsetbits_le32(&power_regs->hw_power_vddioctrl, > POWER_VDDIOCTRL_TRG_MASK, diff); > > - if (powered_by_linreg) > + if (powered_by_linreg || > + (readl(&power_regs->hw_power_sts) & > + POWER_STS_VDD5V_GT_VDDIO)) > early_delay(1500); > else { > while (!(readl(&power_regs->hw_power_sts) & > @@ -837,7 +839,9 @@ void mx28_power_set_vddio(uint32_t new_target, uint32_t new_brownout) > clrsetbits_le32(&power_regs->hw_power_vddioctrl, > POWER_VDDIOCTRL_TRG_MASK, diff); > > - if (powered_by_linreg) > + if (powered_by_linreg || > + (readl(&power_regs->hw_power_sts) & > + POWER_STS_VDD5V_GT_VDDIO)) > early_delay(1500); > else { > while (!(readl(&power_regs->hw_power_sts) & > @@ -895,7 +899,9 @@ void mx28_power_set_vddd(uint32_t new_target, uint32_t new_brownout) > clrsetbits_le32(&power_regs->hw_power_vdddctrl, > POWER_VDDDCTRL_TRG_MASK, diff); > > - if (powered_by_linreg) > + if (powered_by_linreg || > + (readl(&power_regs->hw_power_sts) & > + POWER_STS_VDD5V_GT_VDDIO)) > early_delay(1500); > else { > while (!(readl(&power_regs->hw_power_sts) & > @@ -930,7 +936,9 @@ void mx28_power_set_vddd(uint32_t new_target, uint32_t new_brownout) > clrsetbits_le32(&power_regs->hw_power_vdddctrl, > POWER_VDDDCTRL_TRG_MASK, diff); > > - if (powered_by_linreg) > + if (powered_by_linreg || > + (readl(&power_regs->hw_power_sts) & > + POWER_STS_VDD5V_GT_VDDIO)) > early_delay(1500); > else { > while (!(readl(&power_regs->hw_power_sts) & -- ------------------------------------------------------------------------ Dipl.-Ing. Matthias Fuchs Head of System Design esd electronic system design gmbh Vahrenwalder Str. 207 - 30165 Hannover - GERMANY Phone: +49-511-37298-0 - Fax: +49-511-37298-68 Please visit our homepage http://www.esd.eu Quality Products - Made in Germany Besuchen Sie uns auf der embedded world 2012 in Halle 4, Stand 129 vom 28. Februar - 01. M?rz 2012 in N?rnberg! ------------------------------------------------------------------------ Gesch?ftsf?hrer: Klaus Detering Amtsgericht Hannover HRB 51373 - VAT-ID DE 115672832 -------------------------------------------------------------------------