[U-Boot-Users] [PATCH/review] Blackfin: use on-chip syscontrol() to reset

Detlev Zundel dzu at denx.de
Wed Jun 4 11:05:42 CEST 2008


Hi Mike,

> On Sunday 01 June 2008, Wolfgang Denk wrote:
>> In message <1212298724-15152-10-git-send-email-vapier at gentoo.org> you wrote:
>> > When available, use the on-chip syscontrol() rom function to perform a
>> > system reset rather than our own local method.
>> ...
>> > -		asm("jump (%0);" : : "a" (bfin_reset));
>> > +		if (0 /*BOOTROM_CAPS_SYSCONTROL -- current silicon is broken*/)
>> > +			syscontrol(SYSCTRL_SOFTRESET, NULL, NULL);
>> > +		else
>> > +			asm("jump (%0);" : : "a" (bfin_reset));
>> >  }
>>
>> Your comment suggests you change something, but actually you;re just
>> adding dead code.
>
> it's dead code because the current silicon is broken.  i know the code works 
> as ive tested it in scenarios where the anomaly isnt triggered, it just cant 
> be enabled until fixed hardware is released.  it's much easier to go back and 
> fix 1 if statement then have to carry this patch somewhere it can got lost 
> and i need to waste time and rewrite it.

Hm.  If the current - available - silicon is broken, then even if it is
fixed in the future, you will have to support both versions, right?  So
in the end you will need to have a discriminating factor on what to use.

So if you introduced some variable or bit in a variable (a define
doesn't look promising as I guess you want to support both broken and
non-broken silicon with a single image), you could have correct code now
and in the future - and no dead code complaints.

PowerPC Linux btw. does quite a lot of such "cpu_feature" stuff to
dynamically accomodate lots of different silicon.

Cheers
  Detlev

-- 
Test applications  with a variety of tools.  Don't assume everything works if
you've tested  with only  one client.  Also, assume the low end of technology
for clients and don't create applications which can only be used by Graphical
User Interfaces.                                       -- RFC 1855
--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de




More information about the U-Boot mailing list