nvmem: add explicit config option to read old syntax fixed OF cells
authorRafał Miłecki <rafal@milecki.pl>
Fri, 20 Oct 2023 10:55:41 +0000 (11:55 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 21 Oct 2023 17:19:06 +0000 (19:19 +0200)
commit2cc3b37f5b6df8189d55d0e812d9658ce256dfec
treecb17aacc16e6f25420f544ae801d5934b9163a8b
parent16724d6ea40a2c9315f5a0d81005dfa4d7a6da24
nvmem: add explicit config option to read old syntax fixed OF cells

Binding for fixed NVMEM cells defined directly as NVMEM device subnodes
has been deprecated. It has been replaced by the "fixed-layout" NVMEM
layout binding.

New syntax is meant to be clearer and should help avoiding imprecise
bindings.

NVMEM subsystem already supports the new binding. It should be a good
idea to limit support for old syntax to existing drivers that actually
support & use it (we can't break backward compatibility!). That way we
additionally encourage new bindings & drivers to ignore deprecated
binding.

It wasn't clear (to me) if rtc and w1 code actually uses old syntax
fixed cells. I enabled them to don't risk any breakage.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
[for meson-{efuse,mx-efuse}.c]
Acked-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
[for mtk-efuse.c, nvmem/core.c, nvmem-provider.h]
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
[MT8192, MT8195 Chromebooks]
Tested-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
[for microchip-otpc.c]
Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com>
[SAMA7G5-EK]
Tested-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20231020105545.216052-3-srinivas.kandagatla@linaro.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
24 files changed:
drivers/mtd/mtdcore.c
drivers/nvmem/apple-efuses.c
drivers/nvmem/core.c
drivers/nvmem/imx-ocotp-scu.c
drivers/nvmem/imx-ocotp.c
drivers/nvmem/meson-efuse.c
drivers/nvmem/meson-mx-efuse.c
drivers/nvmem/microchip-otpc.c
drivers/nvmem/mtk-efuse.c
drivers/nvmem/qcom-spmi-sdam.c
drivers/nvmem/qfprom.c
drivers/nvmem/rave-sp-eeprom.c
drivers/nvmem/rockchip-efuse.c
drivers/nvmem/sc27xx-efuse.c
drivers/nvmem/sec-qfprom.c
drivers/nvmem/sprd-efuse.c
drivers/nvmem/stm32-romem.c
drivers/nvmem/sunplus-ocotp.c
drivers/nvmem/sunxi_sid.c
drivers/nvmem/uniphier-efuse.c
drivers/nvmem/zynqmp_nvmem.c
drivers/rtc/nvmem.c
drivers/w1/slaves/w1_ds250x.c
include/linux/nvmem-provider.h