Add support for more XMC series
Subsystems (2)
PATCH 1/1 Add support for more XMC series
Add XMC XM25QH128C/XM25QH256C/XM25QU256C/XM25QH512C/XM25QU512C and set the parse_sfdp flag.
--- drivers/mtd/spi-nor/xmc.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)
drivers/mtd/spi-nor/xmc.c +16 -0
@@ -16,6 +16,22 @@ static const struct flash_info xmc_nor_parts[] = { { "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256)NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "XM25QH128C", INFO(0x204018, 0, 64 * 1024, 256) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ) }, + { "XM25QH256C", INFO(0x204019, 0, 64 * 1024, 512) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "XM25QU256C", INFO(0x204119, 0, 64 * 1024, 512) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "XM25QH512C", INFO(0x204020, 0, 64 * 1024, 1024) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "XM25QU512C", INFO(0x204120, 0, 64 * 1024, 1024) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + }; const struct spi_nor_manufacturer spi_nor_xmc = {
Signature · 6 lines
2.34.1 ______________________________________________________ Linux MTD discussion mailing list http://lists.infradead.org/mailman/listinfo/linux-mtd/
Hi,
Quoted 4 lines
Add XMC XM25QH128C/XM25QH256C/XM25QU256C/XM25QH512C/XM25QU512C and set the
parse_sfdpflag.Signed-off-by Kankan Sun <[email protected]>
NAK. You're just posting the same patch over and over again.
Please respond the the former questions and please read
https://www.kernel.org/doc/html/latest/process/submitting-patches.html
-michael
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Miquel Raynal
maintainerHello,
[email protected] wrote on Thu, 17 Aug 2023 20:46:55 +0800:
Quoted 2 lines
Add XMC XM25QH128C/XM25QH256C/XM25QU256C/XM25QH512C/XM25QU512C and set the
parse_sfdpflag.
Please look at the git history and correct the title.
Quoted 18 lines
Signed-off-by Kankan Sun <[email protected]>--- drivers/mtd/spi-nor/xmc.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)drivers/mtd/spi-nor/xmc.c +5
-0@@ -16,6 +16,22 @@ static const struct flash_info xmc_nor_parts[] = { { "XM25QH128A", INFO(0x207018, 0, 64 * 1024, 256)NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ) }, + { "XM25QH128C", INFO(0x204018, 0, 64 * 1024, 256) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ) }, + { "XM25QH256C", INFO(0x204019, 0, 64 * 1024, 512) + NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
drivers/mtd/spi-nor/xmc.c static const struct flash_info xmc_nor_parts[] = { · line 33
Quoted 10 lines
drivers/mtd/spi-nor/xmc.c +10
-0+ SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "XM25QU256C", INFO(0x204119, 0, 64 * 1024, 512) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "XM25QH512C", INFO(0x204020, 0, 64 * 1024, 1024) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) }, + { "XM25QU512C", INFO(0x204120, 0, 64 * 1024, 1024) +NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | + SPI_NOR_QUAD_READ | SPI_NOR_4B_OPCODES) },
You say you enable SFDP in the commit log but the diff shows the opposite?
drivers/mtd/spi-nor/xmc.c static const struct flash_info xmc_nor_parts[] = { · line 37
Quoted 4 lines
drivers/mtd/spi-nor/xmc.c +1
-0+ };const struct spi_nor_manufacturer spi_nor_xmc = {
Thanks,
Miquèl
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
PATCH 1/1 Add support for more XMC series
Add XMC XM25QH128C/XM25QH256C/XM25QU256C/XM25QH512C/XM25QU512C and set the parse_sfdp flag.
---
Hi Michael,
Since this is the first time I've submitted code to the Linux community, please forgive me for some of the missteps that I've made. I uploaded the incorrect patch file.
In a previous e-mail you said:
XMC parts seem to have SFDP tables and they should work out of the box
without any patches with the generic spi nor driver [1]. Therefore,
you don't need any entry at all.
I think it is related to the PARSE_SFDP flag.
The XMC flash part supports SFDP, so i don’t need to add NO_SFDP_FLAGS() macro.
drivers/mtd/spi-nor/xmc.c | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-)
drivers/mtd/spi-nor/xmc.c +13 -4
@@ -11,11 +11,20 @@static const struct flash_info xmc_nor_parts[] = {/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */ {"XM25QH64A" ,INFO (0x207017 ,0 ,64 *1024 ,128 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, {"XM25QH128A" ,INFO (0x207018 ,0 ,64 *1024 ,256 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, + {"XM25QH128C" ,INFO (0x204018 ,0 ,64 *1024 ,256 ) + PARSE_SFDP }, + {"XM25QH256C" ,INFO (0x204019 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QU256C" ,INFO (0x204119 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QH512C" ,INFO (0x204020 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + {"XM25QU512C" ,INFO (0x204120 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + };const struct spi_nor_manufacturer spi_nor_xmc = {
Signature · 1 line
2.34.1
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Hi,
Quoted 7 lines
Quoted 3 lines
XMC parts seem to have SFDP tables and they should work out of the box without any patches with the generic spi nor driver [1]. Therefore, you don't need any entry at all.
I think it is related to the
PARSE_SFDPflag. The XMC flash part supports SFDP, so i don’t needto addNO_SFDP_FLAGS()macro.
Correct. If the flash is working with PARSE_SFDP, it has SFDP and all the information of the flash_info table is pulled from the SFDP tables, except for the part name. Therefore, you don't need any entry at all. The flash should just work out of the box. Are you using the latest kernel?
-michael
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Yes, I'm using the latest kernel.
Quoted 11 lines · 在 2023年8月18日,01:10,Michael Walle <[email protected]> 写道:
Hi,
Quoted 6 lines
Quoted 3 lines
XMC parts seem to have SFDP tables and they should work out of the box without any patches with the generic spi nor driver [1]. Therefore, you don't need any entry at all.
I think it is related to the
PARSE_SFDPflag. The XMC flash part supports SFDP, so i don’t needto addNO_SFDP_FLAGS()macro.
Quoted 7 lines
Correct. If the flash is working with
PARSE_SFDP, it has SFDP and all the information of theflash_infotable is pulled from the SFDP tables, except for the part name. Therefore, you don't need any entry at all. The flash should just work out of the box. Are you using the latest kernel?-michael
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Quoted 48 lines
Hi Michael,
Since this is the first time I've submitted code to the Linux community, please forgive me for some of the missteps that I've made. I uploaded the incorrect patch file.
In a previous e-mail you said:
XMC parts seem to have SFDP tables and they should work out of the box
without any patches with the generic spi nor driver [1]. Therefore,
you don't need any entry at all.I think it is related to the
PARSE_SFDPflag.
The XMC flash part supports SFDP, so i don’t need to addNO_SFDP_FLAGS()macro.drivers/mtd/spi-nor/xmc.c| 17 +++++++++++++----1 file changed, 13 insertions(+), 4 deletions(-)drivers/mtd/spi-nor/xmc.c +13
-4@@ -11,11 +11,20 @@static const struct flash_info xmc_nor_parts[] = {/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */ {"XM25QH64A" ,INFO (0x207017 ,0 ,64 *1024 ,128 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, {"XM25QH128A" ,INFO (0x207018 ,0 ,64 *1024 ,256 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, + {"XM25QH128C" ,INFO (0x204018 ,0 ,64 *1024 ,256 ) + PARSE_SFDP }, + {"XM25QH256C" ,INFO (0x204019 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QU256C" ,INFO (0x204119 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QH512C" ,INFO (0x204020 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + {"XM25QU512C" ,INFO (0x204120 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + };const struct spi_nor_manufacturer spi_nor_xmc = {Quoted 6 lines
Correct. If the flash is working with
PARSE_SFDP, it has SFDP and all the information of theflash_infotable is pulled from the SFDP tables, except for the part name. Therefore, you don't need any entry at all. The flash should just work out of the box. Are you using the latest kernel?
Quoted 1 line
Quoted 1 line
-michael
--
Hi Michael,
According to you, does this piece of my code still need to be modified?
Thanks,
Ssunk
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Am 2023-08-29 06:56, schrieb SSunk:
Quoted 48 lines
Quoted 48 lines
Hi Michael,
Since this is the first time I've submitted code to the Linux community, please forgive me for some of the missteps that I've made. I uploaded the incorrect patch file.
In a previous e-mail you said:
XMC parts seem to have SFDP tables and they should work out of the box
without any patches with the generic spi nor driver [1]. Therefore,
you don't need any entry at all.I think it is related to the
PARSE_SFDPflag.
The XMC flash part supports SFDP, so i don’t need to addNO_SFDP_FLAGS()macro.drivers/mtd/spi-nor/xmc.c| 17 +++++++++++++----1 file changed, 13 insertions(+), 4 deletions(-)drivers/mtd/spi-nor/xmc.c +13
-4@@ -11,11 +11,20 @@static const struct flash_info xmc_nor_parts[] = {/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */ {"XM25QH64A" ,INFO (0x207017 ,0 ,64 *1024 ,128 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, {"XM25QH128A" ,INFO (0x207018 ,0 ,64 *1024 ,256 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, + {"XM25QH128C" ,INFO (0x204018 ,0 ,64 *1024 ,256 ) + PARSE_SFDP }, + {"XM25QH256C" ,INFO (0x204019 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QU256C" ,INFO (0x204119 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QH512C" ,INFO (0x204020 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + {"XM25QU512C" ,INFO (0x204120 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + };const struct spi_nor_manufacturer spi_nor_xmc = {Quoted 6 lines
Correct. If the flash is working with
PARSE_SFDP, it has SFDP and all the information of theflash_infotable is pulled from the SFDP tables, except for the part name. Therefore, you don't need any entry at all. The flash should just work out of the box. Are you using the latest kernel?
Quoted 5 lines
Quoted 1 line
Quoted 1 line
-michael
--
Hi Michael,According to you, does this piece of my code still need to be modified?
You don't need it at all. The flash will work as is - that is without that piece of code.
-michael
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Quoted 54 lines
Quoted 54 lines
Quoted 50 lines
Hi Michael,
Since this is the first time I've submitted code to the Linux community, please forgive me for some of the missteps that I've made. I uploaded the incorrect patch file.
In a previous e-mail you said:
XMC parts seem to have SFDP tables and they should work out of the box without any patches with the generic spi nor driver [1]. Therefore, you don't need any entry at all.I think it is related to the
PARSE_SFDPflag. The XMC flash part supports SFDP, so i don’t need to addNO_SFDP_FLAGS()macro.drivers/mtd/spi-nor/xmc.c| 17 +++++++++++++----1 file changed, 13 insertions(+), 4 deletions(-)drivers/mtd/spi-nor/xmc.c +13
-4@@ -11,11 +11,20 @@static const struct flash_info xmc_nor_parts[] = {/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */ {"XM25QH64A" ,INFO (0x207017 ,0 ,64 *1024 ,128 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, {"XM25QH128A" ,INFO (0x207018 ,0 ,64 *1024 ,256 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, + {"XM25QH128C" ,INFO (0x204018 ,0 ,64 *1024 ,256 ) + PARSE_SFDP }, + {"XM25QH256C" ,INFO (0x204019 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QU256C" ,INFO (0x204119 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QH512C" ,INFO (0x204020 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + {"XM25QU512C" ,INFO (0x204120 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + };const struct spi_nor_manufacturer spi_nor_xmc = {Quoted 6 lines
Correct. If the flash is working with
PARSE_SFDP, it has SFDP and all the information of theflash_infotable is pulled from the SFDP tables, except for the part name. Therefore, you don't need any entry at all. The flash should just work out of the box. Are you using the latest kernel?Quoted 1 line
Quoted 1 line
-michael
--
Hi Michael,
Quoted 7 lines
Quoted 1 line
According to you, does this piece of my code still need to be modified?
You don't need it at all. The flash will work as is - that is without that
piece of code.-michael
--
Hi michael,
If these entries are not added, the flash part name is unknown and our customers cannot see our flash part name on the kernel log. So,I think it's necessary to add these entries.
Thanks
Hi,
Quoted 59 lines
Quoted 59 lines
Quoted 49 lines
Quoted 49 lines
Since this is the first time I've submitted code to the Linux community, please forgive me for some of the missteps that I've made. I uploaded the incorrect patch file.
In a previous e-mail you said:
XMC parts seem to have SFDP tables and they should work out of the box without any patches with the generic spi nor driver [1]. Therefore, you don't need any entry at all.I think it is related to the
PARSE_SFDPflag. The XMC flash part supports SFDP, so i don’t need to addNO_SFDP_FLAGS()macro.drivers/mtd/spi-nor/xmc.c| 17 +++++++++++++----1 file changed, 13 insertions(+), 4 deletions(-)drivers/mtd/spi-nor/xmc.c +13
-4@@ -11,11 +11,20 @@static const struct flash_info xmc_nor_parts[] = {/* XMC (Wuhan Xinxin Semiconductor Manufacturing Corp.) */ {"XM25QH64A" ,INFO (0x207017 ,0 ,64 *1024 ,128 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, {"XM25QH128A" ,INFO (0x207018 ,0 ,64 *1024 ,256 ) -NO_SFDP_FLAGS (SECT_4K |SPI_NOR_DUAL_READ | -SPI_NOR_QUAD_READ ) }, + PARSE_SFDP }, + {"XM25QH128C" ,INFO (0x204018 ,0 ,64 *1024 ,256 ) + PARSE_SFDP }, + {"XM25QH256C" ,INFO (0x204019 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QU256C" ,INFO (0x204119 ,0 ,64 *1024 ,512 ) + PARSE_SFDP }, + {"XM25QH512C" ,INFO (0x204020 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + {"XM25QU512C" ,INFO (0x204120 ,0 ,64 *1024 ,1024 ) + PARSE_SFDP }, + };const struct spi_nor_manufacturer spi_nor_xmc = {Quoted 6 lines
Correct. If the flash is working with
PARSE_SFDP, it has SFDP and all the information of theflash_infotable is pulled from the SFDP tables, except for the part name. Therefore, you don't need any entry at all. The flash should just work out of the box. Are you using the latest kernel?Quoted 5 lines
Quoted 1 line
Quoted 1 line
-michael
--
Hi Michael,According to you, does this piece of my code still need to be modified?
You don't need it at all. The flash will work as is - that is without that
piece of code.
Quoted 7 lines
Quoted 1 line
-michael
--
Hi michael,If these entries are not added, the flash part name is unknown and our customers cannot see our flash part name on the kernel log.
So,I think it's necessary to add these entries.
They can still see the jedec id in the sysfs. We don't add entries just for the names. Sorry.
-michael