openwrt/target/linux/ath79/dts/qca9563_tplink_tl-wpa8630p-v2.0-eu.dts
Adrian Schmutzler e826b64294 ath79: convert remaining mtd-mac-address cases to nvmem
Since the nvmem-based approach for retrieving MAC addresses
appears to depend on the addresses being set up after the
partitions, it is no longer possible to keep the MAC address
setup in shared DTSI files while the partitions itself are
set up in DTS files for the individual devices.

In ath79 the firmware partition is typically located somewhere
"in the middle" of the partition table. Thus, it's not trivial
to share the partitions containing MAC address information in
a common DTSI (like we did in some cases on ramips).

In this commit, MAC address setup is thus moved to the relevant
partitions, and in most cases needs to be duplicated. While
the duplication is not really nice, it eventually provides a
cleaner and more tidy setup, making the DTS(I) file
fragmentation a bit more logical. This should also help
with adding new devices, as information is distributed across
less locations.

For consistency, this commit also moves the mtd-cal-data property
"down" together with the MAC address setup, so it's not based
on a partition before the latter is defined either. (This is
only done for those files touched due to nvmem conversion.)

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
2021-08-18 23:46:02 +02:00

79 lines
1.2 KiB
Plaintext

// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
#include "qca9563_tplink_tl-wpa8630.dtsi"
/ {
compatible = "tplink,tl-wpa8630p-v2.0-eu", "qca,qca9563";
model = "TP-Link WPA8630P v2.0 (EU)";
aliases {
label-mac-device = &eth0;
};
};
&partitions {
partition@0 {
label = "factory-uboot";
reg = <0x000000 0x020000>;
read-only;
};
partition@20000 {
label = "u-boot";
reg = <0x020000 0x020000>;
read-only;
};
partition@40000 {
compatible = "tplink,firmware";
label = "firmware";
reg = <0x040000 0x5e0000>;
};
partition@620000 {
label = "partition-table";
reg = <0x620000 0x010000>;
read-only;
};
info: partition@630000 {
label = "info";
reg = <0x630000 0x010000>;
read-only;
};
partition@640000 {
label = "tplink";
reg = <0x640000 0x1b0000>;
read-only;
};
art: partition@7f0000 {
label = "art";
reg = <0x7f0000 0x010000>;
read-only;
};
};
&eth0 {
nvmem-cells = <&macaddr_info_8>;
nvmem-cell-names = "mac-address";
};
&wmac {
mtd-cal-data = <&art 0x1000>;
nvmem-cells = <&macaddr_info_8>;
nvmem-cell-names = "mac-address";
};
&info {
compatible = "nvmem-cells";
#address-cells = <1>;
#size-cells = <1>;
macaddr_info_8: macaddr@8 {
reg = <0x8 0x6>;
};
};