[U-Boot] [PATCH RFT v2 1/3] spi-nor: spi-nor-ids: Disable SPI_NOR_4B_OPCODES for n25q512* and n25q256*
Vignesh Raghavendra
vigneshr at ti.com
Wed Oct 9 10:58:53 UTC 2019
Hi Simon,
On 01/10/19 11:58 AM, Simon Goldschmidt wrote:
> On Tue, Oct 1, 2019 at 6:58 AM <Tudor.Ambarus at microchip.com> wrote:
>>
>>
>>
>> On 09/27/2019 07:43 AM, Vignesh Raghavendra wrote:
>>> External E-Mail
>>>
>>>
>>> Older variants of n25q256* and n25q512* do not support 4 Byte stateless
>>
>> nit: drop "older variants of". Looks like the latest datasheet still require
>> ENTER and EXIT 4-byte address mode commands.
>
> Hm, the datasheet I'm looking at [1] lists 4-byte opcodes. I don't know if all
> required types are supported, but I would think so.
>
Note 14 at the end of Table 18: Command Set of Datasheet[1] that you
pointed out says 4-BYTE PAGE PROGRAM(0x12) is only supported only on
specific variants of n25q* flashes.
So best bet is to disable 4 Byte opcodes for all variants of n25q unless
we find a way to detect flashes that actually support those opcodes at
runtime.
Regards
Vignesh
> Reviewed-by: Simon Goldschmidt <simon.k.r.goldschmidt at gmail.com>
>
> [1] https://www.micron.com/-/media/client/global/documents/products/data-sheet/nor-flash/serial-nor/n25q/n25q_256mb_3v.pdf
>
> Regards,
> Simon
>
>>
>>> addressing opcodes. Therefore drop SPI_NOR_4B_OPCODES flag from these
>>> entries.
>>>
>>> Signed-off-by: Vignesh Raghavendra <vigneshr at ti.com>
>>
>> Reviewed-by: Tudor Ambarus <tudor.ambarus at microchip.com>
>>
>>> ---
>>> drivers/mtd/spi/spi-nor-ids.c | 8 ++++----
>>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/drivers/mtd/spi/spi-nor-ids.c b/drivers/mtd/spi/spi-nor-ids.c
>>> index df0643ed1d47..bb67661b40d2 100644
>>> --- a/drivers/mtd/spi/spi-nor-ids.c
>>> +++ b/drivers/mtd/spi/spi-nor-ids.c
>>> @@ -161,12 +161,12 @@ const struct flash_info spi_nor_ids[] = {
>>> { INFO("n25q064a", 0x20bb17, 0, 64 * 1024, 128, SECT_4K | SPI_NOR_QUAD_READ) },
>>> { INFO("n25q128a11", 0x20bb18, 0, 64 * 1024, 256, SECT_4K | SPI_NOR_QUAD_READ) },
>>> { INFO("n25q128a13", 0x20ba18, 0, 64 * 1024, 256, SECT_4K | SPI_NOR_QUAD_READ) },
>>> - { INFO("n25q256a", 0x20ba19, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
>>> - { INFO("n25q256ax1", 0x20bb19, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
>>> + { INFO("n25q256a", 0x20ba19, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) },
>>> + { INFO("n25q256ax1", 0x20bb19, 0, 64 * 1024, 512, SECT_4K | SPI_NOR_QUAD_READ) },
>>> { INFO6("mt25qu512a", 0x20bb20, 0x104400, 64 * 1024, 1024,
>>> SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
>>> - { INFO("n25q512a", 0x20bb20, 0, 64 * 1024, 1024, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
>>> - { INFO("n25q512ax3", 0x20ba20, 0, 64 * 1024, 1024, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
>>> + { INFO("n25q512a", 0x20bb20, 0, 64 * 1024, 1024, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ) },
>>> + { INFO("n25q512ax3", 0x20ba20, 0, 64 * 1024, 1024, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ) },
>>> { INFO("n25q00", 0x20ba21, 0, 64 * 1024, 2048, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ | NO_CHIP_ERASE) },
>>> { INFO("n25q00a", 0x20bb21, 0, 64 * 1024, 2048, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ | NO_CHIP_ERASE) },
>>> { INFO("mt25qu02g", 0x20bb22, 0, 64 * 1024, 4096, SECT_4K | USE_FSR | SPI_NOR_QUAD_READ | NO_CHIP_ERASE) },
>>>
--
Regards
Vignesh
More information about the U-Boot
mailing list