[PATCH v2 0/4] nvmem: imx-ocotp-ele: fix reading from ELE OCOTP
Srinivas Kandagatla
srinivas.kandagatla at linaro.org
Tue Dec 10 05:52:14 PST 2024
On 02/12/2024 11:22, Sascha Hauer wrote:
> Commits b2ab0edaf484 ("arm64: dts: imx93: add nvmem property for fec1")
> and 0d4fbaffbdca ("arm64: dts: imx93: add nvmem property for eqos")
> introduced NVMEM cell bindings for reading MAC addresses from the ELE
> OCOTP. This doesn't work as expected due to bugs in the driver:
>
> - imx_ocotp_reg_read() interprets the incoming offset as 32bit word
> offset, but it really is in bytes which means the driver reads bogus
> values whenever the offset is non zero
> - imx_ocotp_reg_read() reads wrong results when the offset is not 32bit
> word aligned
> - MAC addresses are stored in reverse byte order in the ELE OCOTP, we
> have to swap the order before passing them to the upper layer
>
> This likely went through unnoticed because the bootloader normally adds
> the MAC addresses to the ethernet nodes and in this case they are
> preferred over the NVMEM addresses.
>
> This series fixes these issues.
>
> Sascha
>
> Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
> ---
> Changes in v2:
> - Add Fixes: and Cc: stable tag as requested by Fabio
> - Link to v1: https://lore.kernel.org/r/20241023-imx-ele-ocotp-fixes-v1-0-4adc00ce288f@pengutronix.de
>
> ---
> Sascha Hauer (4):
> nvmem: imx-ocotp-ele: simplify read beyond device check
> nvmem: imx-ocotp-ele: fix reading from non zero offset
> nvmem: imx-ocotp-ele: fix MAC address byte order
> nvmem: imx-ocotp-ele: set word length to 1
Applied thanks,
--srini
>
> drivers/nvmem/imx-ocotp-ele.c | 38 +++++++++++++++++++++++++++++++-------
> 1 file changed, 31 insertions(+), 7 deletions(-)
> ---
> base-commit: 40384c840ea1944d7c5a392e8975ed088ecf0b37
> change-id: 20241023-imx-ele-ocotp-fixes-f7b216171e1e
>
> Best regards,
More information about the linux-arm-kernel
mailing list