All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-09  4:44 ` Dhananjay Phadke
  0 siblings, 0 replies; 13+ messages in thread
From: Dhananjay Phadke @ 2022-01-09  4:44 UTC (permalink / raw)
  To: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel
  Cc: Dhananjay Phadke

Add support for Winbond 64MB W25Q512JV-DTR NOR flash.
Use PARSE_SFDP flag to init parameters during SFDP parsing.

Signed-off-by: Dhananjay Phadke <dphadke@linux.microsoft.com>
---
 drivers/mtd/spi-nor/winbond.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
index 675f32c136b3..ebc826e21f76 100644
--- a/drivers/mtd/spi-nor/winbond.c
+++ b/drivers/mtd/spi-nor/winbond.c
@@ -118,6 +118,8 @@ static const struct flash_info winbond_parts[] = {
 		.fixups = &w25q256_fixups },
 	{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
 		PARSE_SFDP },
+	{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
+		PARSE_SFDP },
 	{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
 			      SPI_NOR_QUAD_READ) },
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-09  4:44 ` Dhananjay Phadke
  0 siblings, 0 replies; 13+ messages in thread
From: Dhananjay Phadke @ 2022-01-09  4:44 UTC (permalink / raw)
  To: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel
  Cc: Dhananjay Phadke

Add support for Winbond 64MB W25Q512JV-DTR NOR flash.
Use PARSE_SFDP flag to init parameters during SFDP parsing.

Signed-off-by: Dhananjay Phadke <dphadke@linux.microsoft.com>
---
 drivers/mtd/spi-nor/winbond.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
index 675f32c136b3..ebc826e21f76 100644
--- a/drivers/mtd/spi-nor/winbond.c
+++ b/drivers/mtd/spi-nor/winbond.c
@@ -118,6 +118,8 @@ static const struct flash_info winbond_parts[] = {
 		.fixups = &w25q256_fixups },
 	{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
 		PARSE_SFDP },
+	{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
+		PARSE_SFDP },
 	{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
 		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
 			      SPI_NOR_QUAD_READ) },
-- 
2.25.1


______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
  2022-01-09  4:44 ` Dhananjay Phadke
  (?)
@ 2022-01-10  0:24 ` kernel test robot
  -1 siblings, 0 replies; 13+ messages in thread
From: kernel test robot @ 2022-01-10  0:24 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 6636 bytes --]

