Thread (9 messages) flat view 9 messages, 5 authors, 2021-10-14

Re: [PATCH RFC linux] dt-bindings: nvmem: Add binding for U-Boot environment NVMEM provider

From: Marek Behún <kabel@kernel.org>
Date: 2021-10-14 10:06:14
Also in: linux-devicetree, lkml, u-boot

On Thu, 14 Oct 2021 09:26:27 +0100
Srinivas Kandagatla [off-list ref] wrote:
On 14/10/2021 00:20, Marek Behún wrote:
quoted
Add device tree bindings for U-Boot environment NVMEM provider.

U-Boot environment can be stored at a specific offset of a MTD
device, EEPROM, MMC, NAND or SATA device, on an UBI volume, or in a
file on a filesystem.

The environment can contain information such as device's MAC
address, which should be used by the ethernet controller node.
  
Have you looked at 
./Documentation/devicetree/bindings/mtd/partitions/nvmem-cells.yaml ?
Hello srini,

yes, I have. What about it? :)

That binding won't work for u-boot-env, because the data are stored
in a different way. A cell does not have a constant predetermined
offset on the MTD.
The variables are stored as a sequence of values of format
"name=value", separated by '\0's, for example:
  board=turris_mox\0ethaddr=00:11:22:33:44:55\0bootcmd=run distro_bootcmd\0....
Chaning lengths of values of variables, or deleting variables, moves
the data around. Integers and MAC addresses are stored as strings, and so on.

Also the mtd/partitions/nvmem-cells.yaml doesn't take into account
u-boot-env stored on non-MTD devices.

Marek

  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help