[U-Boot] [PATCH] mx31: Improve the handling of unidentified silicon version

Stefano Babic sbabic at denx.de
Wed Jun 15 14:17:34 CEST 2011


On 06/15/2011 01:50 PM, Fabio Estevam wrote:
> Hi Stefano,
> 

Hi Fabio,

> Let me try to explain the problem I see with the current silicon
> detection mechanism:
> 
> On my board (srev=0x28), which is a TO2.0 silicon I get:
> 
> CPU:   Freescale i.MX31 rev 2.0 at 531 MHz.Reset cause: WDOG
> 
> On Felix´s MX31ADS board (srev=0x20) (unknown chip version) he gets:
> 
> CPU:   Freescale i.MX31 rev 2.0 unknown at 531 MHz.Reset cause: WDOG
> 
> Reading rev 2.0 on Felix´s case is misleading IMHO as we tend to
> think that we have a TO2.0 silicon on his board even though we get a
> "unknown" string.

Ok, so only reading the code we can know that version number + "unknown"
give us the value of the srev register. We can explicitely expand the
output to make things clearer.

>>> if (srev == mx31_cpu_type[i].srev) return mx31_cpu_type[i].v;
>>> 
>>> -	return srev | 0x8000; +	return 0x8000;
>> 
>> IMHO in the case the revision is not recognized, it is better to
>> print the value of the srev register, as it is done now.
> 
> Yes, agreed, but we should print srev as an hex number instead of a
> string as done today
> 
> If you agree I can implement the following logic:
> 
> When the chip version is detected let´s just leave as it is today:
> 
> CPU:   Freescale i.MX31 rev 2.0 at 531 MHz.Reset cause: WDOG
> 
> When the chip version is not valid, then we print:
> 
> CPU:   Freescale i.MX31 (unknown rev, srev=0x20) at 531 MHz.Reset
> cause: WDOG

Agree with your proposal.

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-0 Fax: +49-8142-66989-80  Email: office at denx.de
=====================================================================


More information about the U-Boot mailing list