From mboxrd@z Thu Jan 1 00:00:00 1970 From: Detlev Zundel Date: Wed, 04 Jun 2008 11:05:42 +0200 Subject: [U-Boot-Users] [PATCH/review] Blackfin: use on-chip syscontrol() to reset In-Reply-To: <200806011720.43991.vapier@gentoo.org> (Mike Frysinger's message of "Sun, 1 Jun 2008 17:20:43 -0400") References: <20080601195634.7B3D524AB1@gemini.denx.de> <200806011720.43991.vapier@gentoo.org> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi Mike, > On Sunday 01 June 2008, Wolfgang Denk wrote: >> In message <1212298724-15152-10-git-send-email-vapier@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