ath79: fortinet-fap-221-b: convert to nvmem-layout

Now that MAC address parser supports the hex format (without
delimiters), use the canonical MAC address stored in U-boot partition.
Get rid of the userspace adjustments which are no longer necessary.
While at that, move the mac-base to the common part, as it is again
exactly the same in both models.

And convert ART partition too - keep that one separate, as calibration
data length differs between the models.

Signed-off-by: Lech Perczak <lech.perczak@gmail.com>
This commit is contained in:
Lech Perczak 2023-11-16 17:30:11 +01:00 committed by Christian Marangi
parent 7e5e010035
commit 32098554d9
No known key found for this signature in database
GPG Key ID: AC001D09ADBFEAD7
4 changed files with 23 additions and 20 deletions

View File

@ -6,6 +6,10 @@
compatible = "fortinet,fap-221-b", "qca,ar9344"; compatible = "fortinet,fap-221-b", "qca,ar9344";
model = "Fortinet FAP-221-B"; model = "Fortinet FAP-221-B";
aliases {
label-mac-device = <&eth0>;
};
leds { leds {
compatible = "gpio-leds"; compatible = "gpio-leds";
@ -51,25 +55,34 @@
&ath9k { &ath9k {
ieee80211-freq-limit = <2402000 2482000>; ieee80211-freq-limit = <2402000 2482000>;
nvmem-cells = <&calibration_pcie>; nvmem-cells = <&calibration_pcie>, <&macaddr_uboot_3ff80 8>;
nvmem-cell-names = "calibration"; nvmem-cell-names = "calibration", "mac-address";
};
&eth0 {
nvmem-cells = <&macaddr_uboot_3ff80 0>;
nvmem-cell-names = "mac-address";
}; };
&wmac { &wmac {
ieee80211-freq-limit = <2402000 2482000 4900000 5990000>; ieee80211-freq-limit = <2402000 2482000 4900000 5990000>;
nvmem-cells = <&calibration_wmac>; nvmem-cells = <&calibration_wmac>, <&macaddr_uboot_3ff80 1>;
nvmem-cell-names = "calibration"; nvmem-cell-names = "calibration", "mac-address";
}; };
&art { &art {
compatible = "nvmem-cells"; nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
calibration_wmac: calibration@1000 { calibration_wmac: calibration@1000 {
reg = <0x1000 0x440>; reg = <0x1000 0x440>;
}; };
calibration_pcie: calibration@5000 { calibration_pcie: calibration@5000 {
reg = <0x5000 0x440>; reg = <0x5000 0x440>;
};
}; };
}; };

View File

@ -726,10 +726,6 @@ ath79_setup_macs()
enterasys,ws-ap3705i) enterasys,ws-ap3705i)
label_mac=$(mtd_get_mac_ascii u-boot-env0 ethaddr) label_mac=$(mtd_get_mac_ascii u-boot-env0 ethaddr)
;; ;;
fortinet,fap-221-b)
lan_mac=$(mtd_get_mac_text u-boot 0x3ff80 12)
label_mac=$lan_mac
;;
hak5,lan-turtle|\ hak5,lan-turtle|\
hak5,packet-squirrel) hak5,packet-squirrel)
label_mac=$(mtd_get_mac_binary u-boot 0x1fc00) label_mac=$(mtd_get_mac_binary u-boot 0x1fc00)

View File

@ -47,9 +47,6 @@ case "$board" in
engenius,esr900) engenius,esr900)
macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" "$PHYNBR" > /sys${DEVPATH}/macaddress macaddr_add "$(mtd_get_mac_ascii u-boot-env ethaddr)" "$PHYNBR" > /sys${DEVPATH}/macaddress
;; ;;
fortinet,fap-221-b)
macaddr_add "$(mtd_get_mac_text u-boot 0x3ff80 12)" $((PHYNBR*7+1)) > /sys${DEVPATH}/macaddress
;;
iodata,wn-ac1600dgr) iodata,wn-ac1600dgr)
# There is no eeprom data for 5 GHz wlan in "art" partition # There is no eeprom data for 5 GHz wlan in "art" partition
# which would allow to patch the macaddress # which would allow to patch the macaddress

View File

@ -25,9 +25,6 @@ preinit_set_mac_address() {
siemens,ws-ap3610) siemens,ws-ap3610)
ip link set dev eth0 address $(mtd_get_mac_ascii cfg1 ethaddr) ip link set dev eth0 address $(mtd_get_mac_ascii cfg1 ethaddr)
;; ;;
fortinet,fap-221-b)
ip link set dev eth0 address $(mtd_get_mac_text u-boot 0x3ff80 12)
;;
moxa,awk-1137c) moxa,awk-1137c)
ip link set dev eth0 address $(mtd_get_mac_ascii u-boot-env mac_addr) ip link set dev eth0 address $(mtd_get_mac_ascii u-boot-env mac_addr)
;; ;;