Hi Dhananjay,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on mtd/spi-nor/next]
[also build test ERROR on next-20220107]
[cannot apply to v5.16]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Dhananjay-Phadke/mtd-spi-nor-Add-support-for-w25q512jvm/20220109-124549
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git spi-nor/next
config: x86_64-randconfig-r002-20220109 (https://download.01.org/0day-ci/archive/20220110/202201100854.LUfUtNBy-lkp(a)intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
        # https://github.com/0day-ci/linux/commit/6fdf5ef11f8f2e8bbfba403dcdfc299d119c51ee
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Dhananjay-Phadke/mtd-spi-nor-Add-support-for-w25q512jvm/20220109-124549
        git checkout 6fdf5ef11f8f2e8bbfba403dcdfc299d119c51ee
        # save the config file to linux build tree
        mkdir build_dir
        make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> drivers/mtd/spi-nor/winbond.c:121:52: error: expected expression before ',' token
     121 |  { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
         |                                                    ^


vim +121 drivers/mtd/spi-nor/winbond.c

    34	
    35	static const struct flash_info winbond_parts[] = {
    36		/* Winbond -- w25x "blocks" are 64K, "sectors" are 4KiB */
    37		{ "w25x05", INFO(0xef3010, 0, 64 * 1024,  1)
    38			NO_SFDP_FLAGS(SECT_4K) },
    39		{ "w25x10", INFO(0xef3011, 0, 64 * 1024,  2)
    40			NO_SFDP_FLAGS(SECT_4K) },
    41		{ "w25x20", INFO(0xef3012, 0, 64 * 1024,  4)
    42			NO_SFDP_FLAGS(SECT_4K) },
    43		{ "w25x40", INFO(0xef3013, 0, 64 * 1024,  8)
    44			NO_SFDP_FLAGS(SECT_4K) },
    45		{ "w25x80", INFO(0xef3014, 0, 64 * 1024,  16)
    46			NO_SFDP_FLAGS(SECT_4K) },
    47		{ "w25x16", INFO(0xef3015, 0, 64 * 1024,  32)
    48			NO_SFDP_FLAGS(SECT_4K) },
    49		{ "w25q16dw", INFO(0xef6015, 0, 64 * 1024,  32)
    50			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    51			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    52				      SPI_NOR_QUAD_READ) },
    53		{ "w25x32", INFO(0xef3016, 0, 64 * 1024,  64)
    54			NO_SFDP_FLAGS(SECT_4K) },
    55		{ "w25q16jv-im/jm", INFO(0xef7015, 0, 64 * 1024,  32)
    56			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    57			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    58				      SPI_NOR_QUAD_READ) },
    59		{ "w25q20cl", INFO(0xef4012, 0, 64 * 1024,  4)
    60			NO_SFDP_FLAGS(SECT_4K) },
    61		{ "w25q20bw", INFO(0xef5012, 0, 64 * 1024,  4)
    62			NO_SFDP_FLAGS(SECT_4K) },
    63		{ "w25q20ew", INFO(0xef6012, 0, 64 * 1024,  4)
    64			NO_SFDP_FLAGS(SECT_4K) },
    65		{ "w25q32", INFO(0xef4016, 0, 64 * 1024,  64)
    66			NO_SFDP_FLAGS(SECT_4K) },
    67		{ "w25q32dw", INFO(0xef6016, 0, 64 * 1024,  64)
    68			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    69			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
    70			OTP_INFO(256, 3, 0x1000, 0x1000) },
    71		{ "w25q32jv", INFO(0xef7016, 0, 64 * 1024,  64)
    72			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    73			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    74				      SPI_NOR_QUAD_READ) },
    75		{ "w25q32jwm", INFO(0xef8016, 0, 64 * 1024,  64)
    76			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    77			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
    78			OTP_INFO(256, 3, 0x1000, 0x1000) },
    79		{ "w25q64jwm", INFO(0xef8017, 0, 64 * 1024, 128)
    80			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    81			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    82				      SPI_NOR_QUAD_READ) },
    83		{ "w25q128jwm", INFO(0xef8018, 0, 64 * 1024, 256)
    84			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    85			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    86				      SPI_NOR_QUAD_READ) },
    87		{ "w25q256jwm", INFO(0xef8019, 0, 64 * 1024, 512)
    88			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    89			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    90				      SPI_NOR_QUAD_READ) },
    91		{ "w25x64", INFO(0xef3017, 0, 64 * 1024, 128)
    92			NO_SFDP_FLAGS(SECT_4K) },
    93		{ "w25q64", INFO(0xef4017, 0, 64 * 1024, 128)
    94			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    95				      SPI_NOR_QUAD_READ) },
    96		{ "w25q64dw", INFO(0xef6017, 0, 64 * 1024, 128)
    97			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    98			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    99				      SPI_NOR_QUAD_READ) },
   100		{ "w25q64jvm", INFO(0xef7017, 0, 64 * 1024, 128)
   101			NO_SFDP_FLAGS(SECT_4K) },
   102		{ "w25q128fw", INFO(0xef6018, 0, 64 * 1024, 256)
   103			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
   104			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   105				      SPI_NOR_QUAD_READ) },
   106		{ "w25q128jv", INFO(0xef7018, 0, 64 * 1024, 256)
   107			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
   108			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   109				      SPI_NOR_QUAD_READ) },
   110		{ "w25q80", INFO(0xef5014, 0, 64 * 1024,  16)
   111			NO_SFDP_FLAGS(SECT_4K) },
   112		{ "w25q80bl", INFO(0xef4014, 0, 64 * 1024,  16)
   113			NO_SFDP_FLAGS(SECT_4K) },
   114		{ "w25q128", INFO(0xef4018, 0, 64 * 1024, 256)
   115			NO_SFDP_FLAGS(SECT_4K) },
   116		{ "w25q256", INFO(0xef4019, 0, 64 * 1024, 512)
   117			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
   118			.fixups = &w25q256_fixups },
   119		{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
   120			PARSE_SFDP },
 > 121		{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
   122			PARSE_SFDP },
   123		{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
   124			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   125				      SPI_NOR_QUAD_READ) },
   126		{ "w25m512jv", INFO(0xef7119, 0, 64 * 1024, 1024)
   127			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_QUAD_READ |
   128				      SPI_NOR_DUAL_READ) },
   129		{ "w25q512jvq", INFO(0xef4020, 0, 64 * 1024, 1024)
   130			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   131				      SPI_NOR_QUAD_READ) },
   132	};
   133	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
  2022-01-09  4:44 ` Dhananjay Phadke
@ 2022-01-10  1:45   ` kernel test robot
  -1 siblings, 0 replies; 13+ messages in thread
From: kernel test robot @ 2022-01-10  1:45 UTC (permalink / raw)
  To: Dhananjay Phadke; +Cc: llvm, kbuild-all

