Re: [PATCH] nvmem: layouts: u-boot-env: remove ethaddr check

From: Rosen Penev

Date: Wed Apr 29 2026 - 17:42:07 EST


On Wed, Apr 29, 2026 at 12:44 AM Miquel Raynal
<miquel.raynal@xxxxxxxxxxx> wrote:
>
> On 29/04/2026 at 09:39:53 +02, Miquel Raynal <miquel.raynal@xxxxxxxxxxx> wrote:
>
> > Hi Rosen,
> >
> >> --- a/drivers/nvmem/layouts/u-boot-env.c
> >> +++ b/drivers/nvmem/layouts/u-boot-env.c
> >> @@ -75,11 +75,9 @@ static int u_boot_env_parse_cells(struct device *dev, struct nvmem_device *nvmem
> >> info.offset = data_offset + value - data;
> >> info.bytes = strlen(value);
> >> info.np = of_get_child_by_name(dev->of_node, info.name);
> >> - if (!strcmp(var, "ethaddr")) {
> >> - info.raw_len = strlen(value);
> >> - info.bytes = ETH_ALEN;
> >> - info.read_post_process = u_boot_env_read_post_process_ethaddr;
> >> - }
> >> + info.raw_len = strlen(value);
> >> + info.bytes = ETH_ALEN;
> >
> > How do you know this is a MAC address?
>
> You are overwriting info.bytes above. I am sorry but this change has
> only been tested with your very own settings and does not look like
> something we could accept.
>
> You cannot attach the "process ethaddr" subprocess to any node, that
> would not make any sense.
>
> I guess we can extend a bit the condition with thinks like "eth%daddr",
> but that must remain limited.
how about a static array of the names and strcmp over that?
>
> Thanks,
> Miquèl