[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220125180114.12286-1-zajec5@gmail.com>
Date: Tue, 25 Jan 2022 19:01:12 +0100
From: Rafał Miłecki <zajec5@...il.com>
To: Rob Herring <robh+dt@...nel.org>,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>,
Michael Walle <michael@...le.cc>
Cc: linux-mtd@...ts.infradead.org, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
netdev@...r.kernel.org, Miquel Raynal <miquel.raynal@...tlin.com>,
Richard Weinberger <richard@....at>,
Vignesh Raghavendra <vigneshr@...com>,
Shawn Guo <shawnguo@...nel.org>, Li Yang <leoyang.li@....com>,
Frank Rowand <frowand.list@...il.com>,
"David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Ansuel Smith <ansuelsmth@...il.com>,
Andrew Lunn <andrew@...n.ch>,
Florian Fainelli <f.fainelli@...il.com>,
Hauke Mehrtens <hauke@...ke-m.de>,
Rafał Miłecki <rafal@...ecki.pl>
Subject: [PATCH 0/2] dt-bindings: nvmem: support describing cells
From: Rafał Miłecki <rafal@...ecki.pl>
Michael has recently posted a cleaned up patchset for NVMEM
transformations support:
[PATCH 0/8] nvmem: add ethernet address offset support
https://lore.kernel.org/lkml/20211228142549.1275412-1-michael@walle.cc/T/
https://patchwork.ozlabs.org/project/linux-mtd/list/?series=278644&state=*
I find it very important & fully support it. In home routers we very
often deal with just one MAC address that:
1. Is a base for calculating multiple Ethernet addresses
2. Can be stored in binary as well as ASCII format
I'd like to suggest just a slightly different solution though. I think
that using something like:
otp-1 {
compatible = "kontron,sl28-vpd", "user-otp";
#address-cells = <1>;
#size-cells = <1>;
base_mac_address: base-mac-address@17 {
#nvmem-cell-cells = <1>;
reg = <17 6>;
};
};
isn't clear enough and requires too much conditional code in Linux /
whatever implementation. DT doesn't make it clear which NVMEM cells
are used for what and how should be handled. That has to be hardcoded in
a Linux / whatever driver.
My idea is to add "compatible" & additional flags to NVMEM cells.
Example:
otp-1 {
compatible = "user-otp";
#address-cells = <1>;
#size-cells = <1>;
base_mac_address: base-mac-address@17 {
compatible = "mac-address";
reg = <17 6>;
#nvmem-cell-cells = <1>;
};
};
(for more examples see PATCH 2/2 and its mac-address.yaml .
Rafał Miłecki (2):
dt-bindings: nvmem: extract NVMEM cell to separated file
dt-bindings: nvmem: cells: add MAC address cell
.../devicetree/bindings/nvmem/cells/cell.yaml | 35 +++++++
.../bindings/nvmem/cells/mac-address.yaml | 94 +++++++++++++++++++
.../devicetree/bindings/nvmem/nvmem.yaml | 25 +----
3 files changed, 131 insertions(+), 23 deletions(-)
create mode 100644 Documentation/devicetree/bindings/nvmem/cells/cell.yaml
create mode 100644 Documentation/devicetree/bindings/nvmem/cells/mac-address.yaml
--
2.31.1
Powered by blists - more mailing lists