[U-Boot-Users] BDI2000 problems flashing virgin custom 8548 board

Ben Warren bwarren at qstreams.com
Wed Aug 29 23:52:18 CEST 2007


robert lazarski wrote:
> On 8/29/07, Ben Warren <bwarren at qstreams.com> wrote:
>   
>> robert lazarski wrote:
>>     
>>> atum8548>erase 00000000
>>> # Writing to workspace failed
>>>
>>>       
>> Workspace is RAM.  If your memory controller isn't set up, you can't use
>> the workspace.  From your config file it looks like you're planning on
>> using some kind of cache for SRAM.  I'd just skip this for now.  Delete
>> the WORKSPACE line and you should be able to write to flash.  It'll be
>> dog-slow, though.
>>     
>
> Thanks! I commented out the cache settings. Now I'm getting closer. I getting:
>
> atum8548>unlock
> Unlocking flash passed
> atum8548>erase 0
> Erasing flash at 0x00000000
> # Erasing flash memory failed
> atum8548>erase FF000000
> Erasing flash at 0x00000000
> # Erasing flash memory failed
> atum8548>erase 0x01000000
> Erasing flash at 0x01000000
> # Erasing flash memory failed
>
> What chip do you have? What did you start erasing?
>
>   
I'm not much of an expert on this, but I believe the BDI-2000 will 
execute the INIT section before handing control over to you. Your flash 
chip is on chip select 0, so the BR0/OR0 registers determine where you 
will see it. On my CPU (MPC8349) and probably yours too, the 17 least 
significant (from the left) bits of BR0 determine where the chip select 
ends up. In your case, this is 0xff80. I expect your flash chip will 
start at 0xff800000.

I highly recommend reading up on these registers - the Freescale 
reference manuals are excellent. There are a lot of options, and for NOR 
flash, at least at startup, you should make sure all the timings are 
fully relaxed (maximum wait states etc.).
>>> This is of course probably due to my bdi2000 cfg file - I've annexed
>>> it in this email. I've tried to keep the file bare bones though this
>>> is my first time writing this config. I've got one flash bank, a 128MB
>>> spansion S29GL01GP . Here's my flash #DEFINE's :
>>>
>>>
>>>       
>> For my 64Mb Spansion GL flash I use:
>>
>> CHIPTYPE    MIRRORX16   ;Flash type: Spansion
>> CHIPSIZE    0x800000    ;The size of one flash chip in bytes
>> BUSWIDTH    16          ;The width of the flash memory bus in bits (8 |
>> 16 | 32 | 64)
>>
>> Yours will probably be the same, but size will be 0x1000000.  I'm
>> assuming your flash is 128Mb and not 128MB, but I apologize if this is
>> wrong.
>>     
>
> That makes sense - I'm trying that but got the erase errors above. Any
> more ideas?
>
> Thanks!
> Robert
>
>   
Hopefully with the right address and the registers set up correctly you 
will be able to write to flash. One way or the other, we'll get there!

regards,
Ben




More information about the U-Boot mailing list