Hi,
I have a QSPI NOR flash interface (S25HS512T) in a custom LS1046 board (Using QSPI-A). Both read and write are working fine but flash erase is not working. Here is my configuration in .dts file
&qspi {
status = "okay";
flash0: s25hs512t@0 {
compatible = "spansion,s25hs512t", "jedec,spi-nor";
#address-cells = <1>;
#size-cells = <1>;
spi-max-frequency = <40000000>;
spi-rx-bus-width = <4>;
spi-tx-bus-width = <4>;
reg = <0>;
status = "okay";
};
};
I've tried erasing the flash in all possible ways
a) Used mtd_debug erase
b) flash_erase ..
c) flash_eraseall ..
d) user application -> ioctl(fd, MEMERASE, &ei);
e) Uboot command -> sf erase ...
User application and "sf erase ..." are not giving any errors (or) warnings. But physically, flash blocks are not getting erased. Also flash locking is disabled.
Please help me with this issue if possible.
Thanks in advance.
Hi,
You could try to test QSPI Flash erasing using CodeWarrior and CodeWarrior TAP
Check writes protection possibility of your QSPI Flash.
See the S25HS512T datasheet, section 4.10 Erase
Regards,