LS1021a-twr Unable to boot from QSPI

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

LS1021a-twr Unable to boot from QSPI

跳至解决方案
2,571 次查看
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 项奖励
1 解答
1,801 次查看
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 项奖励
4 回复数
1,802 次查看
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 项奖励
1,801 次查看
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 项奖励
1,799 次查看
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 项奖励
1,797 次查看
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 项奖励