From 06edafd079348f84ce58807f70c1cff428a18934 Mon Sep 17 00:00:00 2001 From: Gabor Juhos Date: Thu, 18 Oct 2012 07:23:03 +0000 Subject: [PATCH] ramips: add user space support for the DIR-645 Signed-off-by: Gabor Juhos SVN-Revision: 33844 --- target/linux/ramips/base-files/etc/diag.sh | 3 +++ .../base-files/etc/uci-defaults/fixseama | 20 +++++++++++++++++++ .../base-files/etc/uci-defaults/network | 12 +++++++++++ .../base-files/lib/preinit/06_set_iface_mac | 5 +++++ target/linux/ramips/base-files/lib/ramips.sh | 3 +++ .../ramips/base-files/lib/upgrade/platform.sh | 7 +++++++ 6 files changed, 50 insertions(+) create mode 100755 target/linux/ramips/base-files/etc/uci-defaults/fixseama diff --git a/target/linux/ramips/base-files/etc/diag.sh b/target/linux/ramips/base-files/etc/diag.sh index 4720130252..5fad72815f 100755 --- a/target/linux/ramips/base-files/etc/diag.sh +++ b/target/linux/ramips/base-files/etc/diag.sh @@ -39,6 +39,9 @@ get_status_led() { dir-300-b1 | dir-600-b1 | dir-600-b2 | dir-615-h1 | dir-620-a1) status_led="d-link:green:status" ;; + dir-645) + status_led="d-link:green:wps" + ;; dap-1350) status_led="d-link:blue:power" ;; diff --git a/target/linux/ramips/base-files/etc/uci-defaults/fixseama b/target/linux/ramips/base-files/etc/uci-defaults/fixseama new file mode 100755 index 0000000000..d8bed79514 --- /dev/null +++ b/target/linux/ramips/base-files/etc/uci-defaults/fixseama @@ -0,0 +1,20 @@ +#!/bin/sh +# +# Copyright (C) 2012 OpenWrt.org +# + +. /lib/ramips.sh + +fix_seama_header() { + local part=$1 + + mtd fixseama $part +} + +board=$(ramips_board_name) + +case "$board" in +dir-645) + fix_seama_header kernel + ;; +esac diff --git a/target/linux/ramips/base-files/etc/uci-defaults/network b/target/linux/ramips/base-files/etc/uci-defaults/network index bbb02e8627..de33acb449 100755 --- a/target/linux/ramips/base-files/etc/uci-defaults/network +++ b/target/linux/ramips/base-files/etc/uci-defaults/network @@ -63,6 +63,13 @@ ramips_setup_interfaces() ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2" ;; + dir-645) + ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2" + ucidef_add_switch "switch0" "1" "1" + ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 6t" + ucidef_add_switch_vlan "switch0" "2" "0 6t" + ;; + f5d8235-v1 | \ f5d8235-v2 | \ ur-336un) @@ -159,6 +166,11 @@ ramips_setup_macs() wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1) ;; + dir-645) + lan_mac=$(ramips_get_mac_nvram nvram lanmac) + wan_mac=$(ramips_get_mac_nvram nvram wanmac) + ;; + esr-9753 | \ ur-336un) lan_mac=$(ramips_get_mac_binary devdata 16388) diff --git a/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac b/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac index 591c549d14..0ff21892d6 100644 --- a/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac +++ b/target/linux/ramips/base-files/lib/preinit/06_set_iface_mac @@ -30,6 +30,11 @@ preinit_set_mac_address() { mac=$(ramips_get_mac_binary devdata 16388) ifconfig eth0 hw ether $mac 2>/dev/null ;; + dir-645) + mac=$(ramips_get_mac_nvram nvram lanmac) + mac=$(maccalc or "$mac" "02:00:00:00:00:00") + ifconfig eth0 hw ether $mac 2>/dev/null + ;; dap-1350) mac=$(ramips_get_mac_binary devdata 46) ifconfig eth0 hw ether $mac 2>/dev/null diff --git a/target/linux/ramips/base-files/lib/ramips.sh b/target/linux/ramips/base-files/lib/ramips.sh index 90c28b7ab6..90afa49bb4 100755 --- a/target/linux/ramips/base-files/lib/ramips.sh +++ b/target/linux/ramips/base-files/lib/ramips.sh @@ -92,6 +92,9 @@ ramips_board_name() { *"DIR-615 H1") name="dir-615-h1" ;; + *"DIR-645") + name="dir-645" + ;; *"DAP-1350") name="dap-1350" ;; diff --git a/target/linux/ramips/base-files/lib/upgrade/platform.sh b/target/linux/ramips/base-files/lib/upgrade/platform.sh index 2857599d0b..ba04a4a4aa 100755 --- a/target/linux/ramips/base-files/lib/upgrade/platform.sh +++ b/target/linux/ramips/base-files/lib/upgrade/platform.sh @@ -57,6 +57,13 @@ platform_check_image() { } return 0 ;; + dir-645) + [ "$magic" != "5ea3a417" ] && { + echo "Invalid image type." + return 1 + } + return 0 + ;; esac echo "Sysupgrade is not yet supported on $board." -- 2.30.2