* [PATCH] Revert "nvmem: add new config option"
@ 2023-07-18 8:48 Rafał Miłecki
2023-07-18 9:19 ` Miquel Raynal
` (3 more replies)
0 siblings, 4 replies; 7+ messages in thread
From: Rafał Miłecki @ 2023-07-18 8:48 UTC (permalink / raw)
To: Srinivas Kandagatla
Cc: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Bartosz Golaszewski, Alban Bedel, Christian Marangi, linux-mtd,
linux-kernel, Rafał Miłecki
From: Rafał Miłecki <rafal@milecki.pl>
This reverts commit 517f14d9cf3533d5ab4fded195ab6f80a92e378f.
It seems that "no_of_node" config option was added to help mtd's case.
DT nodes of MTD partitions (that are also NVMEM devices) may contain
subnodes that SHOULD NOT be treated as NVMEM fixed cells. To prevent
NVMEM core code from parsing them "no_of_node" was set to true and that
made for_each_child_of_node() in NVMEM a no-op.
With the introduction of "add_legacy_fixed_of_cells" config option
things got more explicit. MTD subsystem simply tells NVMEM when to look
for fixed cells and there is no need to hack "of_node" pointer anymore.
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
---
Important: this is based on top of the
[PATCH V4] nvmem: add explicit config option to read old syntax fixed OF cells
---
drivers/mtd/mtdcore.c | 1 -
drivers/nvmem/core.c | 2 +-
include/linux/nvmem-provider.h | 2 --
3 files changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
index 9db8d7853639..3d781ffb8c32 100644
--- a/drivers/mtd/mtdcore.c
+++ b/drivers/mtd/mtdcore.c
@@ -554,7 +554,6 @@ static int mtd_nvmem_add(struct mtd_info *mtd)
config.read_only = true;
config.root_only = true;
config.ignore_wp = true;
- config.no_of_node = !of_device_is_compatible(node, "nvmem-cells");
config.priv = mtd;
mtd->nvmem = nvmem_register(&config);
diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c
index 58d8919e6682..a0c9153cda28 100644
--- a/drivers/nvmem/core.c
+++ b/drivers/nvmem/core.c
@@ -1027,7 +1027,7 @@ struct nvmem_device *nvmem_register(const struct nvmem_config *config)
nvmem->nkeepout = config->nkeepout;
if (config->of_node)
nvmem->dev.of_node = config->of_node;
- else if (!config->no_of_node)
+ else
nvmem->dev.of_node = config->dev->of_node;
switch (config->id) {
diff --git a/include/linux/nvmem-provider.h b/include/linux/nvmem-provider.h
index 1b81adebdb8b..e3930835235b 100644
--- a/include/linux/nvmem-provider.h
+++ b/include/linux/nvmem-provider.h
@@ -89,7 +89,6 @@ struct nvmem_cell_info {
* @read_only: Device is read-only.
* @root_only: Device is accessibly to root only.
* @of_node: If given, this will be used instead of the parent's of_node.
- * @no_of_node: Device should not use the parent's of_node even if it's !NULL.
* @reg_read: Callback to read data.
* @reg_write: Callback to write data.
* @size: Device size.
@@ -122,7 +121,6 @@ struct nvmem_config {
bool ignore_wp;
struct nvmem_layout *layout;
struct device_node *of_node;
- bool no_of_node;
nvmem_reg_read_t reg_read;
nvmem_reg_write_t reg_write;
int size;
--
2.35.3
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] Revert "nvmem: add new config option"
2023-07-18 8:48 [PATCH] Revert "nvmem: add new config option" Rafał Miłecki
@ 2023-07-18 9:19 ` Miquel Raynal
2023-07-18 16:00 ` kernel test robot
` (2 subsequent siblings)
3 siblings, 0 replies; 7+ messages in thread
From: Miquel Raynal @ 2023-07-18 9:19 UTC (permalink / raw)
To: Rafał Miłecki
Cc: Srinivas Kandagatla, Richard Weinberger, Vignesh Raghavendra,
Bartosz Golaszewski, Alban Bedel, Christian Marangi, linux-mtd,
linux-kernel, Rafał Miłecki
Hi Rafał,
zajec5@gmail.com wrote on Tue, 18 Jul 2023 10:48:04 +0200:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> This reverts commit 517f14d9cf3533d5ab4fded195ab6f80a92e378f.
>
> It seems that "no_of_node" config option was added to help mtd's case.
>
> DT nodes of MTD partitions (that are also NVMEM devices) may contain
> subnodes that SHOULD NOT be treated as NVMEM fixed cells. To prevent
> NVMEM core code from parsing them "no_of_node" was set to true and that
> made for_each_child_of_node() in NVMEM a no-op.
>
> With the introduction of "add_legacy_fixed_of_cells" config option
> things got more explicit. MTD subsystem simply tells NVMEM when to look
> for fixed cells and there is no need to hack "of_node" pointer anymore.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
Thanks,
Miquèl
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Revert "nvmem: add new config option"
2023-07-18 8:48 [PATCH] Revert "nvmem: add new config option" Rafał Miłecki
2023-07-18 9:19 ` Miquel Raynal
@ 2023-07-18 16:00 ` kernel test robot
2023-07-18 16:59 ` Rafał Miłecki
2023-08-26 20:15 ` Rafał Miłecki
2023-10-07 10:17 ` Srinivas Kandagatla
3 siblings, 1 reply; 7+ messages in thread
From: kernel test robot @ 2023-07-18 16:00 UTC (permalink / raw)
To: Rafał Miłecki, Srinivas Kandagatla
Cc: oe-kbuild-all, Miquel Raynal, Richard Weinberger,
Vignesh Raghavendra, Bartosz Golaszewski, Alban Bedel,
Christian Marangi, linux-mtd, linux-kernel,
Rafał Miłecki
Hi Rafał,
kernel test robot noticed the following build warnings:
[auto build test WARNING on mtd/mtd/next]
[also build test WARNING on mtd/mtd/fixes linus/master v6.5-rc2 next-20230718]
[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#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/Rafa-Mi-ecki/Revert-nvmem-add-new-config-option/20230718-170441
base: https://git.kernel.org/pub/scm/linux/kernel/git/mtd/linux.git mtd/next
patch link: https://lore.kernel.org/r/20230718084804.20139-1-zajec5%40gmail.com
patch subject: [PATCH] Revert "nvmem: add new config option"
config: i386-randconfig-i002-20230718 (https://download.01.org/0day-ci/archive/20230718/202307182316.AVNL1wNs-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce: (https://download.01.org/0day-ci/archive/20230718/202307182316.AVNL1wNs-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202307182316.AVNL1wNs-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/mtd/mtdcore.c: In function 'mtd_nvmem_add':
>> drivers/mtd/mtdcore.c:542:29: warning: unused variable 'node' [-Wunused-variable]
542 | struct device_node *node = mtd_get_of_node(mtd);
| ^~~~
vim +/node +542 drivers/mtd/mtdcore.c
c4dfa25ab307a2 Alban Bedel 2018-11-13 539
c4dfa25ab307a2 Alban Bedel 2018-11-13 540 static int mtd_nvmem_add(struct mtd_info *mtd)
c4dfa25ab307a2 Alban Bedel 2018-11-13 541 {
658c4448bbbf02 Christian Marangi 2021-03-12 @542 struct device_node *node = mtd_get_of_node(mtd);
c4dfa25ab307a2 Alban Bedel 2018-11-13 543 struct nvmem_config config = {};
c4dfa25ab307a2 Alban Bedel 2018-11-13 544
75f32f4b9d5263 Miquel Raynal 2023-03-07 545 config.id = NVMEM_DEVID_NONE;
c4dfa25ab307a2 Alban Bedel 2018-11-13 546 config.dev = &mtd->dev;
7b01b7239d0dc9 Ricardo Ribalda 2020-04-30 547 config.name = dev_name(&mtd->dev);
c4dfa25ab307a2 Alban Bedel 2018-11-13 548 config.owner = THIS_MODULE;
c4dfa25ab307a2 Alban Bedel 2018-11-13 549 config.reg_read = mtd_nvmem_reg_read;
c4dfa25ab307a2 Alban Bedel 2018-11-13 550 config.size = mtd->size;
c4dfa25ab307a2 Alban Bedel 2018-11-13 551 config.word_size = 1;
c4dfa25ab307a2 Alban Bedel 2018-11-13 552 config.stride = 1;
c4dfa25ab307a2 Alban Bedel 2018-11-13 553 config.read_only = true;
c4dfa25ab307a2 Alban Bedel 2018-11-13 554 config.root_only = true;
6c7621890995d0 Christophe Kerello 2022-02-20 555 config.ignore_wp = true;
c4dfa25ab307a2 Alban Bedel 2018-11-13 556 config.priv = mtd;
c4dfa25ab307a2 Alban Bedel 2018-11-13 557
c4dfa25ab307a2 Alban Bedel 2018-11-13 558 mtd->nvmem = nvmem_register(&config);
c4dfa25ab307a2 Alban Bedel 2018-11-13 559 if (IS_ERR(mtd->nvmem)) {
c4dfa25ab307a2 Alban Bedel 2018-11-13 560 /* Just ignore if there is no NVMEM support in the kernel */
5cab06156aade1 Miquel Raynal 2023-03-07 561 if (PTR_ERR(mtd->nvmem) == -EOPNOTSUPP)
c4dfa25ab307a2 Alban Bedel 2018-11-13 562 mtd->nvmem = NULL;
5cab06156aade1 Miquel Raynal 2023-03-07 563 else
5cab06156aade1 Miquel Raynal 2023-03-07 564 return dev_err_probe(&mtd->dev, PTR_ERR(mtd->nvmem),
5cab06156aade1 Miquel Raynal 2023-03-07 565 "Failed to register NVMEM device\n");
c4dfa25ab307a2 Alban Bedel 2018-11-13 566 }
c4dfa25ab307a2 Alban Bedel 2018-11-13 567
c4dfa25ab307a2 Alban Bedel 2018-11-13 568 return 0;
c4dfa25ab307a2 Alban Bedel 2018-11-13 569 }
c4dfa25ab307a2 Alban Bedel 2018-11-13 570
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Revert "nvmem: add new config option"
2023-07-18 16:00 ` kernel test robot
@ 2023-07-18 16:59 ` Rafał Miłecki
0 siblings, 0 replies; 7+ messages in thread
From: Rafał Miłecki @ 2023-07-18 16:59 UTC (permalink / raw)
To: kernel test robot
Cc: Rafał Miłecki, Srinivas Kandagatla, oe-kbuild-all,
Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Bartosz Golaszewski, Alban Bedel, Christian Marangi, linux-mtd,
linux-kernel
On 2023-07-18 18:00, kernel test robot wrote:
> drivers/mtd/mtdcore.c: In function 'mtd_nvmem_add':
>>> drivers/mtd/mtdcore.c:542:29: warning: unused variable 'node'
>>> [-Wunused-variable]
> 542 | struct device_node *node = mtd_get_of_node(mtd);
> | ^~~~
My patch I mentioned:
[PATCH V4] nvmem: add explicit config option to read old syntax fixed OF
cells
adds following line:
config.add_legacy_fixed_of_cells = of_device_is_compatible(node,
"nvmem-cells");
So this is a false kernel bot warning (but I understand kernel bot
couldn't understand it needs my other patch).
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Revert "nvmem: add new config option"
2023-07-18 8:48 [PATCH] Revert "nvmem: add new config option" Rafał Miłecki
2023-07-18 9:19 ` Miquel Raynal
2023-07-18 16:00 ` kernel test robot
@ 2023-08-26 20:15 ` Rafał Miłecki
2023-10-04 8:45 ` Rafał Miłecki
2023-10-07 10:17 ` Srinivas Kandagatla
3 siblings, 1 reply; 7+ messages in thread
From: Rafał Miłecki @ 2023-08-26 20:15 UTC (permalink / raw)
To: Srinivas Kandagatla
Cc: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Bartosz Golaszewski, Alban Bedel, Christian Marangi, linux-mtd,
linux-kernel, Rafał Miłecki
Hi Srini,
On 18.07.2023 10:48, Rafał Miłecki wrote:
> From: Rafał Miłecki <rafal@milecki.pl>
>
> This reverts commit 517f14d9cf3533d5ab4fded195ab6f80a92e378f.
>
> It seems that "no_of_node" config option was added to help mtd's case.
>
> DT nodes of MTD partitions (that are also NVMEM devices) may contain
> subnodes that SHOULD NOT be treated as NVMEM fixed cells. To prevent
> NVMEM core code from parsing them "no_of_node" was set to true and that
> made for_each_child_of_node() in NVMEM a no-op.
>
> With the introduction of "add_legacy_fixed_of_cells" config option
> things got more explicit. MTD subsystem simply tells NVMEM when to look
> for fixed cells and there is no need to hack "of_node" pointer anymore.
>
> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
> ---
> Important: this is based on top of the
> [PATCH V4] nvmem: add explicit config option to read old syntax fixed OF cells
I see you skipped those two patches for 6.6.
Can you queue them for 6.7, please?
> ---
> drivers/mtd/mtdcore.c | 1 -
> drivers/nvmem/core.c | 2 +-
> include/linux/nvmem-provider.h | 2 --
> 3 files changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
> index 9db8d7853639..3d781ffb8c32 100644
> --- a/drivers/mtd/mtdcore.c
> +++ b/drivers/mtd/mtdcore.c
> @@ -554,7 +554,6 @@ static int mtd_nvmem_add(struct mtd_info *mtd)
> config.read_only = true;
> config.root_only = true;
> config.ignore_wp = true;
> - config.no_of_node = !of_device_is_compatible(node, "nvmem-cells");
> config.priv = mtd;
>
> mtd->nvmem = nvmem_register(&config);
> diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c
> index 58d8919e6682..a0c9153cda28 100644
> --- a/drivers/nvmem/core.c
> +++ b/drivers/nvmem/core.c
> @@ -1027,7 +1027,7 @@ struct nvmem_device *nvmem_register(const struct nvmem_config *config)
> nvmem->nkeepout = config->nkeepout;
> if (config->of_node)
> nvmem->dev.of_node = config->of_node;
> - else if (!config->no_of_node)
> + else
> nvmem->dev.of_node = config->dev->of_node;
>
> switch (config->id) {
> diff --git a/include/linux/nvmem-provider.h b/include/linux/nvmem-provider.h
> index 1b81adebdb8b..e3930835235b 100644
> --- a/include/linux/nvmem-provider.h
> +++ b/include/linux/nvmem-provider.h
> @@ -89,7 +89,6 @@ struct nvmem_cell_info {
> * @read_only: Device is read-only.
> * @root_only: Device is accessibly to root only.
> * @of_node: If given, this will be used instead of the parent's of_node.
> - * @no_of_node: Device should not use the parent's of_node even if it's !NULL.
> * @reg_read: Callback to read data.
> * @reg_write: Callback to write data.
> * @size: Device size.
> @@ -122,7 +121,6 @@ struct nvmem_config {
> bool ignore_wp;
> struct nvmem_layout *layout;
> struct device_node *of_node;
> - bool no_of_node;
> nvmem_reg_read_t reg_read;
> nvmem_reg_write_t reg_write;
> int size;
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Revert "nvmem: add new config option"
2023-08-26 20:15 ` Rafał Miłecki
@ 2023-10-04 8:45 ` Rafał Miłecki
0 siblings, 0 replies; 7+ messages in thread
From: Rafał Miłecki @ 2023-10-04 8:45 UTC (permalink / raw)
To: Srinivas Kandagatla
Cc: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Bartosz Golaszewski, Alban Bedel, Christian Marangi, linux-mtd,
linux-kernel, Rafał Miłecki
Srini,
On 26.08.2023 22:15, Rafał Miłecki wrote:
> On 18.07.2023 10:48, Rafał Miłecki wrote:
>> From: Rafał Miłecki <rafal@milecki.pl>
>>
>> This reverts commit 517f14d9cf3533d5ab4fded195ab6f80a92e378f.
>>
>> It seems that "no_of_node" config option was added to help mtd's case.
>>
>> DT nodes of MTD partitions (that are also NVMEM devices) may contain
>> subnodes that SHOULD NOT be treated as NVMEM fixed cells. To prevent
>> NVMEM core code from parsing them "no_of_node" was set to true and that
>> made for_each_child_of_node() in NVMEM a no-op.
>>
>> With the introduction of "add_legacy_fixed_of_cells" config option
>> things got more explicit. MTD subsystem simply tells NVMEM when to look
>> for fixed cells and there is no need to hack "of_node" pointer anymore.
>>
>> Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
>> ---
>> Important: this is based on top of the
>> [PATCH V4] nvmem: add explicit config option to read old syntax fixed OF cells
>
> I see you skipped those two patches for 6.6.
>
> Can you queue them for 6.7, please?
Did you have a chance to look at this one?
>> ---
>> drivers/mtd/mtdcore.c | 1 -
>> drivers/nvmem/core.c | 2 +-
>> include/linux/nvmem-provider.h | 2 --
>> 3 files changed, 1 insertion(+), 4 deletions(-)
>>
>> diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c
>> index 9db8d7853639..3d781ffb8c32 100644
>> --- a/drivers/mtd/mtdcore.c
>> +++ b/drivers/mtd/mtdcore.c
>> @@ -554,7 +554,6 @@ static int mtd_nvmem_add(struct mtd_info *mtd)
>> config.read_only = true;
>> config.root_only = true;
>> config.ignore_wp = true;
>> - config.no_of_node = !of_device_is_compatible(node, "nvmem-cells");
>> config.priv = mtd;
>> mtd->nvmem = nvmem_register(&config);
>> diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c
>> index 58d8919e6682..a0c9153cda28 100644
>> --- a/drivers/nvmem/core.c
>> +++ b/drivers/nvmem/core.c
>> @@ -1027,7 +1027,7 @@ struct nvmem_device *nvmem_register(const struct nvmem_config *config)
>> nvmem->nkeepout = config->nkeepout;
>> if (config->of_node)
>> nvmem->dev.of_node = config->of_node;
>> - else if (!config->no_of_node)
>> + else
>> nvmem->dev.of_node = config->dev->of_node;
>> switch (config->id) {
>> diff --git a/include/linux/nvmem-provider.h b/include/linux/nvmem-provider.h
>> index 1b81adebdb8b..e3930835235b 100644
>> --- a/include/linux/nvmem-provider.h
>> +++ b/include/linux/nvmem-provider.h
>> @@ -89,7 +89,6 @@ struct nvmem_cell_info {
>> * @read_only: Device is read-only.
>> * @root_only: Device is accessibly to root only.
>> * @of_node: If given, this will be used instead of the parent's of_node.
>> - * @no_of_node: Device should not use the parent's of_node even if it's !NULL.
>> * @reg_read: Callback to read data.
>> * @reg_write: Callback to write data.
>> * @size: Device size.
>> @@ -122,7 +121,6 @@ struct nvmem_config {
>> bool ignore_wp;
>> struct nvmem_layout *layout;
>> struct device_node *of_node;
>> - bool no_of_node;
>> nvmem_reg_read_t reg_read;
>> nvmem_reg_write_t reg_write;
>> int size;
>
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Revert "nvmem: add new config option"
2023-07-18 8:48 [PATCH] Revert "nvmem: add new config option" Rafał Miłecki
` (2 preceding siblings ...)
2023-08-26 20:15 ` Rafał Miłecki
@ 2023-10-07 10:17 ` Srinivas Kandagatla
3 siblings, 0 replies; 7+ messages in thread
From: Srinivas Kandagatla @ 2023-10-07 10:17 UTC (permalink / raw)
To: Rafał Miłecki
Cc: Miquel Raynal, Richard Weinberger, Vignesh Raghavendra,
Bartosz Golaszewski, Alban Bedel, Christian Marangi, linux-mtd,
linux-kernel, Rafał Miłecki
On Tue, 18 Jul 2023 10:48:04 +0200, Rafał Miłecki wrote:
> This reverts commit 517f14d9cf3533d5ab4fded195ab6f80a92e378f.
>
> It seems that "no_of_node" config option was added to help mtd's case.
>
> DT nodes of MTD partitions (that are also NVMEM devices) may contain
> subnodes that SHOULD NOT be treated as NVMEM fixed cells. To prevent
> NVMEM core code from parsing them "no_of_node" was set to true and that
> made for_each_child_of_node() in NVMEM a no-op.
>
> [...]
Applied, thanks!
[1/1] Revert "nvmem: add new config option"
commit: bb519262f1a9b4c37046be5a3851ab1681d7158a
Best regards,
--
Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2023-10-07 10:17 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-18 8:48 [PATCH] Revert "nvmem: add new config option" Rafał Miłecki
2023-07-18 9:19 ` Miquel Raynal
2023-07-18 16:00 ` kernel test robot
2023-07-18 16:59 ` Rafał Miłecki
2023-08-26 20:15 ` Rafał Miłecki
2023-10-04 8:45 ` Rafał Miłecki
2023-10-07 10:17 ` Srinivas Kandagatla
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox