[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220208162657.724119-1-sean.anderson@seco.com>
Date: Tue, 8 Feb 2022 11:26:57 -0500
From: Sean Anderson <sean.anderson@...o.com>
To: Jonathan Corbet <corbet@....net>, linux-doc@...r.kernel.org
Cc: linux-kernel@...r.kernel.org,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Michael Walle <michael@...le.cc>,
Sean Anderson <sean.anderson@...o.com>
Subject: [PATCH v2] doc: nvmem: Remove references to regmap
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@...o.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
Powered by blists - more mailing lists