Home
last modified time | relevance | path

Searched full:nvmem (Results 1 – 25 of 317) sorted by relevance

12345678910>>...13

/linux/drivers/nvmem/
H A Dcore.c3 * nvmem framework core.
16 #include <linux/nvmem-consumer.h>
17 #include <linux/nvmem-provider.h>
37 struct nvmem_device *nvmem; member
58 static int __nvmem_reg_read(struct nvmem_device *nvmem, unsigned int offset, in __nvmem_reg_read() argument
61 if (nvmem->reg_read) in __nvmem_reg_read()
62 return nvmem->reg_read(nvmem->priv, offset, val, bytes); in __nvmem_reg_read()
67 static int __nvmem_reg_write(struct nvmem_device *nvmem, unsigned int offset, in __nvmem_reg_write() argument
72 if (nvmem->reg_write) { in __nvmem_reg_write()
73 gpiod_set_value_cansleep(nvmem->wp_gpio, 0); in __nvmem_reg_write()
[all …]
H A DMakefile3 # Makefile for nvmem drivers.
13 obj-$(CONFIG_NVMEM_APPLE_EFUSES) += nvmem-apple-efuses.o
14 nvmem-apple-efuses-y := apple-efuses.o
15 obj-$(CONFIG_NVMEM_BCM_OCOTP) += nvmem-bcm-ocotp.o
16 nvmem-bcm-ocotp-y := bcm-ocotp.o
19 obj-$(CONFIG_NVMEM_IMX_IIM) += nvmem-imx-iim.o
20 nvmem-imx-iim-y := imx-iim.o
21 obj-$(CONFIG_NVMEM_IMX_OCOTP) += nvmem-imx-ocotp.o
22 nvmem-imx-ocotp-y := imx-ocotp.o
23 obj-$(CONFIG_NVMEM_IMX_OCOTP_ELE) += nvmem-imx-ocotp-ele.o
[all …]
H A Dinternals.h7 #include <linux/nvmem-consumer.h>
8 #include <linux/nvmem-provider.h>
26 void (*fixup_dt_cell_info)(struct nvmem_device *nvmem,
41 int nvmem_populate_layout(struct nvmem_device *nvmem);
42 void nvmem_destroy_layout(struct nvmem_device *nvmem);
51 static inline int nvmem_populate_layout(struct nvmem_device *nvmem) in nvmem_populate_layout() argument
56 static inline void nvmem_destroy_layout(struct nvmem_device *nvmem) { } in nvmem_destroy_layout() argument
/linux/Documentation/driver-api/
H A Dnvmem.rst4 NVMEM Subsystem
9 This document explains the NVMEM Framework along with the APIs provided,
14 *NVMEM* is the abbreviation for Non Volatile Memory layer. It is used to
18 Before this framework existed, NVMEM drivers like eeprom were stored in
31 NVMEM Providers
34 NVMEM provider refers to an entity that implements methods to initialize, read
37 2. Registering/Unregistering the NVMEM provider
40 A NVMEM provider can register with NVMEM core by supplying relevant
41 nvmem configuration to nvmem_register(), on success core would return a valid
62 Users of board files can define and register nvmem cells using the
[all …]
/linux/Documentation/devicetree/bindings/nvmem/
H A Dnvmem-consumer.yaml4 $id: http://devicetree.org/schemas/nvmem/nvmem-consumer.yaml#
7 title: NVMEM (Non Volatile Memory) Consumer
15 nvmem:
18 List of phandle to the nvmem providers.
20 nvmem-cells:
23 List of phandle to the nvmem data cells.
25 nvmem-names:
27 Names for the each nvmem provider.
29 nvmem-cell-names:
31 Names for each nvmem-cells specified.
[all …]
H A Dnvmem.yaml4 $id: http://devicetree.org/schemas/nvmem/nvmem.yaml#
7 title: NVMEM (Non Volatile Memory)
17 some data on NVMEM, for the OS to be able to retrieve these
42 nvmem-layout:
43 $ref: /schemas/nvmem/layouts/nvmem-layout.yaml
45 Alternative to the statically defined nvmem cells, this
65 nvmem-layout {
H A Dxlnx,zynqmp-nvmem.yaml4 $id: http://devicetree.org/schemas/nvmem/xlnx,zynqmp-nvmem.yaml#
18 - $ref: nvmem.yaml#
22 const: xlnx,zynqmp-nvmem-fw
31 soc-nvmem {
32 compatible = "xlnx,zynqmp-nvmem-fw";
33 nvmem-layout {
/linux/Documentation/devicetree/bindings/mtd/partitions/
H A Dnvmem-cells.yaml4 $id: http://devicetree.org/schemas/mtd/partitions/nvmem-cells.yaml#
7 title: Nvmem cells
10 Any partition containing the compatible "nvmem-cells" will register as a
11 nvmem provider.
12 Each direct subnodes represents a nvmem cell following the nvmem binding.
13 Nvmem binding to declare nvmem-cells can be found in:
14 Documentation/devicetree/bindings/nvmem/nvmem.yaml
21 - $ref: /schemas/nvmem/nvmem.yaml#
22 - $ref: /schemas/nvmem/nvmem-deprecated-cells.yaml#
26 const: nvmem-cells
[all …]
/linux/Documentation/devicetree/bindings/thermal/
H A Dsprd-thermal.yaml30 nvmem-cells:
33 Reference to nvmem nodes for the calibration data.
35 nvmem-cell-names:
60 nvmem-cells:
63 Reference to an nvmem node for the calibration data.
65 nvmem-cell-names:
70 - nvmem-cells
71 - nvmem-cell-names
80 - nvmem-cells
81 - nvmem-cell-names
[all …]
H A Dmediatek,lvts-thermal.yaml43 nvmem-cells:
49 nvmem-cell-names:
72 nvmem-cells:
75 nvmem-cell-names:
88 nvmem-cells:
91 nvmem-cell-names:
100 - nvmem-cells
101 - nvmem-cell-names
122 nvmem-cells = <&lvts_efuse_data1 &lvts_efuse_data2>;
123 nvmem-cell-names = "lvts-calib-data-1", "lvts-calib-data-2";
H A Dallwinner,sun8i-a83t-ths.yaml49 nvmem-cells:
53 nvmem-cell-names:
148 nvmem-cells = <&ths_calibration>;
149 nvmem-cell-names = "calibration";
161 nvmem-cells = <&ths_calibration>;
162 nvmem-cell-names = "calibration";
174 nvmem-cells = <&ths_calibration>;
175 nvmem-cell-names = "calibration";
/linux/Documentation/devicetree/bindings/power/reset/
H A Dnvmem-reboot-mode.yaml4 $id: http://devicetree.org/schemas/power/reset/nvmem-reboot-mode.yaml#
7 title: Generic NVMEM reboot mode
14 and stores it in the NVMEM cell named "reboot-mode". The bootloader can
19 const: nvmem-reboot-mode
21 nvmem-cells:
23 A phandle pointing to the nvmem-cells node where the vendor-specific
27 nvmem-cell-names:
36 - nvmem-cells
37 - nvmem-cell-names
44 compatible = "nvmem-reboot-mode";
[all …]
/linux/include/linux/
H A Dnvmem-consumer.h3 * nvmem framework consumer.
27 * @cell_name: Name of the nvmem cell as defined in the name field of
68 /* direct nvmem device read/write interface */
72 void nvmem_device_put(struct nvmem_device *nvmem);
73 void devm_nvmem_device_put(struct device *dev, struct nvmem_device *nvmem);
74 int nvmem_device_read(struct nvmem_device *nvmem, unsigned int offset,
76 int nvmem_device_write(struct nvmem_device *nvmem, unsigned int offset,
78 ssize_t nvmem_device_cell_read(struct nvmem_device *nvmem,
80 int nvmem_device_cell_write(struct nvmem_device *nvmem,
83 const char *nvmem_dev_name(struct nvmem_device *nvmem);
[all …]
/linux/Documentation/devicetree/bindings/iio/adc/
H A Dsprd,sc2720-adc.yaml37 nvmem-cells: true
39 nvmem-cell-names: true
51 nvmem-cells:
53 nvmem-cell-names:
60 nvmem-cells:
62 nvmem-cell-names:
77 - nvmem-cells
78 - nvmem-cell-names
95 nvmem-cells = <&adc_big_scale>, <&adc_small_scale>;
96 nvmem-cell-names = "big_scale_calib", "small_scale_calib";
[all …]
/linux/Documentation/devicetree/bindings/nvmem/layouts/
H A Dfixed-layout.yaml4 $id: http://devicetree.org/schemas/nvmem/layouts/fixed-layout.yaml#
7 title: NVMEM layout for fixed NVMEM cells
10 Many NVMEM devices have hardcoded cells layout (offset and size of defined
11 NVMEM content doesn't change).
13 This binding allows defining such NVMEM layout with its cells. It can be used
14 on top of any NVMEM device.
42 nvmem-layout {
50 #nvmem-cell-cells = <1>;
56 #nvmem-cell-cells = <1>;
/linux/arch/arm64/boot/dts/freescale/
H A Dfsl-ls1028a-kontron-kbox-a-230-ls.dts59 nvmem-cells = <&base_mac_address 2>;
60 nvmem-cell-names = "mac-address";
65 nvmem-cells = <&base_mac_address 3>;
66 nvmem-cell-names = "mac-address";
87 nvmem-cells = <&base_mac_address 4>;
88 nvmem-cell-names = "mac-address";
97 nvmem-cells = <&base_mac_address 5>;
98 nvmem-cell-names = "mac-address";
107 nvmem-cells = <&base_mac_address 6>;
108 nvmem-cell-names = "mac-address";
[all …]
H A Dfsl-ls1028a-kontron-sl28-var2.dts39 nvmem-cells = <&base_mac_address 2>;
40 nvmem-cell-names = "mac-address";
45 nvmem-cells = <&base_mac_address 3>;
46 nvmem-cell-names = "mac-address";
59 nvmem-cells = <&base_mac_address 0>;
60 nvmem-cell-names = "mac-address";
69 nvmem-cells = <&base_mac_address 1>;
70 nvmem-cell-names = "mac-address";
/linux/drivers/mtd/ubi/
H A Dnvmem.c6 /* UBI NVMEM provider */
8 #include <linux/nvmem-provider.h>
10 /* List of all NVMEM devices */
15 struct nvmem_device *nvmem; member
71 if (!of_get_child_by_name(np, "nvmem-layout")) in ubi_nvmem_add()
99 unv->nvmem = nvmem_register(&config); in ubi_nvmem_add()
100 if (IS_ERR(unv->nvmem)) { in ubi_nvmem_add()
101 ret = dev_err_probe(vi->dev, PTR_ERR(unv->nvmem), in ubi_nvmem_add()
102 "Failed to register NVMEM device\n"); in ubi_nvmem_add()
132 nvmem_unregister(unv->nvmem); in ubi_nvmem_remove()
[all …]
/linux/Documentation/devicetree/bindings/net/
H A Dsunplus,sp7021-emac.yaml62 nvmem-cells:
64 - description: nvmem cell address of MAC address
66 nvmem-cell-names:
67 description: names corresponding to the nvmem cells
75 - nvmem-cells
76 - nvmem-cell-names
117 nvmem-cells = <&mac_addr0>;
118 nvmem-cell-names = "mac-address";
125 nvmem-cells = <&mac_addr1>;
126 nvmem-cell-names = "mac-address";
H A Dnixge.txt15 - nvmem-cells: Phandle of nvmem cell containing the MAC address
16 - nvmem-cell-names: Should be "address"
31 nvmem-cells = <&eth1_addr>;
32 nvmem-cell-names = "address";
54 nvmem-cells = <&eth1_addr>;
55 nvmem-cell-names = "address";
70 nvmem-cells = <&eth1_addr>;
71 nvmem-cell-names = "address";
/linux/arch/arm/boot/dts/broadcom/
H A Dbcm47094-asus-rt-ac3100.dts16 #nvmem-cell-cells = <1>;
22 nvmem-cells = <&et0macaddr 0>;
23 nvmem-cell-names = "mac-address";
27 nvmem-cells = <&et0macaddr 1>;
28 nvmem-cell-names = "mac-address";
32 nvmem-cells = <&et0macaddr 2>;
33 nvmem-cell-names = "mac-address";
/linux/drivers/rtc/
H A Dnvmem.c3 * RTC subsystem, nvmem interface
10 #include <linux/nvmem-consumer.h>
17 struct nvmem_device *nvmem; in devm_rtc_nvmem_register() local
25 nvmem = devm_nvmem_register(dev, nvmem_config); in devm_rtc_nvmem_register()
26 if (IS_ERR(nvmem)) in devm_rtc_nvmem_register()
27 dev_err(dev, "failed to register nvmem device for RTC\n"); in devm_rtc_nvmem_register()
29 return PTR_ERR_OR_ZERO(nvmem); in devm_rtc_nvmem_register()
/linux/Documentation/devicetree/bindings/phy/
H A Dsunplus,sp7021-usb2-phy.yaml36 nvmem-cell-names:
37 description: names corresponding to the nvmem cells of disconnect voltage
40 nvmem-cells:
41 description: nvmem cell address of disconnect voltage
55 - nvmem-cell-names
56 - nvmem-cells
70 nvmem-cell-names = "disc_vol";
71 nvmem-cells = <&disc_vol>;
/linux/Documentation/devicetree/bindings/soc/imx/
H A Dimx8m-soc.yaml51 nvmem-cells:
53 description: Phandle to the SOC Unique ID provided by a nvmem node
55 nvmem-cell-names:
60 - nvmem-cells
61 - nvmem-cell-names
81 nvmem-cells = <&imx8mm_uid>;
82 nvmem-cell-names = "soc_unique_id";
/linux/Documentation/devicetree/bindings/soc/mediatek/
H A Dmtk-svs.yaml44 nvmem-cells:
47 Phandle to the calibration data provided by a nvmem device.
52 nvmem-cell-names:
70 - nvmem-cells
71 - nvmem-cell-names
91 nvmem-cells = <&svs_calibration>, <&thermal_calibration>;
92 nvmem-cell-names = "svs-calibration-data", "t-calibration-data";

12345678910>>...13