Hi Dhananjay,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on mtd/spi-nor/next]
[also build test ERROR on next-20220107]
[cannot apply to v5.16]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Dhananjay-Phadke/mtd-spi-nor-Add-support-for-w25q512jvm/20220109-124549
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git spi-nor/next
config: mips-bmips_stb_defconfig (https://download.01.org/0day-ci/archive/20220110/202201100902.4EN1M0wM-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f3a344d2125fa37e59bae1b0874442c650a19607)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install mips cross compiling tool for clang build
        # apt-get install binutils-mips-linux-gnu
        # https://github.com/0day-ci/linux/commit/6fdf5ef11f8f2e8bbfba403dcdfc299d119c51ee
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Dhananjay-Phadke/mtd-spi-nor-Add-support-for-w25q512jvm/20220109-124549
        git checkout 6fdf5ef11f8f2e8bbfba403dcdfc299d119c51ee
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> drivers/mtd/spi-nor/winbond.c:121:52: error: expected expression
           { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
                                                             ^
>> drivers/mtd/spi-nor/winbond.c:193:12: error: invalid application of 'sizeof' to an incomplete type 'const struct flash_info[]'
           .nparts = ARRAY_SIZE(winbond_parts),
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/kernel.h:46:32: note: expanded from macro 'ARRAY_SIZE'
   #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                  ^~~~~
   2 errors generated.


vim +121 drivers/mtd/spi-nor/winbond.c

    34	
    35	static const struct flash_info winbond_parts[] = {
    36		/* Winbond -- w25x "blocks" are 64K, "sectors" are 4KiB */
    37		{ "w25x05", INFO(0xef3010, 0, 64 * 1024,  1)
    38			NO_SFDP_FLAGS(SECT_4K) },
    39		{ "w25x10", INFO(0xef3011, 0, 64 * 1024,  2)
    40			NO_SFDP_FLAGS(SECT_4K) },
    41		{ "w25x20", INFO(0xef3012, 0, 64 * 1024,  4)
    42			NO_SFDP_FLAGS(SECT_4K) },
    43		{ "w25x40", INFO(0xef3013, 0, 64 * 1024,  8)
    44			NO_SFDP_FLAGS(SECT_4K) },
    45		{ "w25x80", INFO(0xef3014, 0, 64 * 1024,  16)
    46			NO_SFDP_FLAGS(SECT_4K) },
    47		{ "w25x16", INFO(0xef3015, 0, 64 * 1024,  32)
    48			NO_SFDP_FLAGS(SECT_4K) },
    49		{ "w25q16dw", INFO(0xef6015, 0, 64 * 1024,  32)
    50			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    51			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    52				      SPI_NOR_QUAD_READ) },
    53		{ "w25x32", INFO(0xef3016, 0, 64 * 1024,  64)
    54			NO_SFDP_FLAGS(SECT_4K) },
    55		{ "w25q16jv-im/jm", INFO(0xef7015, 0, 64 * 1024,  32)
    56			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    57			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    58				      SPI_NOR_QUAD_READ) },
    59		{ "w25q20cl", INFO(0xef4012, 0, 64 * 1024,  4)
    60			NO_SFDP_FLAGS(SECT_4K) },
    61		{ "w25q20bw", INFO(0xef5012, 0, 64 * 1024,  4)
    62			NO_SFDP_FLAGS(SECT_4K) },
    63		{ "w25q20ew", INFO(0xef6012, 0, 64 * 1024,  4)
    64			NO_SFDP_FLAGS(SECT_4K) },
    65		{ "w25q32", INFO(0xef4016, 0, 64 * 1024,  64)
    66			NO_SFDP_FLAGS(SECT_4K) },
    67		{ "w25q32dw", INFO(0xef6016, 0, 64 * 1024,  64)
    68			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    69			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
    70			OTP_INFO(256, 3, 0x1000, 0x1000) },
    71		{ "w25q32jv", INFO(0xef7016, 0, 64 * 1024,  64)
    72			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    73			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    74				      SPI_NOR_QUAD_READ) },
    75		{ "w25q32jwm", INFO(0xef8016, 0, 64 * 1024,  64)
    76			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    77			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
    78			OTP_INFO(256, 3, 0x1000, 0x1000) },
    79		{ "w25q64jwm", INFO(0xef8017, 0, 64 * 1024, 128)
    80			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    81			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    82				      SPI_NOR_QUAD_READ) },
    83		{ "w25q128jwm", INFO(0xef8018, 0, 64 * 1024, 256)
    84			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    85			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    86				      SPI_NOR_QUAD_READ) },
    87		{ "w25q256jwm", INFO(0xef8019, 0, 64 * 1024, 512)
    88			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    89			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    90				      SPI_NOR_QUAD_READ) },
    91		{ "w25x64", INFO(0xef3017, 0, 64 * 1024, 128)
    92			NO_SFDP_FLAGS(SECT_4K) },
    93		{ "w25q64", INFO(0xef4017, 0, 64 * 1024, 128)
    94			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    95				      SPI_NOR_QUAD_READ) },
    96		{ "w25q64dw", INFO(0xef6017, 0, 64 * 1024, 128)
    97			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    98			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    99				      SPI_NOR_QUAD_READ) },
   100		{ "w25q64jvm", INFO(0xef7017, 0, 64 * 1024, 128)
   101			NO_SFDP_FLAGS(SECT_4K) },
   102		{ "w25q128fw", INFO(0xef6018, 0, 64 * 1024, 256)
   103			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
   104			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   105				      SPI_NOR_QUAD_READ) },
   106		{ "w25q128jv", INFO(0xef7018, 0, 64 * 1024, 256)
   107			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
   108			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   109				      SPI_NOR_QUAD_READ) },
   110		{ "w25q80", INFO(0xef5014, 0, 64 * 1024,  16)
   111			NO_SFDP_FLAGS(SECT_4K) },
   112		{ "w25q80bl", INFO(0xef4014, 0, 64 * 1024,  16)
   113			NO_SFDP_FLAGS(SECT_4K) },
   114		{ "w25q128", INFO(0xef4018, 0, 64 * 1024, 256)
   115			NO_SFDP_FLAGS(SECT_4K) },
   116		{ "w25q256", INFO(0xef4019, 0, 64 * 1024, 512)
   117			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
   118			.fixups = &w25q256_fixups },
   119		{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
   120			PARSE_SFDP },
 > 121		{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
   122			PARSE_SFDP },
   123		{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
   124			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   125				      SPI_NOR_QUAD_READ) },
   126		{ "w25m512jv", INFO(0xef7119, 0, 64 * 1024, 1024)
   127			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_QUAD_READ |
   128				      SPI_NOR_DUAL_READ) },
   129		{ "w25q512jvq", INFO(0xef4020, 0, 64 * 1024, 1024)
   130			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   131				      SPI_NOR_QUAD_READ) },
   132	};
   133	
   134	/**
   135	 * winbond_set_4byte_addr_mode() - Set 4-byte address mode for Winbond flashes.
   136	 * @nor:	pointer to 'struct spi_nor'.
   137	 * @enable:	true to enter the 4-byte address mode, false to exit the 4-byte
   138	 *		address mode.
   139	 *
   140	 * Return: 0 on success, -errno otherwise.
   141	 */
   142	static int winbond_set_4byte_addr_mode(struct spi_nor *nor, bool enable)
   143	{
   144		int ret;
   145	
   146		ret = spi_nor_set_4byte_addr_mode(nor, enable);
   147		if (ret || enable)
   148			return ret;
   149	
   150		/*
   151		 * On Winbond W25Q256FV, leaving 4byte mode causes the Extended Address
   152		 * Register to be set to 1, so all 3-byte-address reads come from the
   153		 * second 16M. We must clear the register to enable normal behavior.
   154		 */
   155		ret = spi_nor_write_enable(nor);
   156		if (ret)
   157			return ret;
   158	
   159		ret = spi_nor_write_ear(nor, 0);
   160		if (ret)
   161			return ret;
   162	
   163		return spi_nor_write_disable(nor);
   164	}
   165	
   166	static const struct spi_nor_otp_ops winbond_otp_ops = {
   167		.read = spi_nor_otp_read_secr,
   168		.write = spi_nor_otp_write_secr,
   169		.erase = spi_nor_otp_erase_secr,
   170		.lock = spi_nor_otp_lock_sr2,
   171		.is_locked = spi_nor_otp_is_locked_sr2,
   172	};
   173	
   174	static void winbond_default_init(struct spi_nor *nor)
   175	{
   176		nor->params->set_4byte_addr_mode = winbond_set_4byte_addr_mode;
   177	}
   178	
   179	static void winbond_late_init(struct spi_nor *nor)
   180	{
   181		if (nor->params->otp.org->n_regions)
   182			nor->params->otp.ops = &winbond_otp_ops;
   183	}
   184	
   185	static const struct spi_nor_fixups winbond_fixups = {
   186		.default_init = winbond_default_init,
   187		.late_init = winbond_late_init,
   188	};
   189	
   190	const struct spi_nor_manufacturer spi_nor_winbond = {
   191		.name = "winbond",
   192		.parts = winbond_parts,
 > 193		.nparts = ARRAY_SIZE(winbond_parts),

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-10  1:45   ` kernel test robot
  0 siblings, 0 replies; 13+ messages in thread
From: kernel test robot @ 2022-01-10  1:45 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 9493 bytes --]

Hi Dhananjay,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on mtd/spi-nor/next]
[also build test ERROR on next-20220107]
[cannot apply to v5.16]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Dhananjay-Phadke/mtd-spi-nor-Add-support-for-w25q512jvm/20220109-124549
base:   https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git spi-nor/next
config: mips-bmips_stb_defconfig (https://download.01.org/0day-ci/archive/20220110/202201100902.4EN1M0wM-lkp(a)intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project f3a344d2125fa37e59bae1b0874442c650a19607)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install mips cross compiling tool for clang build
        # apt-get install binutils-mips-linux-gnu
        # https://github.com/0day-ci/linux/commit/6fdf5ef11f8f2e8bbfba403dcdfc299d119c51ee
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Dhananjay-Phadke/mtd-spi-nor-Add-support-for-w25q512jvm/20220109-124549
        git checkout 6fdf5ef11f8f2e8bbfba403dcdfc299d119c51ee
        # save the config file to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> drivers/mtd/spi-nor/winbond.c:121:52: error: expected expression
           { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
                                                             ^
>> drivers/mtd/spi-nor/winbond.c:193:12: error: invalid application of 'sizeof' to an incomplete type 'const struct flash_info[]'
           .nparts = ARRAY_SIZE(winbond_parts),
                     ^~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/kernel.h:46:32: note: expanded from macro 'ARRAY_SIZE'
   #define ARRAY_SIZE(arr) (sizeof(arr) / sizeof((arr)[0]) + __must_be_array(arr))
                                  ^~~~~
   2 errors generated.


vim +121 drivers/mtd/spi-nor/winbond.c

    34	
    35	static const struct flash_info winbond_parts[] = {
    36		/* Winbond -- w25x "blocks" are 64K, "sectors" are 4KiB */
    37		{ "w25x05", INFO(0xef3010, 0, 64 * 1024,  1)
    38			NO_SFDP_FLAGS(SECT_4K) },
    39		{ "w25x10", INFO(0xef3011, 0, 64 * 1024,  2)
    40			NO_SFDP_FLAGS(SECT_4K) },
    41		{ "w25x20", INFO(0xef3012, 0, 64 * 1024,  4)
    42			NO_SFDP_FLAGS(SECT_4K) },
    43		{ "w25x40", INFO(0xef3013, 0, 64 * 1024,  8)
    44			NO_SFDP_FLAGS(SECT_4K) },
    45		{ "w25x80", INFO(0xef3014, 0, 64 * 1024,  16)
    46			NO_SFDP_FLAGS(SECT_4K) },
    47		{ "w25x16", INFO(0xef3015, 0, 64 * 1024,  32)
    48			NO_SFDP_FLAGS(SECT_4K) },
    49		{ "w25q16dw", INFO(0xef6015, 0, 64 * 1024,  32)
    50			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    51			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    52				      SPI_NOR_QUAD_READ) },
    53		{ "w25x32", INFO(0xef3016, 0, 64 * 1024,  64)
    54			NO_SFDP_FLAGS(SECT_4K) },
    55		{ "w25q16jv-im/jm", INFO(0xef7015, 0, 64 * 1024,  32)
    56			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    57			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    58				      SPI_NOR_QUAD_READ) },
    59		{ "w25q20cl", INFO(0xef4012, 0, 64 * 1024,  4)
    60			NO_SFDP_FLAGS(SECT_4K) },
    61		{ "w25q20bw", INFO(0xef5012, 0, 64 * 1024,  4)
    62			NO_SFDP_FLAGS(SECT_4K) },
    63		{ "w25q20ew", INFO(0xef6012, 0, 64 * 1024,  4)
    64			NO_SFDP_FLAGS(SECT_4K) },
    65		{ "w25q32", INFO(0xef4016, 0, 64 * 1024,  64)
    66			NO_SFDP_FLAGS(SECT_4K) },
    67		{ "w25q32dw", INFO(0xef6016, 0, 64 * 1024,  64)
    68			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    69			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
    70			OTP_INFO(256, 3, 0x1000, 0x1000) },
    71		{ "w25q32jv", INFO(0xef7016, 0, 64 * 1024,  64)
    72			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    73			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    74				      SPI_NOR_QUAD_READ) },
    75		{ "w25q32jwm", INFO(0xef8016, 0, 64 * 1024,  64)
    76			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    77			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
    78			OTP_INFO(256, 3, 0x1000, 0x1000) },
    79		{ "w25q64jwm", INFO(0xef8017, 0, 64 * 1024, 128)
    80			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    81			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    82				      SPI_NOR_QUAD_READ) },
    83		{ "w25q128jwm", INFO(0xef8018, 0, 64 * 1024, 256)
    84			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    85			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    86				      SPI_NOR_QUAD_READ) },
    87		{ "w25q256jwm", INFO(0xef8019, 0, 64 * 1024, 512)
    88			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    89			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    90				      SPI_NOR_QUAD_READ) },
    91		{ "w25x64", INFO(0xef3017, 0, 64 * 1024, 128)
    92			NO_SFDP_FLAGS(SECT_4K) },
    93		{ "w25q64", INFO(0xef4017, 0, 64 * 1024, 128)
    94			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    95				      SPI_NOR_QUAD_READ) },
    96		{ "w25q64dw", INFO(0xef6017, 0, 64 * 1024, 128)
    97			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
    98			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
    99				      SPI_NOR_QUAD_READ) },
   100		{ "w25q64jvm", INFO(0xef7017, 0, 64 * 1024, 128)
   101			NO_SFDP_FLAGS(SECT_4K) },
   102		{ "w25q128fw", INFO(0xef6018, 0, 64 * 1024, 256)
   103			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
   104			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   105				      SPI_NOR_QUAD_READ) },
   106		{ "w25q128jv", INFO(0xef7018, 0, 64 * 1024, 256)
   107			FLAGS(SPI_NOR_HAS_LOCK | SPI_NOR_HAS_TB)
   108			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   109				      SPI_NOR_QUAD_READ) },
   110		{ "w25q80", INFO(0xef5014, 0, 64 * 1024,  16)
   111			NO_SFDP_FLAGS(SECT_4K) },
   112		{ "w25q80bl", INFO(0xef4014, 0, 64 * 1024,  16)
   113			NO_SFDP_FLAGS(SECT_4K) },
   114		{ "w25q128", INFO(0xef4018, 0, 64 * 1024, 256)
   115			NO_SFDP_FLAGS(SECT_4K) },
   116		{ "w25q256", INFO(0xef4019, 0, 64 * 1024, 512)
   117			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ | SPI_NOR_QUAD_READ)
   118			.fixups = &w25q256_fixups },
   119		{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
   120			PARSE_SFDP },
 > 121		{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
   122			PARSE_SFDP },
   123		{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
   124			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   125				      SPI_NOR_QUAD_READ) },
   126		{ "w25m512jv", INFO(0xef7119, 0, 64 * 1024, 1024)
   127			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_QUAD_READ |
   128				      SPI_NOR_DUAL_READ) },
   129		{ "w25q512jvq", INFO(0xef4020, 0, 64 * 1024, 1024)
   130			NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
   131				      SPI_NOR_QUAD_READ) },
   132	};
   133	
   134	/**
   135	 * winbond_set_4byte_addr_mode() - Set 4-byte address mode for Winbond flashes.
   136	 * @nor:	pointer to 'struct spi_nor'.
   137	 * @enable:	true to enter the 4-byte address mode, false to exit the 4-byte
   138	 *		address mode.
   139	 *
   140	 * Return: 0 on success, -errno otherwise.
   141	 */
   142	static int winbond_set_4byte_addr_mode(struct spi_nor *nor, bool enable)
   143	{
   144		int ret;
   145	
   146		ret = spi_nor_set_4byte_addr_mode(nor, enable);
   147		if (ret || enable)
   148			return ret;
   149	
   150		/*
   151		 * On Winbond W25Q256FV, leaving 4byte mode causes the Extended Address
   152		 * Register to be set to 1, so all 3-byte-address reads come from the
   153		 * second 16M. We must clear the register to enable normal behavior.
   154		 */
   155		ret = spi_nor_write_enable(nor);
   156		if (ret)
   157			return ret;
   158	
   159		ret = spi_nor_write_ear(nor, 0);
   160		if (ret)
   161			return ret;
   162	
   163		return spi_nor_write_disable(nor);
   164	}
   165	
   166	static const struct spi_nor_otp_ops winbond_otp_ops = {
   167		.read = spi_nor_otp_read_secr,
   168		.write = spi_nor_otp_write_secr,
   169		.erase = spi_nor_otp_erase_secr,
   170		.lock = spi_nor_otp_lock_sr2,
   171		.is_locked = spi_nor_otp_is_locked_sr2,
   172	};
   173	
   174	static void winbond_default_init(struct spi_nor *nor)
   175	{
   176		nor->params->set_4byte_addr_mode = winbond_set_4byte_addr_mode;
   177	}
   178	
   179	static void winbond_late_init(struct spi_nor *nor)
   180	{
   181		if (nor->params->otp.org->n_regions)
   182			nor->params->otp.ops = &winbond_otp_ops;
   183	}
   184	
   185	static const struct spi_nor_fixups winbond_fixups = {
   186		.default_init = winbond_default_init,
   187		.late_init = winbond_late_init,
   188	};
   189	
   190	const struct spi_nor_manufacturer spi_nor_winbond = {
   191		.name = "winbond",
   192		.parts = winbond_parts,
 > 193		.nparts = ARRAY_SIZE(winbond_parts),

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
  2022-01-09  4:44 ` Dhananjay Phadke
@ 2022-01-10  5:07   ` Pratyush Yadav
  -1 siblings, 0 replies; 13+ messages in thread
From: Pratyush Yadav @ 2022-01-10  5:07 UTC (permalink / raw)
  To: Dhananjay Phadke
  Cc: Tudor Ambarus, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

Hi Dhananjay,

On 08/01/22 08:44PM, Dhananjay Phadke wrote:
> Add support for Winbond 64MB W25Q512JV-DTR NOR flash.
> Use PARSE_SFDP flag to init parameters during SFDP parsing.
> 
> Signed-off-by: Dhananjay Phadke <dphadke@linux.microsoft.com>
> ---

You need to show the dumps of the SFDP and other flash parameters. See 
[0] for an example.

The patch looks fine to me otherwise.

[0] https://patchwork.ozlabs.org/project/linux-mtd/patch/20211209190436.401946-2-tudor.ambarus@microchip.com/

>  drivers/mtd/spi-nor/winbond.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
> index 675f32c136b3..ebc826e21f76 100644
> --- a/drivers/mtd/spi-nor/winbond.c
> +++ b/drivers/mtd/spi-nor/winbond.c
> @@ -118,6 +118,8 @@ static const struct flash_info winbond_parts[] = {
>  		.fixups = &w25q256_fixups },
>  	{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
>  		PARSE_SFDP },
> +	{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
> +		PARSE_SFDP },
>  	{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
>  		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
>  			      SPI_NOR_QUAD_READ) },
> -- 
> 2.25.1
> 

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-10  5:07   ` Pratyush Yadav
  0 siblings, 0 replies; 13+ messages in thread
From: Pratyush Yadav @ 2022-01-10  5:07 UTC (permalink / raw)
  To: Dhananjay Phadke
  Cc: Tudor Ambarus, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

Hi Dhananjay,

On 08/01/22 08:44PM, Dhananjay Phadke wrote:
> Add support for Winbond 64MB W25Q512JV-DTR NOR flash.
> Use PARSE_SFDP flag to init parameters during SFDP parsing.
> 
> Signed-off-by: Dhananjay Phadke <dphadke@linux.microsoft.com>
> ---

You need to show the dumps of the SFDP and other flash parameters. See 
[0] for an example.

The patch looks fine to me otherwise.

[0] https://patchwork.ozlabs.org/project/linux-mtd/patch/20211209190436.401946-2-tudor.ambarus@microchip.com/

>  drivers/mtd/spi-nor/winbond.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/mtd/spi-nor/winbond.c b/drivers/mtd/spi-nor/winbond.c
> index 675f32c136b3..ebc826e21f76 100644
> --- a/drivers/mtd/spi-nor/winbond.c
> +++ b/drivers/mtd/spi-nor/winbond.c
> @@ -118,6 +118,8 @@ static const struct flash_info winbond_parts[] = {
>  		.fixups = &w25q256_fixups },
>  	{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
>  		PARSE_SFDP },
> +	{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
> +		PARSE_SFDP },
>  	{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
>  		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
>  			      SPI_NOR_QUAD_READ) },
> -- 
> 2.25.1
> 

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
  2022-01-09  4:44 ` Dhananjay Phadke
@ 2022-01-10 15:10   ` Michael Walle
  -1 siblings, 0 replies; 13+ messages in thread
