openwrtv4/target/linux/lantiq/base-files/etc/board.d/02_network
Mathias Kresin 92a12c434c lantiq: fix avm fritz box mac addresses
It has been shown that the Fritz boxes have the correct mac address set
in the wireless calibration data/eeeprom. Use this mac address as base
for the ethernet and xdsl interface increment/decrement the address to
match the values stored in the tffs.

Signed-off-by: Mathias Kresin <dev@kresin.me>
2017-05-05 19:58:49 +02:00

202 lines
4.5 KiB
Bash
Executable file

#!/bin/sh
#
# Copyright (C) 2011-2015 OpenWrt.org
#
. /lib/functions/uci-defaults.sh
. /lib/functions/system.sh
. /lib/functions/lantiq.sh
board_config_update
vpi=1
vci=32
annex="a"
encaps="llc"
payload="bridged"
lan_mac=""
wan_mac=""
interface_wan=""
board=$(board_name)
case "$board" in
ACMP252|GIGASX76X)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0"
;;
ARV4510PW)
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_add_switch "switch0" \
"0:lan:4" "2:lan:2" "1:lan:3" "3:lan:1" "5t@eth0"
;;
ARV4519PW|ARV7510PW22|ARV7518PW|ARV752DPW22|ARV8539PW22)
ucidef_add_switch "switch0" \
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:lan"
;;
ARV4520PW)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5t@eth0"
;;
ARV7506PW11)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 22)" 2)
ucidef_add_switch "switch0" \
"1:lan:4" "2:lan:3" "3:lan:2" "4:lan:1" "5t@eth0"
;;
ARV7519PW)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 22)" 1)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4t@eth0"
;;
ARV7519RW22)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 22)" 1)
ucidef_add_switch "switch0" \
"0:lan:5" "2:lan:3" "3:lan:4" "4:lan:1" "5:lan:2" "6t@eth0"
;;
ASL56026)
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
wan_mac=$(mtd_get_mac_ascii uboot_env wanmac)
ucidef_add_switch "switch0"\
"2:lan" "3:lan" "6t@eth0"
;;
BTHOMEHUBV2B)
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_add_switch "switch0" \
"1:lan" "2:lan" "3:lan" "4:lan" "5t@eth0"
;;
BTHOMEHUBV3A)
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_set_interface_lan 'eth0'
;;
BTHOMEHUBV5A)
lan_mac=$(mtd_get_mac_binary_ubi caldata 4364)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_add_switch "switch0" \
"0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
;;
DGN3500*)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "3:lan:1" "5t@eth0"
;;
EASY80920NAND|EASY80920NOR)
lan_mac=$(mtd_get_mac_ascii uboot_env ethaddr)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
;;
FRITZ3370)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2439)" 1)
;;
FRITZ7320)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2705)" 1)
;;
FRITZ7360SL)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary urlader 2705)" 1)
ucidef_add_switch "switch0" \
"0:lan:3" "1:lan:4" "2:lan:2" "4:lan:1" "6t@eth0"
;;
H201L)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "4t@eth0"
;;
P2601HNFX)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "3:lan" "5t@eth0"
;;
P2812HNUF*)
lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_add_switch "switch0" \
"0:lan" "1:lan" "2:lan" "4:lan" "5:wan" "6t@eth0"
;;
TDW8970|TDW8980)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary boardconfig 61696)" 1)
ucidef_add_switch "switch0" \
"0:lan:2" "2:lan:3" "4:lan:4" "5:lan:1" "6t@eth0"
;;
VG3503J)
lan_mac=$(mtd_get_mac_ascii uboot-env ethaddr)
wan_mac=$(macaddr_add "$lan_mac" 1)
ucidef_add_switch "switch0" \
"2:lan:1" "4:lan:2" "6t@eth0"
;;
VR200v)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary romfile 61696)" 1)
ucidef_add_switch "switch0" \
"0:lan" "2:lan" "4:lan" "5:lan" "6t@eth0"
;;
VGV7510KW22*)
wan_mac=$(macaddr_add "$(mtd_get_mac_binary board_config 22)" 2)
ucidef_add_switch "switch0" \
"2:lan:2" "3:lan:1" "4:lan:4" "5:lan:3" "0:wan:5" "6t@eth0"
;;
VGV7519*)
wan_mac=$(mtd_get_mac_binary board_config 22)
ucidef_add_switch "switch0" \
"0:lan:4" "1:lan:3" "2:lan:2" "4:lan:1" "5:wan:5" "6t@eth0"
;;
WBMR)
ucidef_add_switch "switch0" \
"0t@eth0" "2:lan" "3:lan" "4:lan" "5:lan"
;;
WBMR300)
lan_mac=$(mtd_get_mac_ascii ubootconfig ethaddr)
wan_mac="$lan_mac"
ucidef_add_switch "switch0" \
"5:lan:2" "2:lan:3" "3:lan:4" "4:wan:1" "6t@eth0"
;;
*)
ucidef_set_interface_lan 'eth0'
;;
esac
ls /lib/modules/$(uname -r)/ltq_atm* 1> /dev/null 2>&1 && \
ucidef_add_atm_bridge "$vpi" "$vci" "$encaps" "$payload"
if lantiq_is_vdsl_system; then
interface_wan="ptm0"
ucidef_add_vdsl_modem "$annex" "av" "ptm"
else
interface_wan="nas0"
ucidef_add_adsl_modem "$annex" "/lib/firmware/adsl.bin"
fi
ucidef_set_interface_wan "$interface_wan" "pppoe"
[ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" "$lan_mac"
[ -n "$wan_mac" ] && ucidef_set_interface_macaddr "wan" "$wan_mac"
board_config_flush
exit 0