Dear list,
I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data, but
IO4 doesn't rise again. So DSP doesn't start to execute. TI support
told me EMIF.ARDY has to be pulled up to make boot loader successful. I think
it's irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the
datasheet and see nothing relate EMIF.ARDY to SPI bootup. I know many people in
this list have successfully boot 5509A from SPI flash. Can you comfirm the he is
right or wrong?
Best,
Wei
ARDY pin and boot loader from McBsp
Started by ●July 19, 2007
Reply by ●July 19, 20072007-07-19
Li Wei-
> I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data,
> but IO4 doesn't rise again. So DSP doesn't start to execute. TI support told
> me EMIF.ARDY has to be pulled up to make boot loader successful. I think it's
> irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the datasheet
> and see nothing relate EMIF.ARDY to SPI bootup. I know many people in this
> list have successfully boot 5509A from SPI flash. Can you comfirm the he is
> right or wrong?
One possibility for TI Hotline's comments that I can think of -- the 5509A bootloader
does a loop that tries several possible boot modes. When it tries EMIF boot, if ARDY
is not high the bootloader code might hang and never attempt SPI boot.
But I'm not sure. I also recall that there are ways to "force" one type of boot or
another, using pull-up/down Rs on GPIOx or other lines.
In any case, you definitely need to locate the 5509A bootloader documentation. It
will show you the actual ROM code the chip runs after Reset.
-Jeff
> I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data,
> but IO4 doesn't rise again. So DSP doesn't start to execute. TI support told
> me EMIF.ARDY has to be pulled up to make boot loader successful. I think it's
> irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the datasheet
> and see nothing relate EMIF.ARDY to SPI bootup. I know many people in this
> list have successfully boot 5509A from SPI flash. Can you comfirm the he is
> right or wrong?
One possibility for TI Hotline's comments that I can think of -- the 5509A bootloader
does a loop that tries several possible boot modes. When it tries EMIF boot, if ARDY
is not high the bootloader code might hang and never attempt SPI boot.
But I'm not sure. I also recall that there are ways to "force" one type of boot or
another, using pull-up/down Rs on GPIOx or other lines.
In any case, you definitely need to locate the 5509A bootloader documentation. It
will show you the actual ROM code the chip runs after Reset.
-Jeff
Reply by ●July 24, 20072007-07-24
I tend to believe there are other reasons that IO4 don't rise and cause
subsequent boot failure. I used following steps to substitue the Flash Burn
software.
1. use hex55 to generate .hex file.
2. fread() the .hex
3. write to the flash byte by byte according to the
result of fread()
4. read the flash and fwrite() to a file
5. verify the generated file is identical to .hex
6. completed
I am not sure about step 3. Do we have to decode .hex again or just copy and burn the .hex byte by byte strictly.
Thanks to Jeff for the reply,
Wei
1. use hex55 to generate .hex file.
2. fread() the .hex
3. write to the flash byte by byte according to the
result of fread()
4. read the flash and fwrite() to a file
5. verify the generated file is identical to .hex
6. completed
I am not sure about step 3. Do we have to decode .hex again or just copy and burn the .hex byte by byte strictly.
Thanks to Jeff for the reply,
Wei
Reply by ●July 24, 20072007-07-24
Now myself have the answer I asked for. Since there are already too many
questions uncared by the author in this board, I'd like to conclude my
thread by answering it.
For ARDY issue, not necessarily to be pulled up although TI hotline requested. I messed up something else.
You cann't just copy .hex to flash. You have to parse it first.
Wei
Dear list,
>
>I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data, but IO4 doesn't rise again. So DSP doesn't start to execute. TI support told me EMIF.ARDY has to be pulled up to make boot loader successful. I think it's irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the datasheet and see nothing relate EMIF.ARDY to SPI bootup. I know many people in this list have successfully boot 5509A from SPI flash. Can you comfirm the he is right or wrong?
>
>Best,
>
>Wei
For ARDY issue, not necessarily to be pulled up although TI hotline requested. I messed up something else.
You cann't just copy .hex to flash. You have to parse it first.
Wei
Dear list,
>
>I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data, but IO4 doesn't rise again. So DSP doesn't start to execute. TI support told me EMIF.ARDY has to be pulled up to make boot loader successful. I think it's irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the datasheet and see nothing relate EMIF.ARDY to SPI bootup. I know many people in this list have successfully boot 5509A from SPI flash. Can you comfirm the he is right or wrong?
>
>Best,
>
>Wei
Reply by ●July 26, 20072007-07-26
Li Wei-
> I tend to believe there are other reasons that IO4 don't rise and cause
> subsequent boot failure. I used following steps to substitue the Flash
> Burn software.
>
> 1. use hex55 to generate .hex file.
> 2. fread() the .hex
> 3. write to the flash byte by byte according to the
> result of fread()
> 4. read the flash and fwrite() to a file
> 5. verify the generated file is identical to .hex
> 6. completed
>
> I am not sure about step 3. Do we have to decode .hex again or just copy
> and burn the .hex byte by byte strictly.
That looks Ok, but you may need a step "2.5" that parses the .hex file into a true,
binary image that can be written to Flash. The .hex file format is ASCII so it has a
line format with address and data. Sometimes addr values are not contiguous between
lines. We use an in-house program to keep track of the address.
-Jeff
> I tend to believe there are other reasons that IO4 don't rise and cause
> subsequent boot failure. I used following steps to substitue the Flash
> Burn software.
>
> 1. use hex55 to generate .hex file.
> 2. fread() the .hex
> 3. write to the flash byte by byte according to the
> result of fread()
> 4. read the flash and fwrite() to a file
> 5. verify the generated file is identical to .hex
> 6. completed
>
> I am not sure about step 3. Do we have to decode .hex again or just copy
> and burn the .hex byte by byte strictly.
That looks Ok, but you may need a step "2.5" that parses the .hex file into a true,
binary image that can be written to Flash. The .hex file format is ASCII so it has a
line format with address and data. Sometimes addr values are not contiguous between
lines. We use an in-house program to keep track of the address.
-Jeff
Reply by ●July 28, 20072007-07-28
Jeff,
Your comment is right. I wish I had received it earlier before I learned it in a hard way. It's just that the delay of 55x group is reaching the point of unbearable: one post I sent out Monday is still nowhere as of today, Friday. I will not be suprised to see this post, written in July 27, appears in August.
Wei
Dear list,
>
>I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data, but IO4 doesn't rise again. So DSP doesn't start to execute. TI support told me EMIF.ARDY has to be pulled up to make boot loader successful. I think it's irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the datasheet and see nothing relate EMIF.ARDY to SPI bootup. I know many people in this list have successfully boot 5509A from SPI flash. Can you comfirm the he is right or wrong?
>
>Best,
>
>Wei
Your comment is right. I wish I had received it earlier before I learned it in a hard way. It's just that the delay of 55x group is reaching the point of unbearable: one post I sent out Monday is still nowhere as of today, Friday. I will not be suprised to see this post, written in July 27, appears in August.
Wei
Dear list,
>
>I have difficulties to boot up from SPI flash: IO4 goes down, DSP read data, but IO4 doesn't rise again. So DSP doesn't start to execute. TI support told me EMIF.ARDY has to be pulled up to make boot loader successful. I think it's irrelevent since EMIF.ARDY is only for EMIF. I doublechecked the datasheet and see nothing relate EMIF.ARDY to SPI bootup. I know many people in this list have successfully boot 5509A from SPI flash. Can you comfirm the he is right or wrong?
>
>Best,
>
>Wei
Reply by ●July 28, 20072007-07-28
--- In c..., liwei2000@... wrote:
>
> Jeff,
>
> Your comment is right. I wish I had received it earlier before I
learned it in a hard way. It's just that the delay of 55x group is
reaching the point of unbearable: one post I sent out Monday is still
nowhere as of today, Friday. I will not be suprised to see this post,
written in July 27, appears in August.
>
Anyone interested in becoming a moderator? The more moderators there
are in a group, the shorter the delays. All you have to do is look at
the pending messages once in a while, and be able to make a difference
between a good message that follows the rules, and a bad message. Let
me know if you want to give it a try.
Stephane
>
> Jeff,
>
> Your comment is right. I wish I had received it earlier before I
learned it in a hard way. It's just that the delay of 55x group is
reaching the point of unbearable: one post I sent out Monday is still
nowhere as of today, Friday. I will not be suprised to see this post,
written in July 27, appears in August.
>
Anyone interested in becoming a moderator? The more moderators there
are in a group, the shorter the delays. All you have to do is look at
the pending messages once in a while, and be able to make a difference
between a good message that follows the rules, and a bad message. Let
me know if you want to give it a try.
Stephane