fsbl qspi: Fix dummy mode in examples
QSPI HW doesn't actually care what the SPI mode is for the dummy phase of flash commands. We have confirmed this with randomized testing. However due to a core limitation of QEMU it is expected to match the mode of the address phase for QEMU. So since QEMU is the only platform that cares, set the dummy mode to QEMUs expectation. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com>
This commit is contained in:
parent
b9dc06aac8
commit
f325b4c8d8
1 changed files with 6 additions and 10 deletions
|
@ -623,17 +623,13 @@ u32 XFsbl_Qspi24Copy(u32 SrcAddress, PTRSIZE DestAddress, u32 Length)
|
|||
if ((ReadCommand == FAST_READ_CMD_24BIT) || (ReadCommand == DUAL_READ_CMD_24BIT) ||
|
||||
(ReadCommand == QUAD_READ_CMD_24BIT)) {
|
||||
/* Update Dummy cycles as per flash specs for QUAD IO */
|
||||
if (ReadCommand == FAST_READ_CMD_24BIT) {
|
||||
FlashMsg[1].BusWidth = XQSPIPSU_SELECT_MODE_SPI;
|
||||
}
|
||||
|
||||
if (ReadCommand == DUAL_READ_CMD_24BIT) {
|
||||
FlashMsg[1].BusWidth = XQSPIPSU_SELECT_MODE_DUALSPI;
|
||||
}
|
||||
|
||||
if (ReadCommand == QUAD_READ_CMD_24BIT){
|
||||
FlashMsg[1].BusWidth = XQSPIPSU_SELECT_MODE_QUADSPI;
|
||||
}
|
||||
/*
|
||||
* Silicon and REMUS do not care what the SPI mode is
|
||||
* for dummies, but QEMU expects it to match the address
|
||||
* phase. Make it so.
|
||||
*/
|
||||
FlashMsg[1].BusWidth = FlashMsg[0].BusWidth;
|
||||
|
||||
FlashMsg[1].TxBfrPtr = NULL;
|
||||
FlashMsg[1].RxBfrPtr = NULL;
|
||||
|
|
Loading…
Add table
Reference in a new issue