From: Michael Walle @ 2022-01-10 15:10 UTC (permalink / raw)
  To: Dhananjay Phadke
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

Hi,

Am 2022-01-09 05:44, schrieb Dhananjay Phadke:
> Add support for Winbond 64MB W25Q512JV-DTR NOR flash.
> Use PARSE_SFDP flag to init parameters during SFDP parsing.
> 
> Signed-off-by: Dhananjay Phadke <dphadke@linux.microsoft.com>
> ---
>  drivers/mtd/spi-nor/winbond.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/mtd/spi-nor/winbond.c 
> b/drivers/mtd/spi-nor/winbond.c
> index 675f32c136b3..ebc826e21f76 100644
> --- a/drivers/mtd/spi-nor/winbond.c
> +++ b/drivers/mtd/spi-nor/winbond.c
> @@ -118,6 +118,8 @@ static const struct flash_info winbond_parts[] = {
>  		.fixups = &w25q256_fixups },
>  	{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
>  		PARSE_SFDP },
> +	{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),

OTP_INFO(256, 3, 0x1000, 0x1000)

should enable OTP support, could you please test this using the 
flash_otp_{dump,info,erase,write} tools and add that line?

> +		PARSE_SFDP },
>  	{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
>  		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
>  			      SPI_NOR_QUAD_READ) },

