Message ID | 20220830134059.18744-2-zajec5@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [V2,1/2] nvmem: prefix all symbols with NVMEM_ | expand |
On 30/08/2022 14:40, Rafał Miłecki wrote: > From: Rafał Miłecki <rafal@milecki.pl> > > 1. Match what most subsystems do > 2. Simplify maintenance a bit > 3. Reduce amount of conflicts for new drivers patches > > While at it unify indent level in Makefile. > > Signed-off-by: Rafał Miłecki <rafal@milecki.pl> Applied thanks, --Srini > --- > drivers/nvmem/Kconfig | 300 +++++++++++++++++++++-------------------- > drivers/nvmem/Makefile | 114 ++++++++-------- > 2 files changed, 208 insertions(+), 206 deletions(-) > > diff --git a/drivers/nvmem/Kconfig b/drivers/nvmem/Kconfig > index 691375c13381..7f2557934834 100644 > --- a/drivers/nvmem/Kconfig > +++ b/drivers/nvmem/Kconfig > @@ -21,6 +21,40 @@ config NVMEM_SYSFS > This interface is mostly used by userspace applications to > read/write directly into nvmem. > > +# Devices > + > +config NVMEM_APPLE_EFUSES > + tristate "Apple eFuse support" > + depends on ARCH_APPLE || COMPILE_TEST > + default ARCH_APPLE > + help > + Say y here to enable support for reading eFuses on Apple SoCs > + such as the M1. These are e.g. used to store factory programmed > + calibration data required for the PCIe or the USB-C PHY. > + > + This driver can also be built as a module. If so, the module will > + be called nvmem-apple-efuses. > + > +config NVMEM_BCM_OCOTP > + tristate "Broadcom On-Chip OTP Controller support" > + depends on ARCH_BCM_IPROC || COMPILE_TEST > + depends on HAS_IOMEM > + default ARCH_BCM_IPROC > + help > + Say y here to enable read/write access to the Broadcom OTP > + controller. > + > + This driver can also be built as a module. If so, the module > + will be called nvmem-bcm-ocotp. > + > +config NVMEM_BRCM_NVRAM > + tristate "Broadcom's NVRAM support" > + depends on ARCH_BCM_5301X || COMPILE_TEST > + depends on HAS_IOMEM > + help > + This driver provides support for Broadcom's NVRAM that can be accessed > + using I/O mapping. > + > config NVMEM_IMX_IIM > tristate "i.MX IC Identification Module support" > depends on ARCH_MXC || COMPILE_TEST > @@ -64,6 +98,19 @@ config NVMEM_JZ4780_EFUSE > To compile this driver as a module, choose M here: the module > will be called nvmem_jz4780_efuse. > > +config NVMEM_LAYERSCAPE_SFP > + tristate "Layerscape SFP (Security Fuse Processor) support" > + depends on ARCH_LAYERSCAPE || COMPILE_TEST > + depends on HAS_IOMEM > + select REGMAP_MMIO > + help > + This driver provides support to read the eFuses on Freescale > + Layerscape SoC's. For example, the vendor provides a per part > + unique ID there. > + > + This driver can also be built as a module. If so, the module > + will be called layerscape-sfp. > + > config NVMEM_LPC18XX_EEPROM > tristate "NXP LPC18XX EEPROM Memory Support" > depends on ARCH_LPC18XX || COMPILE_TEST > @@ -84,17 +131,32 @@ config NVMEM_LPC18XX_OTP > To compile this driver as a module, choose M here: the module > will be called nvmem_lpc18xx_otp. > > -config NVMEM_MXS_OCOTP > - tristate "Freescale MXS On-Chip OTP Memory Support" > - depends on ARCH_MXS || COMPILE_TEST > - depends on HAS_IOMEM > +config NVMEM_MESON_EFUSE > + tristate "Amlogic Meson GX eFuse Support" > + depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM > help > - If you say Y here, you will get readonly access to the > - One Time Programmable memory pages that are stored > - on the Freescale i.MX23/i.MX28 processor. > + This is a driver to retrieve specific values from the eFuse found on > + the Amlogic Meson GX SoCs. > > This driver can also be built as a module. If so, the module > - will be called nvmem-mxs-ocotp. > + will be called nvmem_meson_efuse. > + > +config NVMEM_MESON_MX_EFUSE > + tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support" > + depends on ARCH_MESON || COMPILE_TEST > + help > + This is a driver to retrieve specific values from the eFuse found on > + the Amlogic Meson6, Meson8 and Meson8b SoCs. > + > + This driver can also be built as a module. If so, the module > + will be called nvmem_meson_mx_efuse. > + > +config NVMEM_MICROCHIP_OTPC > + tristate "Microchip OTPC support" > + depends on ARCH_AT91 || COMPILE_TEST > + help > + This driver enable the OTP controller available on Microchip SAMA7G5 > + SoCs. It controlls the access to the OTP memory connected to it. > > config NVMEM_MTK_EFUSE > tristate "Mediatek SoCs EFUSE support" > @@ -107,12 +169,17 @@ config NVMEM_MTK_EFUSE > This driver can also be built as a module. If so, the module > will be called efuse-mtk. > > -config NVMEM_MICROCHIP_OTPC > - tristate "Microchip OTPC support" > - depends on ARCH_AT91 || COMPILE_TEST > +config NVMEM_MXS_OCOTP > + tristate "Freescale MXS On-Chip OTP Memory Support" > + depends on ARCH_MXS || COMPILE_TEST > + depends on HAS_IOMEM > help > - This driver enable the OTP controller available on Microchip SAMA7G5 > - SoCs. It controlls the access to the OTP memory connected to it. > + If you say Y here, you will get readonly access to the > + One Time Programmable memory pages that are stored > + on the Freescale i.MX23/i.MX28 processor. > + > + This driver can also be built as a module. If so, the module > + will be called nvmem-mxs-ocotp. > > config NVMEM_NINTENDO_OTP > tristate "Nintendo Wii and Wii U OTP Support" > @@ -137,13 +204,21 @@ config NVMEM_QCOM_QFPROM > This driver can also be built as a module. If so, the module > will be called nvmem_qfprom. > > -config NVMEM_SPMI_SDAM > - tristate "SPMI SDAM Support" > - depends on SPMI > +config NVMEM_RAVE_SP_EEPROM > + tristate "Rave SP EEPROM Support" > + depends on RAVE_SP_CORE > help > - This driver supports the Shared Direct Access Memory Module on > - Qualcomm Technologies, Inc. PMICs. It provides the clients > - an interface to read/write to the SDAM module's shared memory. > + Say y here to enable Rave SP EEPROM support. > + > +config NVMEM_RMEM > + tristate "Reserved Memory Based Driver Support" > + depends on HAS_IOMEM > + help > + This driver maps reserved memory into an nvmem device. It might be > + useful to expose information left by firmware in memory. > + > + This driver can also be built as a module. If so, the module > + will be called nvmem-rmem. > > config NVMEM_ROCKCHIP_EFUSE > tristate "Rockchip eFuse Support" > @@ -167,79 +242,16 @@ config NVMEM_ROCKCHIP_OTP > This driver can also be built as a module. If so, the module > will be called nvmem_rockchip_otp. > > -config NVMEM_BCM_OCOTP > - tristate "Broadcom On-Chip OTP Controller support" > - depends on ARCH_BCM_IPROC || COMPILE_TEST > - depends on HAS_IOMEM > - default ARCH_BCM_IPROC > - help > - Say y here to enable read/write access to the Broadcom OTP > - controller. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem-bcm-ocotp. > - > -config NVMEM_STM32_ROMEM > - tristate "STMicroelectronics STM32 factory-programmed memory support" > - depends on ARCH_STM32 || COMPILE_TEST > - help > - Say y here to enable read-only access for STMicroelectronics STM32 > - factory-programmed memory area. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem-stm32-romem. > - > -config NVMEM_SUNXI_SID > - tristate "Allwinner SoCs SID support" > - depends on ARCH_SUNXI > - help > - This is a driver for the 'security ID' available on various Allwinner > - devices. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem_sunxi_sid. > - > -config NVMEM_UNIPHIER_EFUSE > - tristate "UniPhier SoCs eFuse support" > - depends on ARCH_UNIPHIER || COMPILE_TEST > - depends on HAS_IOMEM > - help > - This is a simple driver to dump specified values of UniPhier SoC > - from eFuse. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem-uniphier-efuse. > - > -config NVMEM_VF610_OCOTP > - tristate "VF610 SoC OCOTP support" > - depends on SOC_VF610 || COMPILE_TEST > +config NVMEM_SC27XX_EFUSE > + tristate "Spreadtrum SC27XX eFuse Support" > + depends on MFD_SC27XX_PMIC || COMPILE_TEST > depends on HAS_IOMEM > help > - This is a driver for the 'OCOTP' peripheral available on Vybrid > - devices like VF5xx and VF6xx. > - > - This driver can also be build as a module. If so, the module will > - be called nvmem-vf610-ocotp. > - > -config NVMEM_MESON_EFUSE > - tristate "Amlogic Meson GX eFuse Support" > - depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM > - help > - This is a driver to retrieve specific values from the eFuse found on > - the Amlogic Meson GX SoCs. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem_meson_efuse. > - > -config NVMEM_MESON_MX_EFUSE > - tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support" > - depends on ARCH_MESON || COMPILE_TEST > - help > - This is a driver to retrieve specific values from the eFuse found on > - the Amlogic Meson6, Meson8 and Meson8b SoCs. > + This is a simple driver to dump specified values of Spreadtrum > + SC27XX PMICs from eFuse. > > This driver can also be built as a module. If so, the module > - will be called nvmem_meson_mx_efuse. > + will be called nvmem-sc27xx-efuse. > > config NVMEM_SNVS_LPGPR > tristate "Support for Low Power General Purpose Register" > @@ -251,32 +263,13 @@ config NVMEM_SNVS_LPGPR > This driver can also be built as a module. If so, the module > will be called nvmem-snvs-lpgpr. > > -config NVMEM_RAVE_SP_EEPROM > - tristate "Rave SP EEPROM Support" > - depends on RAVE_SP_CORE > - help > - Say y here to enable Rave SP EEPROM support. > - > -config NVMEM_SC27XX_EFUSE > - tristate "Spreadtrum SC27XX eFuse Support" > - depends on MFD_SC27XX_PMIC || COMPILE_TEST > - depends on HAS_IOMEM > - help > - This is a simple driver to dump specified values of Spreadtrum > - SC27XX PMICs from eFuse. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem-sc27xx-efuse. > - > -config NVMEM_ZYNQMP > - bool "Xilinx ZYNQMP SoC nvmem firmware support" > - depends on ARCH_ZYNQMP > +config NVMEM_SPMI_SDAM > + tristate "SPMI SDAM Support" > + depends on SPMI > help > - This is a driver to access hardware related data like > - soc revision, IDCODE... etc by using the firmware > - interface. > - > - If sure, say yes. If unsure, say no. > + This driver supports the Shared Direct Access Memory Module on > + Qualcomm Technologies, Inc. PMICs. It provides the clients > + an interface to read/write to the SDAM module's shared memory. > > config NVMEM_SPRD_EFUSE > tristate "Spreadtrum SoC eFuse Support" > @@ -289,36 +282,15 @@ config NVMEM_SPRD_EFUSE > This driver can also be built as a module. If so, the module > will be called nvmem-sprd-efuse. > > -config NVMEM_RMEM > - tristate "Reserved Memory Based Driver Support" > - depends on HAS_IOMEM > - help > - This driver maps reserved memory into an nvmem device. It might be > - useful to expose information left by firmware in memory. > - > - This driver can also be built as a module. If so, the module > - will be called nvmem-rmem. > - > -config NVMEM_BRCM_NVRAM > - tristate "Broadcom's NVRAM support" > - depends on ARCH_BCM_5301X || COMPILE_TEST > - depends on HAS_IOMEM > - help > - This driver provides support for Broadcom's NVRAM that can be accessed > - using I/O mapping. > - > -config NVMEM_LAYERSCAPE_SFP > - tristate "Layerscape SFP (Security Fuse Processor) support" > - depends on ARCH_LAYERSCAPE || COMPILE_TEST > - depends on HAS_IOMEM > - select REGMAP_MMIO > +config NVMEM_STM32_ROMEM > + tristate "STMicroelectronics STM32 factory-programmed memory support" > + depends on ARCH_STM32 || COMPILE_TEST > help > - This driver provides support to read the eFuses on Freescale > - Layerscape SoC's. For example, the vendor provides a per part > - unique ID there. > + Say y here to enable read-only access for STMicroelectronics STM32 > + factory-programmed memory area. > > This driver can also be built as a module. If so, the module > - will be called layerscape-sfp. > + will be called nvmem-stm32-romem. > > config NVMEM_SUNPLUS_OCOTP > tristate "Sunplus SoC OTP support" > @@ -332,17 +304,15 @@ config NVMEM_SUNPLUS_OCOTP > This driver can also be built as a module. If so, the module > will be called nvmem-sunplus-ocotp. > > -config NVMEM_APPLE_EFUSES > - tristate "Apple eFuse support" > - depends on ARCH_APPLE || COMPILE_TEST > - default ARCH_APPLE > +config NVMEM_SUNXI_SID > + tristate "Allwinner SoCs SID support" > + depends on ARCH_SUNXI > help > - Say y here to enable support for reading eFuses on Apple SoCs > - such as the M1. These are e.g. used to store factory programmed > - calibration data required for the PCIe or the USB-C PHY. > + This is a driver for the 'security ID' available on various Allwinner > + devices. > > - This driver can also be built as a module. If so, the module will > - be called nvmem-apple-efuses. > + This driver can also be built as a module. If so, the module > + will be called nvmem_sunxi_sid. > > config NVMEM_U_BOOT_ENV > tristate "U-Boot environment variables support" > @@ -357,4 +327,36 @@ config NVMEM_U_BOOT_ENV > > If compiled as module it will be called nvmem_u-boot-env. > > +config NVMEM_UNIPHIER_EFUSE > + tristate "UniPhier SoCs eFuse support" > + depends on ARCH_UNIPHIER || COMPILE_TEST > + depends on HAS_IOMEM > + help > + This is a simple driver to dump specified values of UniPhier SoC > + from eFuse. > + > + This driver can also be built as a module. If so, the module > + will be called nvmem-uniphier-efuse. > + > +config NVMEM_VF610_OCOTP > + tristate "VF610 SoC OCOTP support" > + depends on SOC_VF610 || COMPILE_TEST > + depends on HAS_IOMEM > + help > + This is a driver for the 'OCOTP' peripheral available on Vybrid > + devices like VF5xx and VF6xx. > + > + This driver can also be build as a module. If so, the module will > + be called nvmem-vf610-ocotp. > + > +config NVMEM_ZYNQMP > + bool "Xilinx ZYNQMP SoC nvmem firmware support" > + depends on ARCH_ZYNQMP > + help > + This is a driver to access hardware related data like > + soc revision, IDCODE... etc by using the firmware > + interface. > + > + If sure, say yes. If unsure, say no. > + > endif > diff --git a/drivers/nvmem/Makefile b/drivers/nvmem/Makefile > index 7ac988c6966e..bac799b2fa8d 100644 > --- a/drivers/nvmem/Makefile > +++ b/drivers/nvmem/Makefile > @@ -7,67 +7,67 @@ obj-$(CONFIG_NVMEM) += nvmem_core.o > nvmem_core-y := core.o > > # Devices > -obj-$(CONFIG_NVMEM_BCM_OCOTP) += nvmem-bcm-ocotp.o > -nvmem-bcm-ocotp-y := bcm-ocotp.o > -obj-$(CONFIG_NVMEM_IMX_IIM) += nvmem-imx-iim.o > -nvmem-imx-iim-y := imx-iim.o > -obj-$(CONFIG_NVMEM_IMX_OCOTP) += nvmem-imx-ocotp.o > -nvmem-imx-ocotp-y := imx-ocotp.o > +obj-$(CONFIG_NVMEM_APPLE_EFUSES) += nvmem-apple-efuses.o > +nvmem-apple-efuses-y := apple-efuses.o > +obj-$(CONFIG_NVMEM_BCM_OCOTP) += nvmem-bcm-ocotp.o > +nvmem-bcm-ocotp-y := bcm-ocotp.o > +obj-$(CONFIG_NVMEM_BRCM_NVRAM) += nvmem_brcm_nvram.o > +nvmem_brcm_nvram-y := brcm_nvram.o > +obj-$(CONFIG_NVMEM_IMX_IIM) += nvmem-imx-iim.o > +nvmem-imx-iim-y := imx-iim.o > +obj-$(CONFIG_NVMEM_IMX_OCOTP) += nvmem-imx-ocotp.o > +nvmem-imx-ocotp-y := imx-ocotp.o > obj-$(CONFIG_NVMEM_IMX_OCOTP_SCU) += nvmem-imx-ocotp-scu.o > -nvmem-imx-ocotp-scu-y := imx-ocotp-scu.o > -obj-$(CONFIG_NVMEM_JZ4780_EFUSE) += nvmem_jz4780_efuse.o > -nvmem_jz4780_efuse-y := jz4780-efuse.o > +nvmem-imx-ocotp-scu-y := imx-ocotp-scu.o > +obj-$(CONFIG_NVMEM_JZ4780_EFUSE) += nvmem_jz4780_efuse.o > +nvmem_jz4780_efuse-y := jz4780-efuse.o > +obj-$(CONFIG_NVMEM_LAYERSCAPE_SFP) += nvmem-layerscape-sfp.o > +nvmem-layerscape-sfp-y := layerscape-sfp.o > obj-$(CONFIG_NVMEM_LPC18XX_EEPROM) += nvmem_lpc18xx_eeprom.o > -nvmem_lpc18xx_eeprom-y := lpc18xx_eeprom.o > -obj-$(CONFIG_NVMEM_LPC18XX_OTP) += nvmem_lpc18xx_otp.o > -nvmem_lpc18xx_otp-y := lpc18xx_otp.o > -obj-$(CONFIG_NVMEM_MXS_OCOTP) += nvmem-mxs-ocotp.o > -nvmem-mxs-ocotp-y := mxs-ocotp.o > -obj-$(CONFIG_NVMEM_NINTENDO_OTP) += nvmem-nintendo-otp.o > -nvmem-nintendo-otp-y := nintendo-otp.o > +nvmem_lpc18xx_eeprom-y := lpc18xx_eeprom.o > +obj-$(CONFIG_NVMEM_LPC18XX_OTP) += nvmem_lpc18xx_otp.o > +nvmem_lpc18xx_otp-y := lpc18xx_otp.o > +obj-$(CONFIG_NVMEM_MESON_EFUSE) += nvmem_meson_efuse.o > +nvmem_meson_efuse-y := meson-efuse.o > +obj-$(CONFIG_NVMEM_MESON_MX_EFUSE) += nvmem_meson_mx_efuse.o > +nvmem_meson_mx_efuse-y := meson-mx-efuse.o > +obj-$(CONFIG_NVMEM_MICROCHIP_OTPC) += nvmem-microchip-otpc.o > +nvmem-microchip-otpc-y := microchip-otpc.o > obj-$(CONFIG_NVMEM_MTK_EFUSE) += nvmem_mtk-efuse.o > -nvmem_mtk-efuse-y := mtk-efuse.o > -obj-$(CONFIG_NVMEM_QCOM_QFPROM) += nvmem_qfprom.o > -nvmem_qfprom-y := qfprom.o > -obj-$(CONFIG_NVMEM_SPMI_SDAM) += nvmem_qcom-spmi-sdam.o > -nvmem_qcom-spmi-sdam-y += qcom-spmi-sdam.o > +nvmem_mtk-efuse-y := mtk-efuse.o > +obj-$(CONFIG_NVMEM_MXS_OCOTP) += nvmem-mxs-ocotp.o > +nvmem-mxs-ocotp-y := mxs-ocotp.o > +obj-$(CONFIG_NVMEM_NINTENDO_OTP) += nvmem-nintendo-otp.o > +nvmem-nintendo-otp-y := nintendo-otp.o > +obj-$(CONFIG_NVMEM_QCOM_QFPROM) += nvmem_qfprom.o > +nvmem_qfprom-y := qfprom.o > +obj-$(CONFIG_NVMEM_RAVE_SP_EEPROM) += nvmem-rave-sp-eeprom.o > +nvmem-rave-sp-eeprom-y := rave-sp-eeprom.o > +obj-$(CONFIG_NVMEM_RMEM) += nvmem-rmem.o > +nvmem-rmem-y := rmem.o > obj-$(CONFIG_NVMEM_ROCKCHIP_EFUSE) += nvmem_rockchip_efuse.o > -nvmem_rockchip_efuse-y := rockchip-efuse.o > +nvmem_rockchip_efuse-y := rockchip-efuse.o > obj-$(CONFIG_NVMEM_ROCKCHIP_OTP) += nvmem-rockchip-otp.o > -nvmem-rockchip-otp-y := rockchip-otp.o > -obj-$(CONFIG_NVMEM_SUNXI_SID) += nvmem_sunxi_sid.o > -nvmem_stm32_romem-y := stm32-romem.o > -obj-$(CONFIG_NVMEM_STM32_ROMEM) += nvmem_stm32_romem.o > -nvmem_sunxi_sid-y := sunxi_sid.o > -obj-$(CONFIG_NVMEM_UNIPHIER_EFUSE) += nvmem-uniphier-efuse.o > -nvmem-uniphier-efuse-y := uniphier-efuse.o > -obj-$(CONFIG_NVMEM_VF610_OCOTP) += nvmem-vf610-ocotp.o > -nvmem-vf610-ocotp-y := vf610-ocotp.o > -obj-$(CONFIG_NVMEM_MESON_EFUSE) += nvmem_meson_efuse.o > -nvmem_meson_efuse-y := meson-efuse.o > -obj-$(CONFIG_NVMEM_MESON_MX_EFUSE) += nvmem_meson_mx_efuse.o > -nvmem_meson_mx_efuse-y := meson-mx-efuse.o > -obj-$(CONFIG_NVMEM_SNVS_LPGPR) += nvmem_snvs_lpgpr.o > -nvmem_snvs_lpgpr-y := snvs_lpgpr.o > -obj-$(CONFIG_NVMEM_RAVE_SP_EEPROM) += nvmem-rave-sp-eeprom.o > -nvmem-rave-sp-eeprom-y := rave-sp-eeprom.o > +nvmem-rockchip-otp-y := rockchip-otp.o > obj-$(CONFIG_NVMEM_SC27XX_EFUSE) += nvmem-sc27xx-efuse.o > -nvmem-sc27xx-efuse-y := sc27xx-efuse.o > -obj-$(CONFIG_NVMEM_ZYNQMP) += nvmem_zynqmp_nvmem.o > -nvmem_zynqmp_nvmem-y := zynqmp_nvmem.o > -obj-$(CONFIG_NVMEM_SPRD_EFUSE) += nvmem_sprd_efuse.o > -nvmem_sprd_efuse-y := sprd-efuse.o > -obj-$(CONFIG_NVMEM_RMEM) += nvmem-rmem.o > -nvmem-rmem-y := rmem.o > -obj-$(CONFIG_NVMEM_BRCM_NVRAM) += nvmem_brcm_nvram.o > -nvmem_brcm_nvram-y := brcm_nvram.o > -obj-$(CONFIG_NVMEM_LAYERSCAPE_SFP) += nvmem-layerscape-sfp.o > -nvmem-layerscape-sfp-y := layerscape-sfp.o > +nvmem-sc27xx-efuse-y := sc27xx-efuse.o > +obj-$(CONFIG_NVMEM_SNVS_LPGPR) += nvmem_snvs_lpgpr.o > +nvmem_snvs_lpgpr-y := snvs_lpgpr.o > +obj-$(CONFIG_NVMEM_SPMI_SDAM) += nvmem_qcom-spmi-sdam.o > +nvmem_qcom-spmi-sdam-y += qcom-spmi-sdam.o > +obj-$(CONFIG_NVMEM_SPRD_EFUSE) += nvmem_sprd_efuse.o > +nvmem_sprd_efuse-y := sprd-efuse.o > +obj-$(CONFIG_NVMEM_STM32_ROMEM) += nvmem_stm32_romem.o > +nvmem_stm32_romem-y := stm32-romem.o > obj-$(CONFIG_NVMEM_SUNPLUS_OCOTP) += nvmem_sunplus_ocotp.o > -nvmem_sunplus_ocotp-y := sunplus-ocotp.o > -obj-$(CONFIG_NVMEM_APPLE_EFUSES) += nvmem-apple-efuses.o > -nvmem-apple-efuses-y := apple-efuses.o > -obj-$(CONFIG_NVMEM_MICROCHIP_OTPC) += nvmem-microchip-otpc.o > -nvmem-microchip-otpc-y := microchip-otpc.o > -obj-$(CONFIG_NVMEM_U_BOOT_ENV) += nvmem_u-boot-env.o > -nvmem_u-boot-env-y := u-boot-env.o > +nvmem_sunplus_ocotp-y := sunplus-ocotp.o > +obj-$(CONFIG_NVMEM_SUNXI_SID) += nvmem_sunxi_sid.o > +nvmem_sunxi_sid-y := sunxi_sid.o > +obj-$(CONFIG_NVMEM_U_BOOT_ENV) += nvmem_u-boot-env.o > +nvmem_u-boot-env-y := u-boot-env.o > +obj-$(CONFIG_NVMEM_UNIPHIER_EFUSE) += nvmem-uniphier-efuse.o > +nvmem-uniphier-efuse-y := uniphier-efuse.o > +obj-$(CONFIG_NVMEM_VF610_OCOTP) += nvmem-vf610-ocotp.o > +nvmem-vf610-ocotp-y := vf610-ocotp.o > +obj-$(CONFIG_NVMEM_ZYNQMP) += nvmem_zynqmp_nvmem.o > +nvmem_zynqmp_nvmem-y := zynqmp_nvmem.o
diff --git a/drivers/nvmem/Kconfig b/drivers/nvmem/Kconfig index 691375c13381..7f2557934834 100644 --- a/drivers/nvmem/Kconfig +++ b/drivers/nvmem/Kconfig @@ -21,6 +21,40 @@ config NVMEM_SYSFS This interface is mostly used by userspace applications to read/write directly into nvmem. +# Devices + +config NVMEM_APPLE_EFUSES + tristate "Apple eFuse support" + depends on ARCH_APPLE || COMPILE_TEST + default ARCH_APPLE + help + Say y here to enable support for reading eFuses on Apple SoCs + such as the M1. These are e.g. used to store factory programmed + calibration data required for the PCIe or the USB-C PHY. + + This driver can also be built as a module. If so, the module will + be called nvmem-apple-efuses. + +config NVMEM_BCM_OCOTP + tristate "Broadcom On-Chip OTP Controller support" + depends on ARCH_BCM_IPROC || COMPILE_TEST + depends on HAS_IOMEM + default ARCH_BCM_IPROC + help + Say y here to enable read/write access to the Broadcom OTP + controller. + + This driver can also be built as a module. If so, the module + will be called nvmem-bcm-ocotp. + +config NVMEM_BRCM_NVRAM + tristate "Broadcom's NVRAM support" + depends on ARCH_BCM_5301X || COMPILE_TEST + depends on HAS_IOMEM + help + This driver provides support for Broadcom's NVRAM that can be accessed + using I/O mapping. + config NVMEM_IMX_IIM tristate "i.MX IC Identification Module support" depends on ARCH_MXC || COMPILE_TEST @@ -64,6 +98,19 @@ config NVMEM_JZ4780_EFUSE To compile this driver as a module, choose M here: the module will be called nvmem_jz4780_efuse. +config NVMEM_LAYERSCAPE_SFP + tristate "Layerscape SFP (Security Fuse Processor) support" + depends on ARCH_LAYERSCAPE || COMPILE_TEST + depends on HAS_IOMEM + select REGMAP_MMIO + help + This driver provides support to read the eFuses on Freescale + Layerscape SoC's. For example, the vendor provides a per part + unique ID there. + + This driver can also be built as a module. If so, the module + will be called layerscape-sfp. + config NVMEM_LPC18XX_EEPROM tristate "NXP LPC18XX EEPROM Memory Support" depends on ARCH_LPC18XX || COMPILE_TEST @@ -84,17 +131,32 @@ config NVMEM_LPC18XX_OTP To compile this driver as a module, choose M here: the module will be called nvmem_lpc18xx_otp. -config NVMEM_MXS_OCOTP - tristate "Freescale MXS On-Chip OTP Memory Support" - depends on ARCH_MXS || COMPILE_TEST - depends on HAS_IOMEM +config NVMEM_MESON_EFUSE + tristate "Amlogic Meson GX eFuse Support" + depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM help - If you say Y here, you will get readonly access to the - One Time Programmable memory pages that are stored - on the Freescale i.MX23/i.MX28 processor. + This is a driver to retrieve specific values from the eFuse found on + the Amlogic Meson GX SoCs. This driver can also be built as a module. If so, the module - will be called nvmem-mxs-ocotp. + will be called nvmem_meson_efuse. + +config NVMEM_MESON_MX_EFUSE + tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support" + depends on ARCH_MESON || COMPILE_TEST + help + This is a driver to retrieve specific values from the eFuse found on + the Amlogic Meson6, Meson8 and Meson8b SoCs. + + This driver can also be built as a module. If so, the module + will be called nvmem_meson_mx_efuse. + +config NVMEM_MICROCHIP_OTPC + tristate "Microchip OTPC support" + depends on ARCH_AT91 || COMPILE_TEST + help + This driver enable the OTP controller available on Microchip SAMA7G5 + SoCs. It controlls the access to the OTP memory connected to it. config NVMEM_MTK_EFUSE tristate "Mediatek SoCs EFUSE support" @@ -107,12 +169,17 @@ config NVMEM_MTK_EFUSE This driver can also be built as a module. If so, the module will be called efuse-mtk. -config NVMEM_MICROCHIP_OTPC - tristate "Microchip OTPC support" - depends on ARCH_AT91 || COMPILE_TEST +config NVMEM_MXS_OCOTP + tristate "Freescale MXS On-Chip OTP Memory Support" + depends on ARCH_MXS || COMPILE_TEST + depends on HAS_IOMEM help - This driver enable the OTP controller available on Microchip SAMA7G5 - SoCs. It controlls the access to the OTP memory connected to it. + If you say Y here, you will get readonly access to the + One Time Programmable memory pages that are stored + on the Freescale i.MX23/i.MX28 processor. + + This driver can also be built as a module. If so, the module + will be called nvmem-mxs-ocotp. config NVMEM_NINTENDO_OTP tristate "Nintendo Wii and Wii U OTP Support" @@ -137,13 +204,21 @@ config NVMEM_QCOM_QFPROM This driver can also be built as a module. If so, the module will be called nvmem_qfprom. -config NVMEM_SPMI_SDAM - tristate "SPMI SDAM Support" - depends on SPMI +config NVMEM_RAVE_SP_EEPROM + tristate "Rave SP EEPROM Support" + depends on RAVE_SP_CORE help - This driver supports the Shared Direct Access Memory Module on - Qualcomm Technologies, Inc. PMICs. It provides the clients - an interface to read/write to the SDAM module's shared memory. + Say y here to enable Rave SP EEPROM support. + +config NVMEM_RMEM + tristate "Reserved Memory Based Driver Support" + depends on HAS_IOMEM + help + This driver maps reserved memory into an nvmem device. It might be + useful to expose information left by firmware in memory. + + This driver can also be built as a module. If so, the module + will be called nvmem-rmem. config NVMEM_ROCKCHIP_EFUSE tristate "Rockchip eFuse Support" @@ -167,79 +242,16 @@ config NVMEM_ROCKCHIP_OTP This driver can also be built as a module. If so, the module will be called nvmem_rockchip_otp. -config NVMEM_BCM_OCOTP - tristate "Broadcom On-Chip OTP Controller support" - depends on ARCH_BCM_IPROC || COMPILE_TEST - depends on HAS_IOMEM - default ARCH_BCM_IPROC - help - Say y here to enable read/write access to the Broadcom OTP - controller. - - This driver can also be built as a module. If so, the module - will be called nvmem-bcm-ocotp. - -config NVMEM_STM32_ROMEM - tristate "STMicroelectronics STM32 factory-programmed memory support" - depends on ARCH_STM32 || COMPILE_TEST - help - Say y here to enable read-only access for STMicroelectronics STM32 - factory-programmed memory area. - - This driver can also be built as a module. If so, the module - will be called nvmem-stm32-romem. - -config NVMEM_SUNXI_SID - tristate "Allwinner SoCs SID support" - depends on ARCH_SUNXI - help - This is a driver for the 'security ID' available on various Allwinner - devices. - - This driver can also be built as a module. If so, the module - will be called nvmem_sunxi_sid. - -config NVMEM_UNIPHIER_EFUSE - tristate "UniPhier SoCs eFuse support" - depends on ARCH_UNIPHIER || COMPILE_TEST - depends on HAS_IOMEM - help - This is a simple driver to dump specified values of UniPhier SoC - from eFuse. - - This driver can also be built as a module. If so, the module - will be called nvmem-uniphier-efuse. - -config NVMEM_VF610_OCOTP - tristate "VF610 SoC OCOTP support" - depends on SOC_VF610 || COMPILE_TEST +config NVMEM_SC27XX_EFUSE + tristate "Spreadtrum SC27XX eFuse Support" + depends on MFD_SC27XX_PMIC || COMPILE_TEST depends on HAS_IOMEM help - This is a driver for the 'OCOTP' peripheral available on Vybrid - devices like VF5xx and VF6xx. - - This driver can also be build as a module. If so, the module will - be called nvmem-vf610-ocotp. - -config NVMEM_MESON_EFUSE - tristate "Amlogic Meson GX eFuse Support" - depends on (ARCH_MESON || COMPILE_TEST) && MESON_SM - help - This is a driver to retrieve specific values from the eFuse found on - the Amlogic Meson GX SoCs. - - This driver can also be built as a module. If so, the module - will be called nvmem_meson_efuse. - -config NVMEM_MESON_MX_EFUSE - tristate "Amlogic Meson6/Meson8/Meson8b eFuse Support" - depends on ARCH_MESON || COMPILE_TEST - help - This is a driver to retrieve specific values from the eFuse found on - the Amlogic Meson6, Meson8 and Meson8b SoCs. + This is a simple driver to dump specified values of Spreadtrum + SC27XX PMICs from eFuse. This driver can also be built as a module. If so, the module - will be called nvmem_meson_mx_efuse. + will be called nvmem-sc27xx-efuse. config NVMEM_SNVS_LPGPR tristate "Support for Low Power General Purpose Register" @@ -251,32 +263,13 @@ config NVMEM_SNVS_LPGPR This driver can also be built as a module. If so, the module will be called nvmem-snvs-lpgpr. -config NVMEM_RAVE_SP_EEPROM - tristate "Rave SP EEPROM Support" - depends on RAVE_SP_CORE - help - Say y here to enable Rave SP EEPROM support. - -config NVMEM_SC27XX_EFUSE - tristate "Spreadtrum SC27XX eFuse Support" - depends on MFD_SC27XX_PMIC || COMPILE_TEST - depends on HAS_IOMEM - help - This is a simple driver to dump specified values of Spreadtrum - SC27XX PMICs from eFuse. - - This driver can also be built as a module. If so, the module - will be called nvmem-sc27xx-efuse. - -config NVMEM_ZYNQMP - bool "Xilinx ZYNQMP SoC nvmem firmware support" - depends on ARCH_ZYNQMP +config NVMEM_SPMI_SDAM + tristate "SPMI SDAM Support" + depends on SPMI help - This is a driver to access hardware related data like - soc revision, IDCODE... etc by using the firmware - interface. - - If sure, say yes. If unsure, say no. + This driver supports the Shared Direct Access Memory Module on + Qualcomm Technologies, Inc. PMICs. It provides the clients + an interface to read/write to the SDAM module's shared memory. config NVMEM_SPRD_EFUSE tristate "Spreadtrum SoC eFuse Support" @@ -289,36 +282,15 @@ config NVMEM_SPRD_EFUSE This driver can also be built as a module. If so, the module will be called nvmem-sprd-efuse. -config NVMEM_RMEM - tristate "Reserved Memory Based Driver Support" - depends on HAS_IOMEM - help - This driver maps reserved memory into an nvmem device. It might be - useful to expose information left by firmware in memory. - - This driver can also be built as a module. If so, the module - will be called nvmem-rmem. - -config NVMEM_BRCM_NVRAM - tristate "Broadcom's NVRAM support" - depends on ARCH_BCM_5301X || COMPILE_TEST - depends on HAS_IOMEM - help - This driver provides support for Broadcom's NVRAM that can be accessed - using I/O mapping. - -config NVMEM_LAYERSCAPE_SFP - tristate "Layerscape SFP (Security Fuse Processor) support" - depends on ARCH_LAYERSCAPE || COMPILE_TEST - depends on HAS_IOMEM - select REGMAP_MMIO +config NVMEM_STM32_ROMEM + tristate "STMicroelectronics STM32 factory-programmed memory support" + depends on ARCH_STM32 || COMPILE_TEST help - This driver provides support to read the eFuses on Freescale - Layerscape SoC's. For example, the vendor provides a per part - unique ID there. + Say y here to enable read-only access for STMicroelectronics STM32 + factory-programmed memory area. This driver can also be built as a module. If so, the module - will be called layerscape-sfp. + will be called nvmem-stm32-romem. config NVMEM_SUNPLUS_OCOTP tristate "Sunplus SoC OTP support" @@ -332,17 +304,15 @@ config NVMEM_SUNPLUS_OCOTP This driver can also be built as a module. If so, the module will be called nvmem-sunplus-ocotp. -config NVMEM_APPLE_EFUSES - tristate "Apple eFuse support" - depends on ARCH_APPLE || COMPILE_TEST - default ARCH_APPLE +config NVMEM_SUNXI_SID + tristate "Allwinner SoCs SID support" + depends on ARCH_SUNXI help - Say y here to enable support for reading eFuses on Apple SoCs - such as the M1. These are e.g. used to store factory programmed - calibration data required for the PCIe or the USB-C PHY. + This is a driver for the 'security ID' available on various Allwinner + devices. - This driver can also be built as a module. If so, the module will - be called nvmem-apple-efuses. + This driver can also be built as a module. If so, the module + will be called nvmem_sunxi_sid. config NVMEM_U_BOOT_ENV tristate "U-Boot environment variables support" @@ -357,4 +327,36 @@ config NVMEM_U_BOOT_ENV If compiled as module it will be called nvmem_u-boot-env. +config NVMEM_UNIPHIER_EFUSE + tristate "UniPhier SoCs eFuse support" + depends on ARCH_UNIPHIER || COMPILE_TEST + depends on HAS_IOMEM + help + This is a simple driver to dump specified values of UniPhier SoC + from eFuse. + + This driver can also be built as a module. If so, the module + will be called nvmem-uniphier-efuse. + +config NVMEM_VF610_OCOTP + tristate "VF610 SoC OCOTP support" + depends on SOC_VF610 || COMPILE_TEST + depends on HAS_IOMEM + help + This is a driver for the 'OCOTP' peripheral available on Vybrid + devices like VF5xx and VF6xx. + + This driver can also be build as a module. If so, the module will + be called nvmem-vf610-ocotp. + +config NVMEM_ZYNQMP + bool "Xilinx ZYNQMP SoC nvmem firmware support" + depends on ARCH_ZYNQMP + help + This is a driver to access hardware related data like + soc revision, IDCODE... etc by using the firmware + interface. + + If sure, say yes. If unsure, say no. + endif diff --git a/drivers/nvmem/Makefile b/drivers/nvmem/Makefile index 7ac988c6966e..bac799b2fa8d 100644 --- a/drivers/nvmem/Makefile +++ b/drivers/nvmem/Makefile @@ -7,67 +7,67 @@ obj-$(CONFIG_NVMEM) += nvmem_core.o nvmem_core-y := core.o # Devices -obj-$(CONFIG_NVMEM_BCM_OCOTP) += nvmem-bcm-ocotp.o -nvmem-bcm-ocotp-y := bcm-ocotp.o -obj-$(CONFIG_NVMEM_IMX_IIM) += nvmem-imx-iim.o -nvmem-imx-iim-y := imx-iim.o -obj-$(CONFIG_NVMEM_IMX_OCOTP) += nvmem-imx-ocotp.o -nvmem-imx-ocotp-y := imx-ocotp.o +obj-$(CONFIG_NVMEM_APPLE_EFUSES) += nvmem-apple-efuses.o +nvmem-apple-efuses-y := apple-efuses.o +obj-$(CONFIG_NVMEM_BCM_OCOTP) += nvmem-bcm-ocotp.o +nvmem-bcm-ocotp-y := bcm-ocotp.o +obj-$(CONFIG_NVMEM_BRCM_NVRAM) += nvmem_brcm_nvram.o +nvmem_brcm_nvram-y := brcm_nvram.o +obj-$(CONFIG_NVMEM_IMX_IIM) += nvmem-imx-iim.o +nvmem-imx-iim-y := imx-iim.o +obj-$(CONFIG_NVMEM_IMX_OCOTP) += nvmem-imx-ocotp.o +nvmem-imx-ocotp-y := imx-ocotp.o obj-$(CONFIG_NVMEM_IMX_OCOTP_SCU) += nvmem-imx-ocotp-scu.o -nvmem-imx-ocotp-scu-y := imx-ocotp-scu.o -obj-$(CONFIG_NVMEM_JZ4780_EFUSE) += nvmem_jz4780_efuse.o -nvmem_jz4780_efuse-y := jz4780-efuse.o +nvmem-imx-ocotp-scu-y := imx-ocotp-scu.o +obj-$(CONFIG_NVMEM_JZ4780_EFUSE) += nvmem_jz4780_efuse.o +nvmem_jz4780_efuse-y := jz4780-efuse.o +obj-$(CONFIG_NVMEM_LAYERSCAPE_SFP) += nvmem-layerscape-sfp.o +nvmem-layerscape-sfp-y := layerscape-sfp.o obj-$(CONFIG_NVMEM_LPC18XX_EEPROM) += nvmem_lpc18xx_eeprom.o -nvmem_lpc18xx_eeprom-y := lpc18xx_eeprom.o -obj-$(CONFIG_NVMEM_LPC18XX_OTP) += nvmem_lpc18xx_otp.o -nvmem_lpc18xx_otp-y := lpc18xx_otp.o -obj-$(CONFIG_NVMEM_MXS_OCOTP) += nvmem-mxs-ocotp.o -nvmem-mxs-ocotp-y := mxs-ocotp.o -obj-$(CONFIG_NVMEM_NINTENDO_OTP) += nvmem-nintendo-otp.o -nvmem-nintendo-otp-y := nintendo-otp.o +nvmem_lpc18xx_eeprom-y := lpc18xx_eeprom.o +obj-$(CONFIG_NVMEM_LPC18XX_OTP) += nvmem_lpc18xx_otp.o +nvmem_lpc18xx_otp-y := lpc18xx_otp.o +obj-$(CONFIG_NVMEM_MESON_EFUSE) += nvmem_meson_efuse.o +nvmem_meson_efuse-y := meson-efuse.o +obj-$(CONFIG_NVMEM_MESON_MX_EFUSE) += nvmem_meson_mx_efuse.o +nvmem_meson_mx_efuse-y := meson-mx-efuse.o +obj-$(CONFIG_NVMEM_MICROCHIP_OTPC) += nvmem-microchip-otpc.o +nvmem-microchip-otpc-y := microchip-otpc.o obj-$(CONFIG_NVMEM_MTK_EFUSE) += nvmem_mtk-efuse.o -nvmem_mtk-efuse-y := mtk-efuse.o -obj-$(CONFIG_NVMEM_QCOM_QFPROM) += nvmem_qfprom.o -nvmem_qfprom-y := qfprom.o -obj-$(CONFIG_NVMEM_SPMI_SDAM) += nvmem_qcom-spmi-sdam.o -nvmem_qcom-spmi-sdam-y += qcom-spmi-sdam.o +nvmem_mtk-efuse-y := mtk-efuse.o +obj-$(CONFIG_NVMEM_MXS_OCOTP) += nvmem-mxs-ocotp.o +nvmem-mxs-ocotp-y := mxs-ocotp.o +obj-$(CONFIG_NVMEM_NINTENDO_OTP) += nvmem-nintendo-otp.o +nvmem-nintendo-otp-y := nintendo-otp.o +obj-$(CONFIG_NVMEM_QCOM_QFPROM) += nvmem_qfprom.o +nvmem_qfprom-y := qfprom.o +obj-$(CONFIG_NVMEM_RAVE_SP_EEPROM) += nvmem-rave-sp-eeprom.o +nvmem-rave-sp-eeprom-y := rave-sp-eeprom.o +obj-$(CONFIG_NVMEM_RMEM) += nvmem-rmem.o +nvmem-rmem-y := rmem.o obj-$(CONFIG_NVMEM_ROCKCHIP_EFUSE) += nvmem_rockchip_efuse.o -nvmem_rockchip_efuse-y := rockchip-efuse.o +nvmem_rockchip_efuse-y := rockchip-efuse.o obj-$(CONFIG_NVMEM_ROCKCHIP_OTP) += nvmem-rockchip-otp.o -nvmem-rockchip-otp-y := rockchip-otp.o -obj-$(CONFIG_NVMEM_SUNXI_SID) += nvmem_sunxi_sid.o -nvmem_stm32_romem-y := stm32-romem.o -obj-$(CONFIG_NVMEM_STM32_ROMEM) += nvmem_stm32_romem.o -nvmem_sunxi_sid-y := sunxi_sid.o -obj-$(CONFIG_NVMEM_UNIPHIER_EFUSE) += nvmem-uniphier-efuse.o -nvmem-uniphier-efuse-y := uniphier-efuse.o -obj-$(CONFIG_NVMEM_VF610_OCOTP) += nvmem-vf610-ocotp.o -nvmem-vf610-ocotp-y := vf610-ocotp.o -obj-$(CONFIG_NVMEM_MESON_EFUSE) += nvmem_meson_efuse.o -nvmem_meson_efuse-y := meson-efuse.o -obj-$(CONFIG_NVMEM_MESON_MX_EFUSE) += nvmem_meson_mx_efuse.o -nvmem_meson_mx_efuse-y := meson-mx-efuse.o -obj-$(CONFIG_NVMEM_SNVS_LPGPR) += nvmem_snvs_lpgpr.o -nvmem_snvs_lpgpr-y := snvs_lpgpr.o -obj-$(CONFIG_NVMEM_RAVE_SP_EEPROM) += nvmem-rave-sp-eeprom.o -nvmem-rave-sp-eeprom-y := rave-sp-eeprom.o +nvmem-rockchip-otp-y := rockchip-otp.o obj-$(CONFIG_NVMEM_SC27XX_EFUSE) += nvmem-sc27xx-efuse.o -nvmem-sc27xx-efuse-y := sc27xx-efuse.o -obj-$(CONFIG_NVMEM_ZYNQMP) += nvmem_zynqmp_nvmem.o -nvmem_zynqmp_nvmem-y := zynqmp_nvmem.o -obj-$(CONFIG_NVMEM_SPRD_EFUSE) += nvmem_sprd_efuse.o -nvmem_sprd_efuse-y := sprd-efuse.o -obj-$(CONFIG_NVMEM_RMEM) += nvmem-rmem.o -nvmem-rmem-y := rmem.o -obj-$(CONFIG_NVMEM_BRCM_NVRAM) += nvmem_brcm_nvram.o -nvmem_brcm_nvram-y := brcm_nvram.o -obj-$(CONFIG_NVMEM_LAYERSCAPE_SFP) += nvmem-layerscape-sfp.o -nvmem-layerscape-sfp-y := layerscape-sfp.o +nvmem-sc27xx-efuse-y := sc27xx-efuse.o +obj-$(CONFIG_NVMEM_SNVS_LPGPR) += nvmem_snvs_lpgpr.o +nvmem_snvs_lpgpr-y := snvs_lpgpr.o +obj-$(CONFIG_NVMEM_SPMI_SDAM) += nvmem_qcom-spmi-sdam.o +nvmem_qcom-spmi-sdam-y += qcom-spmi-sdam.o +obj-$(CONFIG_NVMEM_SPRD_EFUSE) += nvmem_sprd_efuse.o +nvmem_sprd_efuse-y := sprd-efuse.o +obj-$(CONFIG_NVMEM_STM32_ROMEM) += nvmem_stm32_romem.o +nvmem_stm32_romem-y := stm32-romem.o obj-$(CONFIG_NVMEM_SUNPLUS_OCOTP) += nvmem_sunplus_ocotp.o -nvmem_sunplus_ocotp-y := sunplus-ocotp.o -obj-$(CONFIG_NVMEM_APPLE_EFUSES) += nvmem-apple-efuses.o -nvmem-apple-efuses-y := apple-efuses.o -obj-$(CONFIG_NVMEM_MICROCHIP_OTPC) += nvmem-microchip-otpc.o -nvmem-microchip-otpc-y := microchip-otpc.o -obj-$(CONFIG_NVMEM_U_BOOT_ENV) += nvmem_u-boot-env.o -nvmem_u-boot-env-y := u-boot-env.o +nvmem_sunplus_ocotp-y := sunplus-ocotp.o +obj-$(CONFIG_NVMEM_SUNXI_SID) += nvmem_sunxi_sid.o +nvmem_sunxi_sid-y := sunxi_sid.o +obj-$(CONFIG_NVMEM_U_BOOT_ENV) += nvmem_u-boot-env.o +nvmem_u-boot-env-y := u-boot-env.o +obj-$(CONFIG_NVMEM_UNIPHIER_EFUSE) += nvmem-uniphier-efuse.o +nvmem-uniphier-efuse-y := uniphier-efuse.o +obj-$(CONFIG_NVMEM_VF610_OCOTP) += nvmem-vf610-ocotp.o +nvmem-vf610-ocotp-y := vf610-ocotp.o +obj-$(CONFIG_NVMEM_ZYNQMP) += nvmem_zynqmp_nvmem.o +nvmem_zynqmp_nvmem-y := zynqmp_nvmem.o