All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] doc: nvmem: Remove references to regmap
@ 2022-02-08 16:26 Sean Anderson
  2022-02-14 10:44 ` Srinivas Kandagatla
  0 siblings, 1 reply; 2+ messages in thread
From: Sean Anderson @ 2022-02-08 16:26 UTC (permalink / raw)
  To: Jonathan Corbet, linux-doc
  Cc: linux-kernel, Srinivas Kandagatla, Michael Walle, Sean Anderson

Since commit 795ddd18d38f ("nvmem: core: remove regmap dependency"),
nvmem devices do not use the regmap API. Remove references to it from
the documentation. Additionally, update the example to reflect the new
API.  I have chosen the brcm-nvram driver since it seems to be simpler
than the qfprom driver.

Signed-off-by: Sean Anderson <sean.anderson@seco.com>
---

Changes in v2:
- Replace spaces with tabs

 Documentation/driver-api/nvmem.rst | 28 ++++++++++++----------------
 1 file changed, 12 insertions(+), 16 deletions(-)

diff --git a/Documentation/driver-api/nvmem.rst b/Documentation/driver-api/nvmem.rst
index 287e86819640..a8a58b61709b 100644
--- a/Documentation/driver-api/nvmem.rst
+++ b/Documentation/driver-api/nvmem.rst
@@ -26,9 +26,7 @@ was a rather big abstraction leak.
 
 This framework aims at solve these problems. It also introduces DT
 representation for consumer devices to go get the data they require (MAC
-Addresses, SoC/Revision ID, part numbers, and so on) from the NVMEMs. This
-framework is based on regmap, so that most of the abstraction available in
-regmap can be reused, across multiple types of buses.
+Addresses, SoC/Revision ID, part numbers, and so on) from the NVMEMs.
 
 NVMEM Providers
 +++++++++++++++
@@ -45,24 +43,22 @@ nvmem_device pointer.
 
 nvmem_unregister(nvmem) is used to unregister a previously registered provider.
 
-For example, a simple qfprom case::
+For example, a simple nvram case::
 
-  static struct nvmem_config econfig = {
-	.name = "qfprom",
-	.owner = THIS_MODULE,
-  };
-
-  static int qfprom_probe(struct platform_device *pdev)
+  static int brcm_nvram_probe(struct platform_device *pdev)
   {
+	struct nvmem_config config = {
+		.name = "brcm-nvram",
+		.reg_read = brcm_nvram_read,
+	};
 	...
-	econfig.dev = &pdev->dev;
-	nvmem = nvmem_register(&econfig);
-	...
+	config.dev = &pdev->dev;
+	config.priv = priv;
+	config.size = resource_size(res);
+
+	devm_nvmem_register(&econfig);
   }
 
-It is mandatory that the NVMEM provider has a regmap associated with its
-struct device. Failure to do would return error code from nvmem_register().
-
 Users of board files can define and register nvmem cells using the
 nvmem_cell_table struct::
 
-- 
2.25.1


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

* Re: [PATCH v2] doc: nvmem: Remove references to regmap
  2022-02-08 16:26 [PATCH v2] doc: nvmem: Remove references to regmap Sean Anderson
@ 2022-02-14 10:44 ` Srinivas Kandagatla
  0 siblings, 0 replies; 2+ messages in thread
From: Srinivas Kandagatla @ 2022-02-14 10:44 UTC (permalink / raw)
  To: Sean Anderson, Jonathan Corbet, linux-doc; +Cc: linux-kernel, Michael Walle

Hi Sean,
Thanks for the patch,

On 08/02/2022 16:26, Sean Anderson wrote:
> Since commit 795ddd18d38f ("nvmem: core: remove regmap dependency"),
> nvmem devices do not use the regmap API. Remove references to it from
> the documentation. Additionally, update the example to reflect the new
> API.  I have chosen the brcm-nvram driver since it seems to be simpler
> than the qfprom driver.
> 

Please split this into two patches.


--srini

> Signed-off-by: Sean Anderson <sean.anderson@seco.com>
> ---
> 
> Changes in v2:
> - Replace spaces with tabs
> 
>   Documentation/driver-api/nvmem.rst | 28 ++++++++++++----------------
>   1 file changed, 12 insertions(+), 16 deletions(-)
> 
> diff --git a/Documentation/driver-api/nvmem.rst b/Documentation/driver-api/nvmem.rst
> index 287e86819640..a8a58b61709b 100644
> --- a/Documentation/driver-api/nvmem.rst
> +++ b/Documentation/driver-api/nvmem.rst
> @@ -26,9 +26,7 @@ was a rather big abstraction leak.
>   
>   This framework aims at solve these problems. It also introduces DT
>   representation for consumer devices to go get the data they require (MAC
> -Addresses, SoC/Revision ID, part numbers, and so on) from the NVMEMs. This
> -framework is based on regmap, so that most of the abstraction available in
> -regmap can be reused, across multiple types of buses.
> +Addresses, SoC/Revision ID, part numbers, and so on) from the NVMEMs.
>   
>   NVMEM Providers
>   +++++++++++++++
> @@ -45,24 +43,22 @@ nvmem_device pointer.
>   
>   nvmem_unregister(nvmem) is used to unregister a previously registered provider.
>   
> -For example, a simple qfprom case::
> +For example, a simple nvram case::
>   
> -  static struct nvmem_config econfig = {
> -	.name = "qfprom",
> -	.owner = THIS_MODULE,
> -  };
> -
> -  static int qfprom_probe(struct platform_device *pdev)
> +  static int brcm_nvram_probe(struct platform_device *pdev)
>     {
> +	struct nvmem_config config = {
> +		.name = "brcm-nvram",
> +		.reg_read = brcm_nvram_read,
> +	};
>   	...
> -	econfig.dev = &pdev->dev;
> -	nvmem = nvmem_register(&econfig);
> -	...
> +	config.dev = &pdev->dev;
> +	config.priv = priv;
> +	config.size = resource_size(res);
> +
> +	devm_nvmem_register(&econfig);
>     }
>   
> -It is mandatory that the NVMEM provider has a regmap associated with its
> -struct device. Failure to do would return error code from nvmem_register().
> -
>   Users of board files can define and register nvmem cells using the
>   nvmem_cell_table struct::
>   

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

end of thread, other threads:[~2022-02-14 11:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-08 16:26 [PATCH v2] doc: nvmem: Remove references to regmap Sean Anderson
2022-02-14 10:44 ` Srinivas Kandagatla

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.