[U-Boot-Users] Flash write crash on MPC8548CDS

1.3.2-rc1-gb6f29c84-dirty crashes on the very first attempt to write in Flash. After that it gets back to the prompt and _ALL_ subsequent writes work just fine. Only the very first one fails.
Looks like something is not initialized properly. Before I start digging does anyone has a fix for it? This is quite new platform for me so it could take time for me to come up with a fix...
Here is what happens on the very first Flash write attempt (original config with no changes, stock MPC8548CDS with SW2[1..2] set to "off-off", was "off-on" out of the box for booting Freescale's U-Boot 1.1.something from alternate Flash.)
=== Cut === U-Boot 1.3.2-rc1-gb6f29c84-dirty (Feb 19 2008 - 13:34:21)
CPU: 8548_E, Version: 2.1, (0x80390021) Core: E500, Version: 2.2, (0x80210022) Clock Configuration: CPU:1320 MHz, CCB: 528 MHz, DDR: 264 MHz, LBC: 66 MHz L1: D-cache 32 kB enabled I-cache 32 kB enabled Board: CDS Version 0x13, PCI Slot 1 CPU Board Revision 0.0 (0x0000) I2C: ready DRAM: Initializing SDRAM: 64 MB DDR: 256 MB FLASH: 16 MB L2 cache 512KB: enabled PCI: 64 bit, unknown MHz, async, host, external-arbiter Scanning PCI bus 00 PCI on bus 00 - 02
PCIE connected to slot as Root Complex (base address e000a000) PCIE on bus 3 - 3 In: serial Out: serial Err: serial Net: eTSEC0, eTSEC1, eTSEC2, eTSEC3 Hit any key to stop autoboot: 0 => saveenv Saving Environment to Flash... Un-Protected 4 sectors Erasing Flash... .... done Erased 4 sectors Writing to Flash... External Interrupt Exception at PC: ffc1e2c, SR: 29200, vector=500 irq IACK0@e00600a0=2 NIP: 0FFC1E2C XER: 00000000 LR: 0FFCEBF4 REGS: 0ff5dc50 TRAP: 0500 DAR: 00000000 MSR: 00029200 EE: 1 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 00029200 0FF5DD40 0FF9DF78 00010000 00000000 00000555 FF800AAA 32C45D1D GPR08: 00000000 FF810000 0FF5DD2B 0FFF5404 0FF5DBA0 40ED2D4B 0FFF5100 00000000 GPR16: 0FFEC778 0FFEE784 00000000 00000000 00000000 00000000 00000000 00000000 GPR24: 0FF5DD78 0FF5DD88 00000001 FFFFF146 E4010000 0FF5DD33 0FFF572C 0FFF5404 Call backtrace: 0FF5DD33 0FFCEB8C 0FFCF8C8 0FFDD27C 0FFDCCCC 0FFD9B50 0FFDF230 0FFDE944 0FFDEAB0 0FFD2384 0FFC9810 0FFC15FC Skipping current instr, Returning to 0x0ffc1e30 done Protected 4 sectors => === Cut ===
--- ****************************************************************** * KSI@home KOI8 Net < > The impossible we do immediately. * * Las Vegas NV, USA < > Miracles require 24-hour notice. * ******************************************************************

On Wed, Feb 20, 2008 at 1:13 PM, ksi@koi8.net wrote:
1.3.2-rc1-gb6f29c84-dirty crashes on the very first attempt to write in Flash. After that it gets back to the prompt and _ALL_ subsequent writes work just fine. Only the very first one fails.
How did you program u-boot into the flash?

On Wed, 20 Feb 2008, Andy Fleming wrote:
On Wed, Feb 20, 2008 at 1:13 PM, ksi@koi8.net wrote:
1.3.2-rc1-gb6f29c84-dirty crashes on the very first attempt to write
in
Flash. After that it gets back to the prompt and _ALL_ subsequent
writes
work just fine. Only the very first one fails.
How did you program u-boot into the flash?
With "tft xx xx; cp.b xx xx xx" :)
It _ONLY_ fails on the first attempt. Crash is _NOT_ fatal so system returns to U-Boot prompt then you do the second attempt that succeeds. And all consecutive writes work fine.
And initially I wrote new U-Boot with the original 1.1.something from Freescale that works OK in that respect.
--- ****************************************************************** * KSI@home KOI8 Net < > The impossible we do immediately. * * Las Vegas NV, USA < > Miracles require 24-hour notice. * ******************************************************************
participants (2)
-
Andy Fleming
-
ksi@koi8.net