From mboxrd@z Thu Jan 1 00:00:00 1970 From: Simon Glass Date: Wed, 1 Oct 2014 10:37:10 -0600 Subject: [U-Boot] Commit 294b91a5817147d4b7f47be2ac69bac2a1f26491 broke mpc85xx In-Reply-To: <542C2B84.1090706@freescale.com> References: <542C2B84.1090706@freescale.com> 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 York, On 1 October 2014 10:27, York Sun wrote: > On 10/01/2014 08:11 AM, Simon Glass wrote: > > Hi York, > > > > > > On 30 September 2014 22:06, York Sun wrote: > >> Simon, > >> > >> I didn't notice until today the commit > >> 294b91a5817147d4b7f47be2ac69bac2a1f26491 broke at least T4240QDS. I have > >> narrowed down to these two lines in common/board_r.c > >> > >> initr_barrier, > >> initr_malloc, > >> > >> If I move these two lines below this part > >> > >> > >> #if defined(CONFIG_SYS_INIT_RAM_LOCK) && defined(CONFIG_E500) > >> initr_unlock_ram_in_cache, > >> #endif > >> > >> > >> U-boot boots OK on T4240QDS (I can see the prompt). But if I move them > >> anywhere above this initr_unlock_ram_in_cache, it hangs the core when > >> initializing PCI. It may break other mpc85xx platforms but I didn't have > >> time to check more today. I haven't figured out why you have to move > these > >> two lines up. Please take a close look. > > > > I could adjust this so that the ordering changes only when driver model > is used. > > > > This would be a case of putting '#ifdef CONFIG_DM' around the first > > section, then repeating it later with '#ifndef CONFIG_DM'. You can see > > that I did this for stdio out of an abundance of caution. > > > > However, in the interests of supporting driver model on these > > platforms I wonder if it might be possible to move the cache logic > > earlier. I suspect that the unlock/invalidate should happen before > > post-relocation RAM is used. > > > > Please take a look and let me know if that might be possible. > > Otherwise we'll have to go with the fallback. > > I can change init sequence as far as I put initr_unlock_ram_in_cache before > initr_malloc, T4240QDS still boots. > > I examine the code but don't understand why I have to do so. P4080DS > doesn't > suffer this issue. I am going to seek some help from Scott and other > in-house > experts. > > > > > BTW I don't have any of these boards. If there is one that is readily > > and cheaply available, or if you have an old one you can send me, I'd > > be happy to test on this and take a closer look at driver model > > support. > > I checked but we don't have surplus. This board is relatively new and it > sells > for $4000. I will keep an eye on it. > Gosh. Is there something else relatively common in the PPC world that sells for $100-200? Regards, Simon