From 3430e45f9d912535336f255df6d7e7b4ae93fa9e Mon Sep 17 00:00:00 2001 From: Jookia Date: Sat, 11 Mar 2023 14:24:31 +1100 Subject: [PATCH] QSPIF: Attempt 4-byte addressing on Macronix chips mbed-os PR 11531 introduced 4-byte addressing in the QSPIF block device: https://github.com/ARMmbed/mbed-os/pull/11531 During testing it was found that this code broke on the NRF52840_DK and DISCO_F769NI. The NRF52840_DK controller seems unable to handle 4-byte addressing at all and has been disabled entirely in another code section. The DISCO_F769NI breakage was attributed to the flash chip but after more research I believe this is related to the QSPI controller, not the 4-byte addressing itself. Now that the QSPI controller has a workaround, enable 4-byte addressing again and hope it works fine this time. --- storage/blockdevice/COMPONENT_QSPIF/source/QSPIFBlockDevice.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/storage/blockdevice/COMPONENT_QSPIF/source/QSPIFBlockDevice.cpp b/storage/blockdevice/COMPONENT_QSPIF/source/QSPIFBlockDevice.cpp index 39b8c1c43c6..66459539459 100644 --- a/storage/blockdevice/COMPONENT_QSPIF/source/QSPIFBlockDevice.cpp +++ b/storage/blockdevice/COMPONENT_QSPIF/source/QSPIFBlockDevice.cpp @@ -1095,7 +1095,6 @@ int QSPIFBlockDevice::_handle_vendor_quirks() _needs_fast_mode = true; _num_status_registers = 3; _read_status_reg_2_inst = QSPIF_INST_RDCR; - _attempt_4_byte_addressing = false; break; case 0x9d: // ISSI devices have only one status register