rockchip: add NanoPi R5C support
[openwrt/staging/hauke.git] / target / linux / rockchip / armv8 / base-files / etc / board.d / 02_network
index b0e64799471c5c4a992ced6183ff12fd5691c208..01e32c774064132040f946a914d5e0a86f5a9d74 100644 (file)
@@ -7,25 +7,25 @@ rockchip_setup_interfaces()
        local board="$1"
 
        case "$board" in
+       friendlyarm,nanopi-r2c|\
        friendlyarm,nanopi-r2s|\
-       friendlyarm,nanopi-r4s)
+       friendlyarm,nanopi-r4s|\
+       xunlong,orangepi-r1-plus|\
+       xunlong,orangepi-r1-plus-lts)
                ucidef_set_interfaces_lan_wan 'eth1' 'eth0'
                ;;
+       friendlyarm,nanopi-r5c)
+               ucidef_set_interfaces_lan_wan 'eth0' 'eth1'
+               ;;
+       friendlyarm,nanopi-r5s)
+               ucidef_set_interfaces_lan_wan 'eth1 eth2' 'eth0'
+               ;;
        *)
                ucidef_set_interface_lan 'eth0'
                ;;
        esac
 }
 
-generate_mac_from_mmc_cid()
-{
-       local mmc_dev=$1
-
-       local sd_hash=$(sha256sum /sys/class/block/$mmc_dev/device/cid)
-       local mac_base=$(macaddr_canonicalize "$(echo "${sd_hash}" | dd bs=1 count=12 2>/dev/null)")
-       echo "$(macaddr_unsetbit_mc "$(macaddr_setbit_la "${mac_base}")")"
-}
-
 nanopi_r4s_get_mac()
 {
        local interface=$1
@@ -38,7 +38,7 @@ nanopi_r4s_get_mac()
                        address=$(macaddr_setbit_la "$address")
                fi
        else
-               address=$(generate_mac_from_mmc_cid mmcblk1)
+               address=$(macaddr_generate_from_mmc_cid mmcblk1)
                if [ "$interface" = "lan" ]; then
                        address=$(macaddr_add "$address" 1)
                fi
@@ -55,14 +55,27 @@ rockchip_setup_macs()
        local label_mac=""
 
        case "$board" in
+       friendlyarm,nanopi-r2c|\
        friendlyarm,nanopi-r2s)
-               wan_mac=$(generate_mac_from_mmc_cid mmcblk0)
+               wan_mac=$(macaddr_generate_from_mmc_cid mmcblk0)
                lan_mac=$(macaddr_add "$wan_mac" 1)
                ;;
        friendlyarm,nanopi-r4s)
                wan_mac=$(nanopi_r4s_get_mac wan)
                lan_mac=$(nanopi_r4s_get_mac lan)
                ;;
+       friendlyarm,nanopi-r5c)
+               wan_mac=$(macaddr_generate_from_mmc_cid mmcblk*)
+               lan_mac=$(macaddr_add "$wan_mac" 1)
+               ;;
+       friendlyarm,nanopi-r5s)
+               wan_mac=$(macaddr_generate_from_mmc_cid mmcblk1)
+               lan_mac=$(macaddr_add "$wan_mac" 1)
+               ;;
+       xunlong,orangepi-r1-plus|\
+       xunlong,orangepi-r1-plus-lts)
+               wan_mac=$(macaddr_add "$(cat /sys/class/net/eth1/address)" -1)
+               ;;
        esac
 
        [ -n "$lan_mac" ] && ucidef_set_interface_macaddr "lan" $lan_mac