gpio-nct5104d: fix compilation with kernel 6.6
[openwrt/openwrt.git] / target / linux / generic / backport-6.1 / 819-v6.8-0010-nvmem-core-add-nvmem_dev_size-helper.patch
1 From 33cf42e68efc8ff529a7eee08a4f0ba8c8d0a207 Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
3 Date: Thu, 21 Dec 2023 18:34:17 +0100
4 Subject: [PATCH] nvmem: core: add nvmem_dev_size() helper
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 This is required by layouts that need to read whole NVMEM content. It's
10 especially useful for NVMEM devices without hardcoded layout (like
11 U-Boot environment data block).
12
13 Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
14 Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
15 Link: https://lore.kernel.org/r/20231221173421.13737-2-zajec5@gmail.com
16 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
17 ---
18 drivers/nvmem/core.c | 13 +++++++++++++
19 include/linux/nvmem-consumer.h | 1 +
20 2 files changed, 14 insertions(+)
21
22 --- a/drivers/nvmem/core.c
23 +++ b/drivers/nvmem/core.c
24 @@ -2164,6 +2164,19 @@ const char *nvmem_dev_name(struct nvmem_
25 }
26 EXPORT_SYMBOL_GPL(nvmem_dev_name);
27
28 +/**
29 + * nvmem_dev_size() - Get the size of a given nvmem device.
30 + *
31 + * @nvmem: nvmem device.
32 + *
33 + * Return: size of the nvmem device.
34 + */
35 +size_t nvmem_dev_size(struct nvmem_device *nvmem)
36 +{
37 + return nvmem->size;
38 +}
39 +EXPORT_SYMBOL_GPL(nvmem_dev_size);
40 +
41 static int __init nvmem_init(void)
42 {
43 int ret;
44 --- a/include/linux/nvmem-consumer.h
45 +++ b/include/linux/nvmem-consumer.h
46 @@ -81,6 +81,7 @@ int nvmem_device_cell_write(struct nvmem
47 struct nvmem_cell_info *info, void *buf);
48
49 const char *nvmem_dev_name(struct nvmem_device *nvmem);
50 +size_t nvmem_dev_size(struct nvmem_device *nvmem);
51
52 void nvmem_add_cell_lookups(struct nvmem_cell_lookup *entries,
53 size_t nentries);