LS1021a-twr Unable to boot from QSPI

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

LS1021a-twr Unable to boot from QSPI

Jump to solution
2,554 Views
patrickmorrow
Contributor III

Hello everyone,

We're trying to boot from QSPI on the LS1021a twr board and we seem to be running into some problems.  According to the LS1021 documentation, when the board is configured to boot from QSPI and comes out of reset, a READ command (0x03) is issued over the QSPI bus in an effort to begin reading in configuration information about the attached flash.  We've managed to hook up an oscilloscope and monitor the pins between the LS1021 and the QSPI flash and we see an attempt at sending the READ command (we assume), but it appears that we do not read an 0x03 on the bus (we have attached screen captures of the clock and DQ0 lines).  We witness multiple instances of the 0x03 command on the bus with no data being returned.  This leads us to believe that the LS1021a is stuck continuously issuing it's QSPI boot process.

Below is the full interaction we see between the LS1021a and the QSPI flash 300us after power on reset deassertion.

QSPI Boot Full.bmp

Below is zoomed in on the very beginning of the interaction between the LS1021a and the QSPI, where we believe the 0x03 is to be sent.  But the timing of the signals below leads us to believe that a value of 0x03 is not being clocked in to the QSPI.

QSPI Boot Zoom In.bmp

Are we correct in assuming that the QSPI flash must first be in its default single bit SPI (non-Quad mode) and also in XIP mode?  It is our understanding that the QSPI controller eventually sets the flash into these modes, and that they need not be enable on power up. Is that line of thinking correct?

0 Kudos
1 Solution
1,784 Views
kporenta
Contributor III

Hi Patrick,

please check latest errata (LS1021A, LS1020A, and LS1022A Chip Errata, Rev F, 02/2015). Under A-007979, you can find: QSPI boot is not supported on the Rev 1.0 device (To be fixed in Rev 2.0).

If you can not wait for rev. 2. You can do the same as we did for our internal use. Add capacitor to D0 line to delay the signal. Solution is not tested in all conditions, but it works on the desk.

Br, Klemen

View solution in original post

0 Kudos
4 Replies
1,785 Views
kporenta
Contributor III

Hi Patrick,

please check latest errata (LS1021A, LS1020A, and LS1022A Chip Errata, Rev F, 02/2015). Under A-007979, you can find: QSPI boot is not supported on the Rev 1.0 device (To be fixed in Rev 2.0).

If you can not wait for rev. 2. You can do the same as we did for our internal use. Add capacitor to D0 line to delay the signal. Solution is not tested in all conditions, but it works on the desk.

Br, Klemen

0 Kudos
1,784 Views
MatthiasFuchs
Contributor II

Hi Klemen,

what capacity is needed for this? Is this workaround somewhere documented?

On the TWR board there is a 22p cap on D0. Is this already the fix?

Thanks,

Matthias

0 Kudos
1,782 Views
kporenta
Contributor III

Hi Matthias,

I haven't seen any document describing this fix.

In latest schematic for LS1021A_TWR board (SPF-28673_B) fix is already there.

Br, Klemen

0 Kudos
1,780 Views
patrickmorrow
Contributor III

Hi Klemen,

Thanks for the info, we haven't been able to get the latest errata but were assuming as much.

Thanks!

0 Kudos