[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <54a959f7-a2e6-4622-97fa-18408afa0998@iscas.ac.cn>
Date: Tue, 23 Sep 2025 14:32:43 +0800
From: Vivian Wang <wangruikang@...as.ac.cn>
To: Aurelien Jarno <aurelien@...el32.net>, linux-kernel@...r.kernel.org,
Rob Herring <robh@...nel.org>, Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>, Paul Walmsley
<paul.walmsley@...ive.com>, Palmer Dabbelt <palmer@...belt.com>,
Albert Ou <aou@...s.berkeley.edu>, Alexandre Ghiti <alex@...ti.fr>,
Yixun Lan <dlan@...too.org>
Cc: "open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS"
<devicetree@...r.kernel.org>,
"open list:RISC-V ARCHITECTURE" <linux-riscv@...ts.infradead.org>,
"open list:RISC-V SPACEMIT SoC Support" <spacemit@...ts.linux.dev>
Subject: Re: [PATCH 2/3] riscv: dts: spacemit: add 24c02 eeprom on BPI-F3
Hi Aurelien,
On 9/22/25 05:01, Aurelien Jarno wrote:
> The BPI-F3 contains a 24c02 eeprom, that contains among other things the
> MAC addresses of the two network interfaces. For this reason, mark it as
> read-only.
>
> Signed-off-by: Aurelien Jarno <aurelien@...el32.net>
> ---
> arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
> index 3b6e4f52e9aad..574d10fdf9b82 100644
> --- a/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
> +++ b/arch/riscv/boot/dts/spacemit/k1-bananapi-f3.dts
> @@ -115,6 +115,15 @@ &i2c2 {
> pinctrl-0 = <&i2c2_0_cfg>;
> pinctrl-names = "default";
> status = "okay";
> +
> + eeprom@50 {
> + compatible = "atmel,24c02";
> + reg = <0x50>;
> + vcc-supply = <&vcc1v8_sys>;
> + pagesize = <16>;
> + read-only;
> + size = <256>;
> + };
> };
>
I wonder if it would possibly make sense to specify a nvmem-layout here.
The BPI-F3 I have here has this in the 24c02:
00000000 54 6c 76 49 6e 66 6f 00 01 00 20 24 06 fe fe fe |TlvInfo... $....|
00000010 XX XX XX 2a 02 00 02 23 0c XX XX XX XX XX XX XX |...*...#.XXXXXXX|
00000020 XX XX XX XX XX fe 04 XX XX XX XX ff ff ff ff ff |XXXXX..XXXX.....|
00000030 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00000100
(... with variable parts replaced with X)
And, AFAICT, this is a "onie,tlv-layout" with fields:
0x24 mac-adddress
0x2a num-macs
0x23 serial-number
0xfe crc32
As you can see the mac-address assignment looks bogus with fe:fe:fe (it
is used by vendor code though, so at least it seems to be intended). It
does appear at least to have useful information.
Can you confirm on your hardware? What do you think about this: should
we add it now or add it when we have users?
Vivian "dramforever" Wang
Powered by blists - more mailing lists