Re: [PATCH 4/9] nvmem: layouts: add U-Boot env layout

From: Rafał Miłecki
Date: Tue Sep 03 2024 - 13:02:25 EST


Hi Greg,

On 2024-09-03 12:12, Greg KH wrote:
On Mon, Sep 02, 2024 at 03:29:47PM +0100, srinivas.kandagatla@xxxxxxxxxx wrote:
From: Rafał Miłecki <rafal@xxxxxxxxxx>

U-Boot environment variables are stored in a specific format. Actual
data can be placed in various storage sources (MTD, UBI volume, EEPROM,
NVRAM, etc.).

Move all generic (NVMEM device independent) code from NVMEM device
driver to an NVMEM layout driver. Then add a simple NVMEM layout code on
top of it.

This allows using NVMEM layout for parsing U-Boot env data stored in any
kind of NVMEM device.

The old NVMEM glue driver stays in place for handling bindings in the
MTD context. To avoid code duplication it uses exported layout parsing
function. Please note that handling MTD & NVMEM layout bindings may be
refactored in the future.

Signed-off-by: Rafał Miłecki <rafal@xxxxxxxxxx>
Reviewed-by: Miquel Raynal <miquel.raynal@xxxxxxxxxxx>
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
---
MAINTAINERS | 1 +
drivers/nvmem/Kconfig | 3 +-
drivers/nvmem/layouts/Kconfig | 11 ++
drivers/nvmem/layouts/Makefile | 1 +
drivers/nvmem/layouts/u-boot-env.c | 211 +++++++++++++++++++++++++++++
drivers/nvmem/layouts/u-boot-env.h | 15 ++
drivers/nvmem/u-boot-env.c | 165 +---------------------
7 files changed, 242 insertions(+), 165 deletions(-)
create mode 100644 drivers/nvmem/layouts/u-boot-env.c
create mode 100644 drivers/nvmem/layouts/u-boot-env.h

This patch doesn't apply to my tree :(

Also, if you generate patches with 'git format-patch -M' you can see
when files move easier (if that's what happened here, hard to tell..)

It's because it was developed on top of "nvmem: u-boot-env: error if NVMEM device is too small" which you applied to the "char-misc-linus" branch. Perhaps you could push that fix ("error if...") to your both branches somehow?

--
Rafał Miłecki