Other Parts Discussed in Thread: UNIFLASH, , IWR6843
Hi All,
I have some tests with QSPI_Flash.
I divided Flash into 3 partitions containing: SBL address 0x000000, image1 address 0x100000, image 2 address 0x280000 as shown below:
Step 1.First, I use UNIFLASH to load SBL.bin to address 0x00000000 and .bin to address 0x100000
After successful download, the bootloader loaded the SBL.bin file into RAM to operate, I changed the SBL.bin code to read the first 100 bytes from QSPI_Flash at addresses 0x100000 and 0x280000. The first 100 bytes of both addresses have the value 0xffffff...shown below:
void uart_print_QSPI (QSPIFlash_Handle qspiFlashHandle, uint32_t flashAddr) {
uint8_t data_qspi_Buffer[BUFFER_SIZE];
int idx = 0;
SBL_log("Read QSPI_Flash address = %x\r\n",flashAddr);
memset(data_qspi_Buffer,0,BUFFER_SIZE);
QSPIFlash_singleRead(qspiFlashHandle, flashAddr, BUFFER_SIZE, &data_qspi_Buffer[0]);
for(idx = 0; idx < 100; idx ++) {
SBL_log("%02x ",data_qspi_Buffer[idx]);
}
SBL_log("\r\n");
}
=>> I have checked that there is an image at address c0100000 (0xc0000000(external flash) + 0x00100000) and address c0280000 has no image.
Step 2. I use the QSPIFlash_sectorErase statement to erase the flash at address 0x280000.
Step 3. I rechecked the data at addresses C0100000 and C0280000. I see a problem, the data at address 0xC0100000 has changed compared to before deleting the data at address 0xc0280000
All data at address 0xc0100000 was changed even though I did not modify the data at that address, as shown below:
Before deleting data at address 0xC0280000
After deleting data at address 0xC0280000, All data at address 0xc0100000 was changed.
So how can I delete data at address 0xC0280000 without changing the data at address 0XC0100000?
I look forward to receiving your help regarding the problem I have encountered
Thanks and Regards,
Tu Tran