From afd7f4133a8dc00d465de80c536e7876e6529e19 Mon Sep 17 00:00:00 2001 From: Philipp Steiner Date: Thu, 17 Jan 2019 15:33:02 +0100 Subject: [PATCH] Add SPIF_ULBPR command also to QSPIFBlockDevice and SPIFReducedBlockDevice --- .../storage/blockdevice/COMPONENT_QSPIF/QSPIFBlockDevice.cpp | 3 ++- .../blockdevice/COMPONENT_RSPIF/SPIFReducedBlockDevice.cpp | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/components/storage/blockdevice/COMPONENT_QSPIF/QSPIFBlockDevice.cpp b/components/storage/blockdevice/COMPONENT_QSPIF/QSPIFBlockDevice.cpp index 30e80ee119..baf9a19258 100644 --- a/components/storage/blockdevice/COMPONENT_QSPIF/QSPIFBlockDevice.cpp +++ b/components/storage/blockdevice/COMPONENT_QSPIF/QSPIFBlockDevice.cpp @@ -95,6 +95,7 @@ enum qspif_default_instructions { QSPIF_RSTEN = 0x66, // Reset Enable QSPIF_RST = 0x99, // Reset QSPIF_RDID = 0x9f, // Read Manufacturer and JDEC Device ID + QSPIF_ULBPR = 0x98, // Clears all write-protection bits in the Block-Protection register }; // Local Function @@ -206,7 +207,7 @@ int QSPIFBlockDevice::init() // SST devices come preset with block protection // enabled for some regions, issue write disable instruction to clear _set_write_enable(); - _qspi_send_general_command(QSPIF_WRDI, QSPI_NO_ADDRESS_COMMAND, NULL, 0, NULL, 0); + _qspi_send_general_command(QSPIF_ULBPR, QSPI_NO_ADDRESS_COMMAND, NULL, 0, NULL, 0); break; } diff --git a/components/storage/blockdevice/COMPONENT_RSPIF/SPIFReducedBlockDevice.cpp b/components/storage/blockdevice/COMPONENT_RSPIF/SPIFReducedBlockDevice.cpp index fceb8af4fc..1d50325e61 100644 --- a/components/storage/blockdevice/COMPONENT_RSPIF/SPIFReducedBlockDevice.cpp +++ b/components/storage/blockdevice/COMPONENT_RSPIF/SPIFReducedBlockDevice.cpp @@ -40,6 +40,7 @@ enum ops { SPIF_WRDI = 0x04, // Write Disable SPIF_RDSR = 0x05, // Read Status Register SPIF_RDID = 0x9f, // Read Manufacturer and JDEC Device ID + SPIF_ULBPR = 0x98, // Clears all write-protection bits in the Block-Protection register }; // Status register from RDSR @@ -68,7 +69,7 @@ int SPIFReducedBlockDevice::init() // SST devices come preset with block protection // enabled for some regions, issue gbpu instruction to clear _wren(); - _cmdwrite(0x98, 0, 0, 0x0, NULL); + _cmdwrite(SPIF_ULBPR, 0, 0, 0x0, NULL); break; }