-michael

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-10 15:10   ` Michael Walle
  0 siblings, 0 replies; 13+ messages in thread
From: Michael Walle @ 2022-01-10 15:10 UTC (permalink / raw)
  To: Dhananjay Phadke
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

Hi,

Am 2022-01-09 05:44, schrieb Dhananjay Phadke:
> Add support for Winbond 64MB W25Q512JV-DTR NOR flash.
> Use PARSE_SFDP flag to init parameters during SFDP parsing.
> 
> Signed-off-by: Dhananjay Phadke <dphadke@linux.microsoft.com>
> ---
>  drivers/mtd/spi-nor/winbond.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/mtd/spi-nor/winbond.c 
> b/drivers/mtd/spi-nor/winbond.c
> index 675f32c136b3..ebc826e21f76 100644
> --- a/drivers/mtd/spi-nor/winbond.c
> +++ b/drivers/mtd/spi-nor/winbond.c
> @@ -118,6 +118,8 @@ static const struct flash_info winbond_parts[] = {
>  		.fixups = &w25q256_fixups },
>  	{ "w25q256jvm", INFO(0xef7019, 0, 64 * 1024, 512)
>  		PARSE_SFDP },
> +	{ "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),

OTP_INFO(256, 3, 0x1000, 0x1000)

should enable OTP support, could you please test this using the 
flash_otp_{dump,info,erase,write} tools and add that line?

> +		PARSE_SFDP },
>  	{ "w25q256jw", INFO(0xef6019, 0, 64 * 1024, 512)
>  		NO_SFDP_FLAGS(SECT_4K | SPI_NOR_DUAL_READ |
>  			      SPI_NOR_QUAD_READ) },

-michael

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
  2022-01-10 15:10   ` Michael Walle
