[PATCH] mtd: spi-nor: winbond: add support for W25Q512NW-IQ/IN

Jae Hyun Yoo quic_jaehyoo at quicinc.com
Wed Jul 13 14:01:00 PDT 2022


Hi Michael,

On 7/13/2022 7:32 AM, Michael Walle wrote:
> Hi,
> 
> Am 2022-07-13 16:26, schrieb Jae Hyun Yoo:
>>>> +    { "w25q512nwq", INFO(0xef6020, 0, 64 * 1024, 1024)
>>>
>>> Please use INFO(0xef6020, 0, 0, 0) and test wether it will still
>>> work correctly. We will then be able to convert it to SNOR_ID3()
>>> later.
>>
>> Tested it but it doesn't work with INFO(0xef6020, 0, 0, 0). I'll keep
>> it as is.
> 
> Can you please look into this? I'd expect this to work if the SFDP
> tables are correct because all this should come from the tables.
> You can look at /sys/kernel/debug/spi-nor/spi0.0/params and see
> what is changing there.

I tested it again but result is still the same. I can check the parsed
info like below if I use INFO(0xef6020, 0, 64 * 1024, 1024) but I can't
even check the debugfs info if I use INFO(0xef6020, 0, 0, 0) since it
doesn't boot at all. I think, this patch should go as is and the size
parsing issue could be fixed using a separate fix.

Thanks,
Jae

$ cat /sys/kernel/debug/spi-nor/spi0.0/capabilities
Supported read modes by the flash
  1S-1S-1S
   opcode        0x13
   mode cycles   0
   dummy cycles  0
  1S-1S-1S (fast read)
   opcode        0x0c
   mode cycles   0
   dummy cycles  8
  1S-1S-2S
   opcode        0x3c
   mode cycles   0
   dummy cycles  8
  1S-2S-2S
   opcode        0xbc
   mode cycles   2
   dummy cycles  2
  1S-1S-4S
   opcode        0x6c
   mode cycles   0
   dummy cycles  8
  1S-4S-4S
   opcode        0xec
   mode cycles   2
   dummy cycles  4
  4S-4S-4S
   opcode        0xec
   mode cycles   2
   dummy cycles  0

Supported page program modes by the flash
  1S-1S-1S
   opcode        0x12
  1S-1S-4S
   opcode        0x34
$ cat /sys/kernel/debug/spi-nor/spi0.0/params
name            w25q512nwq
id              ef 60 20
size            64.0 MiB
write size      1
page size       256
address width   4
flags           4B_OPCODES | HAS_4BAIT | HAS_16BIT_SR | SOFT_RESET

opcodes
  read           0x6c
   dummy cycles  8
  erase          0xdc
  program        0x12
  8D extension   none

protocols
  read           1S-1S-4S
  write          1S-1S-1S
  register       1S-1S-1S

erase commands
  21 (4.00 KiB) [1]
  dc (64.0 KiB) [3]
  c7 (64.0 MiB)

sector map
  region (in hex)   | erase mask | flags
  ------------------+------------+----------
  00000000-03ffffff |     [ 123] |

> Thanks,
> -michael



More information about the linux-mtd mailing list