Message ID | 20230331194620.839899-2-miquel.raynal@bootlin.com |
---|---|
State | Accepted |
Delegated to: | Ambarus Tudor |
Headers | show |
Series | [v6,1/2] mtd: spi-nor: Delay the initialization of bank_size | expand |
On 3/31/23 20:46, Miquel Raynal wrote: > Describe this new part and provide the RWW flag for it. > > There is no public datasheet, but here are the sfdp tables plus base > testing to show it works. > > $ cat /sys/bus/spi/devices/spi0.0/spi-nor/partname > mx25uw51245g > $ cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id > c2813a > $ cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer > macronix > $ xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp > 53464450080104fd00070114400000ff8701011c900000ff0a0001080001 > 00ff05000105200100ff84000102340100ff0000000000000000ffffffff > ffffffffe5208affffffff1f00ff00ff00ff00ffeeffffffffff00ffffff > 00ff0c2010d800ff00ff87790100821200e27704674630b030b0f4bdd55c > 000000ff101000200000000000007ca14800000000008888000000000000 > 00400fd1fff30fd1fff300050090000500b1002b0095002b0096727103b8 > 727103b80000000090a3188200c069960000000000000000727100987271 > 00b8727100990000000072710098727100f872710099727100f900000000 > 00000000011501d0727106d8000086500000060100000000020001030002 > 00000000060100000000000072060002000000eec0697272717100d8f7f6 > 000a00001445988043060f0021dcffff > $ md5sum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp > 047a884cf44d9ffc2a94d3ab37b48c63 /sys/bus/spi/devices/spi0.0/spi-nor/sfdp > > $ dd if=/dev/urandom of=./qspi_test bs=1M count=6 > 6+0 records in > 6+0 records out > $ mtd_debug write /dev/mtd1 0 6291456 qspi_test > Copied 6291456 bytes from qspi_test to address 0x00000000 in flash > $ mtd_debug erase /dev/mtd1 0 6291456 > Erased 6291456 bytes from address 0x00000000 in flash > $ mtd_debug read /dev/mtd1 0 6291456 qspi_read > Copied 6291456 bytes from address 0x00000000 in flash to qspi_read > $ hexdump qspi_read > 0000000 ffff ffff ffff ffff ffff ffff ffff ffff > * > 0600000 > $ mtd_debug write /dev/mtd1 0 6291456 qspi_test > Copied 6291456 bytes from qspi_test to address 0x00000000 in flash > $ mtd_debug read /dev/mtd1 0 6291456 qspi_read > Copied 6291456 bytes from address 0x00000000 in flash to qspi_read > $ sha1sum qspi_test qspi_read > d24a9523db829a0df688f34b8dc76a1383b74024 qspi_test > d24a9523db829a0df688f34b8dc76a1383b74024 qspi_read > > Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> > --- > drivers/mtd/spi-nor/macronix.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c > index 6853ec9ae65d..7db1a1a6a1fb 100644 > --- a/drivers/mtd/spi-nor/macronix.c > +++ b/drivers/mtd/spi-nor/macronix.c > @@ -82,6 +82,9 @@ static const struct flash_info macronix_nor_parts[] = { > { "mx25u51245g", INFO(0xc2253a, 0, 64 * 1024, 1024) > NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) > FIXUP_FLAGS(SPI_NOR_4B_OPCODES) }, > + { "mx25uw51245g", INFOB(0xc2813a, 0, 0, 0, 4) > + PARSE_SFDP > + FLAGS(SPI_NOR_RWW) }, > { "mx25v8035f", INFO(0xc22314, 0, 64 * 1024, 16) > NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | > SPI_NOR_QUAD_READ) }, looks good!
diff --git a/drivers/mtd/spi-nor/macronix.c b/drivers/mtd/spi-nor/macronix.c index 6853ec9ae65d..7db1a1a6a1fb 100644 --- a/drivers/mtd/spi-nor/macronix.c +++ b/drivers/mtd/spi-nor/macronix.c @@ -82,6 +82,9 @@ static const struct flash_info macronix_nor_parts[] = { { "mx25u51245g", INFO(0xc2253a, 0, 64 * 1024, 1024) NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) FIXUP_FLAGS(SPI_NOR_4B_OPCODES) }, + { "mx25uw51245g", INFOB(0xc2813a, 0, 0, 0, 4) + PARSE_SFDP + FLAGS(SPI_NOR_RWW) }, { "mx25v8035f", INFO(0xc22314, 0, 64 * 1024, 16) NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
Describe this new part and provide the RWW flag for it. There is no public datasheet, but here are the sfdp tables plus base testing to show it works. $ cat /sys/bus/spi/devices/spi0.0/spi-nor/partname mx25uw51245g $ cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id c2813a $ cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer macronix $ xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp 53464450080104fd00070114400000ff8701011c900000ff0a0001080001 00ff05000105200100ff84000102340100ff0000000000000000ffffffff ffffffffe5208affffffff1f00ff00ff00ff00ffeeffffffffff00ffffff 00ff0c2010d800ff00ff87790100821200e27704674630b030b0f4bdd55c 000000ff101000200000000000007ca14800000000008888000000000000 00400fd1fff30fd1fff300050090000500b1002b0095002b0096727103b8 727103b80000000090a3188200c069960000000000000000727100987271 00b8727100990000000072710098727100f872710099727100f900000000 00000000011501d0727106d8000086500000060100000000020001030002 00000000060100000000000072060002000000eec0697272717100d8f7f6 000a00001445988043060f0021dcffff $ md5sum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp 047a884cf44d9ffc2a94d3ab37b48c63 /sys/bus/spi/devices/spi0.0/spi-nor/sfdp $ dd if=/dev/urandom of=./qspi_test bs=1M count=6 6+0 records in 6+0 records out $ mtd_debug write /dev/mtd1 0 6291456 qspi_test Copied 6291456 bytes from qspi_test to address 0x00000000 in flash $ mtd_debug erase /dev/mtd1 0 6291456 Erased 6291456 bytes from address 0x00000000 in flash $ mtd_debug read /dev/mtd1 0 6291456 qspi_read Copied 6291456 bytes from address 0x00000000 in flash to qspi_read $ hexdump qspi_read 0000000 ffff ffff ffff ffff ffff ffff ffff ffff * 0600000 $ mtd_debug write /dev/mtd1 0 6291456 qspi_test Copied 6291456 bytes from qspi_test to address 0x00000000 in flash $ mtd_debug read /dev/mtd1 0 6291456 qspi_read Copied 6291456 bytes from address 0x00000000 in flash to qspi_read $ sha1sum qspi_test qspi_read d24a9523db829a0df688f34b8dc76a1383b74024 qspi_test d24a9523db829a0df688f34b8dc76a1383b74024 qspi_read Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com> --- drivers/mtd/spi-nor/macronix.c | 3 +++ 1 file changed, 3 insertions(+)