@ 2022-01-10 23:12     ` Dhananjay Phadke
  -1 siblings, 0 replies; 13+ messages in thread
From: Dhananjay Phadke @ 2022-01-10 23:12 UTC (permalink / raw)
  To: Michael Walle
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

On 1/10/2022 7:10 AM, Michael Walle wrote:
>
>> +    { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
> 
> OTP_INFO(256, 3, 0x1000, 0x1000)
> 
> should enable OTP support, could you please test this using the 
> flash_otp_{dump,info,erase,write} tools and add that line?

The board I've has HW filter between controller and NOR and doesn't seem 
to allow security reg access opcodes (read to be specific).

So long as adding this doesn't affect probe, I can add it. Otherwise, 
will have to leave it for later when that's fixed.


On 1/9/2022 9:07 PM, Pratyush Yadav wrote:
>
> You need to show the dumps of the SFDP and other flash parameters. See
> [0] for an example.
>
> The patch looks fine to me otherwise.
>

Lemme collect SFDP dump and include it in v2.
I ended up sending stale patch that has extra comma between INFO() 
PARSE_SFDP macros, so need to re-spin anyway.

Thanks,
Dhananjay

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-10 23:12     ` Dhananjay Phadke
  0 siblings, 0 replies; 13+ messages in thread
