[PATCH v7 0/3] mtd: spi-nor: Add support for Cypress s25hl-t/s25hs-t

Tudor.Ambarus at microchip.com Tudor.Ambarus at microchip.com
Fri Nov 19 01:09:11 PST 2021


On 11/17/21 11:23 AM, Takahiro Kuwano wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Hello,
> 
> Any feedback on this series of patches?

Hi, Takahiro,

We're in the process of fixing how the flash_info flags are used.
We already have an agreement on how things are going to look like,
I just need a bit of time to submit a new version of
https://lore.kernel.org/linux-mtd/20211029172633.886453-1-tudor.ambarus@microchip.com/

Until we pave the way on how to handle the flags, we don't accept
new flash additions, otherwise the flash_info entries will soon
become a maintenance burden. I'll soon finish the work, I won't
stall you much longer.

Cheers,
ta

> 
> On 7/19/2021 5:03 PM, tkuw584924 at gmail.com wrote:
>> From: Takahiro Kuwano <Takahiro.Kuwano at infineon.com>
>>
>> The S25HL-T/S25HS-T family is the Cypress Semper Flash with Quad SPI.
>>
>> The summary datasheets can be found in the following links.
>> https://www.cypress.com/file/424146/download (256Mb/512Mb/1Gb, single die)
>>
>> The full version can be found in the following links (registration
>> required).
>> https://community.cypress.com/t5/Semper-Flash-Access-Program/Datasheet-Semper-Flash-with-Quad-SPI/ta-p/260789?attachment-id=19522
>>
>> Tested on Xilinx Zynq-7000 FPGA board.
>>
>> Device ID and SFDP dumps:
>> ------------------------------------------------------------
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/partname
>> s25hl512t
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id
>> 342a1a0f0390
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer
>> spansion
>> zynq> xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 53464450080103ff00000114000100ff84000102500100ff81000116c801
>> 00ff8700011c580100ffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffe720faffffffff1f48eb086b00ff
>> 88bbfeffffffffff00ffffff48eb0c2000ff00ff12d823faff8b82e7ffe3
>> ec031c608a857a75f766805c8cd6ddfff938f8a1000000000000bc000000
>> 0000f7f5ffff7b920ffe21ffffdc0000800000000000c0ffc3ebc8ffe3eb
>> 00650090060500a10065009600650095716503d0716503d000000000b02e
>> 000088a489aa716503967165039600000000000000000000000000000000
>> 000000000000000000000000000000000000000000000000716505d57165
>> 05d50000a015fc65ff0804008000fc65ff4002008000fd65ff0402008000
>> fe0002fff1ff0100f8ff0100f8fffb03fe0302fff8fffb03f8ff0100f1ff
>> 0100fe0104fff1ff0000f8ff0200f8fff703f8ff0200f1ff0000ff0400ff
>> f8ffff03
>> zynq> md5sum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 8a0aa90112e154ae3a797df2c211ef61  /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> ------------------------------------------------------------
>>
>> ------------------------------------------------------------
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/partname
>> s25hl01gt
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id
>> 342a1b0f0390
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer
>> spansion
>> zynq> xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 53464450080103ff00000114000100ff84000102500100ff81000116c801
>> 00ff8700011c580100ffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffe720faffffffff3f48eb086b00ff
>> 88bbfeffffffffff00ffffff48eb0c2000ff00ff12d823faff8b82e7ffe6
>> ec031c608a857a75f766805c8cd6ddfff938f8a1000000000000bc000000
>> 0000f7f5ffff7b920ffe21ffffdc0000800000000000c0ffc3ebc8ffe3eb
>> 00650090060500a10065009600650095716503d0716503d000000000b02e
>> 000088a489aa716503967165039600000000000000000000000000000000
>> 000000000000000000000000000000000000000000000000716505d57165
>> 05d50000a015fc65ff0804008000fc65ff4002008000fd65ff0402008000
>> fe0002fff1ff0100f8ff0100f8fffb07fe0302fff8fffb07f8ff0100f1ff
>> 0100fe0104fff1ff0000f8ff0200f8fff707f8ff0200f1ff0000ff0400ff
>> f8ffff07
>> zynq> md5sum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 1ad5a0d7d7e0e656986c1e678c416a7e  /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> ------------------------------------------------------------
>>
>> ------------------------------------------------------------
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/partname
>> s25hs512t
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id
>> 342b1a0f0390
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer
>> spansion
>> zynq> xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 53464450080103ff00000114000100ff84000102500100ff81000116c801
>> 00ff8700011c580100ffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffe720faffffffff1f48eb086b00ff
>> 88bbfeffffffffff00ffffff48eb0c2000ff00ff12d823faff8b91e8ffe3
>> ec031c608a857a75f766805c84d6ddfff938f8a100000000000080000000
>> 0000f7f5ffff7b920ffe20ffffd80000800000000000c0ffc3ebc8ffe3eb
>> 00650090060500a10065009600650095716503d0716503d000000000b02e
>> 000088a489aa716503967165039600000000000000000000000000000000
>> 000000000000000000000000000000000000000000000000716505d57165
>> 05d50000ee72fc65ff0804008000fc65ff4002008000fd65ff0402008000
>> fe0002fff1ff0100f8ff0100f8fffb03fe0302fff8fffb03f8ff0100f1ff
>> 0100fe0104fff1ff0100f8ff0200f8fff703f8ff0200f1ff0100ff0400ff
>> f8ffff03
>> zynq> md5sum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> f17d9e784602187a0933edec3688e30f  /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> ------------------------------------------------------------
>>
>> ------------------------------------------------------------
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/partname
>> s25hs01gt
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/jedec_id
>> 342b1b0f0390
>> zynq> cat /sys/bus/spi/devices/spi0.0/spi-nor/manufacturer
>> spansion
>> zynq> xxd -p /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 53464450080103ff00000114000100ff84000102500100ff81000116c801
>> 00ff8700011c580100ffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
>> ffffffffffffffffffffffffffffffffe720faffffffff3f48eb086b00ff
>> 88bbfeffffffffff00ffffff48eb0c2000ff00ff12d823faff8b82e7ffe6
>> ec031c608a857a75f766805c8cd6ddfff938f8a1000000000000bc000000
>> 0000f7f5ffff7b920ffe21ffffdc0000800000000000c0ffc3ebc8ffe3eb
>> 00650090060500a10065009600650095716503d0716503d000000000b02e
>> 000088a489aa716503967165039600000000000000000000000000000000
>> 000000000000000000000000000000000000000000000000716505d57165
>> 05d50000a015fc65ff0804008000fc65ff4002008000fd65ff0402008000
>> fe0002fff1ff0100f8ff0100f8fffb07fe0302fff8fffb07f8ff0100f1ff
>> 0100fe0104fff1ff0000f8ff0200f8fff707f8ff0200f1ff0000ff0400ff
>> f8ffff07
>> zynq> md5sum /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> 1ad5a0d7d7e0e656986c1e678c416a7e  /sys/bus/spi/devices/spi0.0/spi-nor/sfdp
>> ------------------------------------------------------------
>>
>>
>> ---
>> Changes in v7:
>>   - Some changes were missing in v6 patch. Fix it
>>
>> Changes in v6:
>>   - Remove 2Gb dual die package parts and related changes to split mulit
>>     die package support into another series of patches
>>
>> Changes in v5:
>>   - Fix 'if (ret == 1)' to 'if (ret < 0)' in spansion_read_any_reg()
>>   - Add NO_CHIP_ERASE flag to S25HL02GT and S25HS02GT
>>
>> Changes in v4:
>>   - Reword 'legacy' to 'default'
>>   - Rename spi_nor_read() to spi_nor_default_ready()
>>   - Fix dummy cycle calculation in spansion_read_any_reg()
>>   - Modify comment for spansion_write_any_reg()
>>   - Merge block comments about SMPT in s25hx_t_post_sfdp_fixups()
>>   - Remove USE_CLSR flags from S25HL02GT and S25HS02GT
>>
>> Changes in v3:
>>   - Split into multiple patches
>>   - Remove S25HL256T and S25HS256T
>>   - Add S25HL02GT and S25HS02GT
>>   - Add support for multi-die package parts support
>>   - Cleanup Read/Write Any Register implementation
>>   - Remove erase_map fix for top/split sector layout
>>   - Set ECC data unit size (16B) to writesize
>>
>> Changes in v2:
>>   - Remove SPI_NOR_SKIP_SFDP flag and clean up related fixups
>>   - Check CFR3V[4] to determine page_size instead of force 512B
>>   - Depend on the patchset below to support non-uniform sector layout
>>     https://lore.kernel.org/linux-mtd/cover.1601612872.git.Takahiro.Kuwano@infineon.com/
>>
>> Takahiro Kuwano (3):
>>   mtd: spi-nor: spansion: Add support for Read/Write Any Register
>>   mtd: spi-nor: spansion: Add support for volatile QE bit
>>   mtd: spi-nor: spansion: Add s25hl-t/s25hs-t IDs and fixups
>>
>>  drivers/mtd/spi-nor/spansion.c | 291 +++++++++++++++++++++++++++++++++
>>  1 file changed, 291 insertions(+)
>>



More information about the linux-mtd mailing list