From: Dhananjay Phadke @ 2022-01-10 23:12 UTC (permalink / raw)
  To: Michael Walle
  Cc: Tudor Ambarus, Pratyush Yadav, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

On 1/10/2022 7:10 AM, Michael Walle wrote:
>
>> +    { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
> 
> OTP_INFO(256, 3, 0x1000, 0x1000)
> 
> should enable OTP support, could you please test this using the 
> flash_otp_{dump,info,erase,write} tools and add that line?

The board I've has HW filter between controller and NOR and doesn't seem 
to allow security reg access opcodes (read to be specific).

So long as adding this doesn't affect probe, I can add it. Otherwise, 
will have to leave it for later when that's fixed.


On 1/9/2022 9:07 PM, Pratyush Yadav wrote:
>
> You need to show the dumps of the SFDP and other flash parameters. See
> [0] for an example.
>
> The patch looks fine to me otherwise.
>

Lemme collect SFDP dump and include it in v2.
I ended up sending stale patch that has extra comma between INFO() 
PARSE_SFDP macros, so need to re-spin anyway.

Thanks,
Dhananjay

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
  2022-01-10 23:12     ` Dhananjay Phadke
@ 2022-01-11  5:51       ` Pratyush Yadav
  -1 siblings, 0 replies; 13+ messages in thread
From: Pratyush Yadav @ 2022-01-11  5:51 UTC (permalink / raw)
  To: Dhananjay Phadke
  Cc: Michael Walle, Tudor Ambarus, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

On 10/01/22 03:12PM, Dhananjay Phadke wrote:
> On 1/10/2022 7:10 AM, Michael Walle wrote:
> > 
> > > +    { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
> > 
> > OTP_INFO(256, 3, 0x1000, 0x1000)
> > 
> > should enable OTP support, could you please test this using the
> > flash_otp_{dump,info,erase,write} tools and add that line?
> 
> The board I've has HW filter between controller and NOR and doesn't seem to
> allow security reg access opcodes (read to be specific).
> 
> So long as adding this doesn't affect probe, I can add it. Otherwise, will
> have to leave it for later when that's fixed.

Please don't it if you can't test it. In that case let's just leave it 
for someone else to add later.

> 
> 
> On 1/9/2022 9:07 PM, Pratyush Yadav wrote:
> > 
> > You need to show the dumps of the SFDP and other flash parameters. See
> > [0] for an example.
> > 
> > The patch looks fine to me otherwise.
> > 
> 
> Lemme collect SFDP dump and include it in v2.
> I ended up sending stale patch that has extra comma between INFO()
> PARSE_SFDP macros, so need to re-spin anyway.
> 
> Thanks,
> Dhananjay

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH] mtd: spi-nor: Add support for w25q512jvm
@ 2022-01-11  5:51       ` Pratyush Yadav
  0 siblings, 0 replies; 13+ messages in thread
From: Pratyush Yadav @ 2022-01-11  5:51 UTC (permalink / raw)
  To: Dhananjay Phadke
  Cc: Michael Walle, Tudor Ambarus, Miquel Raynal, Richard Weinberger,
	Vignesh Raghavendra, linux-mtd, linux-kernel

On 10/01/22 03:12PM, Dhananjay Phadke wrote:
> On 1/10/2022 7:10 AM, Michael Walle wrote:
> > 
> > > +    { "w25q512jvm", INFO(0xef7020, 0, 64 * 1024, 1024),
> > 
> > OTP_INFO(256, 3, 0x1000, 0x1000)
> > 
> > should enable OTP support, could you please test this using the
> > flash_otp_{dump,info,erase,write} tools and add that line?
> 
> The board I've has HW filter between controller and NOR and doesn't seem to
> allow security reg access opcodes (read to be specific).
> 
> So long as adding this doesn't affect probe, I can add it. Otherwise, will
> have to leave it for later when that's fixed.

Please don't it if you can't test it. In that case let's just leave it 
for someone else to add later.

> 
> 
> On 1/9/2022 9:07 PM, Pratyush Yadav wrote:
> > 
> > You need to show the dumps of the SFDP and other flash parameters. See
> > [0] for an example.
> > 
> > The patch looks fine to me otherwise.
> > 
> 
> Lemme collect SFDP dump and include it in v2.
> I ended up sending stale patch that has extra comma between INFO()
> PARSE_SFDP macros, so need to re-spin anyway.
> 
> Thanks,
> Dhananjay

-- 
Regards,
Pratyush Yadav
Texas Instruments Inc.

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2022-01-11  5:52 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-09  4:44 [PATCH] mtd: spi-nor: Add support for w25q512jvm Dhananjay Phadke
2022-01-09  4:44 ` Dhananjay Phadke
2022-01-10  0:24 ` kernel test robot
2022-01-10  1:45 ` kernel test robot
2022-01-10  1:45   ` kernel test robot
2022-01-10  5:07 ` Pratyush Yadav
2022-01-10  5:07   ` Pratyush Yadav
2022-01-10 15:10 ` Michael Walle
2022-01-10 15:10   ` Michael Walle
2022-01-10 23:12   ` Dhananjay Phadke
2022-01-10 23:12     ` Dhananjay Phadke
2022-01-11  5:51     ` Pratyush Yadav
2022-01-11  5:51       ` Pratyush Yadav

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.