aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/kirkwood/base-files
diff options
context:
space:
mode:
authorPawel Dembicki <paweldembicki@gmail.com>2020-01-26 17:22:28 +0100
committerPetr Štetiar <ynezz@true.cz>2020-07-11 13:33:28 +0200
commit67ce9aedd6d3f7995351f478e79e570c01ea71fc (patch)
treeb63e12a37c4c701204fb6909f129f746cd2a4a4b /target/linux/kirkwood/base-files
parentc881d7ab039022aac91a3524227df9cc5f60dd16 (diff)
downloadupstream-67ce9aedd6d3f7995351f478e79e570c01ea71fc.tar.gz
upstream-67ce9aedd6d3f7995351f478e79e570c01ea71fc.tar.bz2
upstream-67ce9aedd6d3f7995351f478e79e570c01ea71fc.zip
kirkwood: add support for Check Point L-50
This patch adds support for the Check Point L-50 from 600/1100 series routers. Specification: -CPU: Marvell Kirkwood 88F6281 1200MHz -RAM: 512MB -Flash: NAND 512MB -WiFi: mPCIe card based on Atheros AR9287 b/g/n -WAN: 1 Gigabit Port (Marvell 88E1116R PHY) -LAN: 9 Gigabit Ports (2x Marvell 88E6171(5+4)) -USB: 2x USB2.0 -Express card slot -SD card slot -Serial console: RJ-45 115200 8n1 -Unsupported DSL Known issues: -DSL not supported -Expresscard not tested Installation: Step one -> backup: make backup u-boot and env for revert stock posibility make backup dsl_mac_addr, dmz_mac_addr, eth1addr, ethaddr and all lanX_mac_addr Step two -> Use kwboot tool to upload openwrt u-boot to RAM: run kwboot: "kwboot -B 115200 /dev/ttyUSB0 -b u-boot.kwb -p -t" end start u-boot Step three -> Restore macs (e.g. below): setenv eth1addr 00:1C:XX:XX:XX:6C setenv ethaddr 00:1C:XX:XX:XX:6B setenv lan1_mac_addr 00:1C:XX:XX:XX:6C setenv lan2_mac_addr 00:1C:XX:XX:XX:6D setenv lan3_mac_addr 00:1C:XX:XX:XX:6E setenv lan4_mac_addr 00:1C:XX:XX:XX:6F setenv lan5_mac_addr 00:1C:XX:XX:XX:70 setenv lan6_mac_addr 00:1C:XX:XX:XX:71 setenv lan7_mac_addr 00:1C:XX:XX:XX:72 setenv lan8_mac_addr 00:1C:XX:XX:XX:73 setenv dmz_mac_addr 00:1C:XX:XX:XX:74 setenv dsl_mac_addr 00:1C:XX:XX:XX:75 Step four -> flash u-boot: mw 0x0800000 0xffff 0x100000 nand erase 0x0 100000 tftp 0x0800000 openwrt-kirkwood-l50-u-boot.kwb nand write 0x0800000 0x0 0x100000 saveenv Step five -> run initramfs image: tftpboot 0x02000000 openwrt.bin; bootm 0x02000000; Step six -> install sysupgrade OpenWrt image: copy to /tmp/ sysupgrade image run sysupgrade Back to stock: Restore original u-boot end env. Install factory image via stock u-boot. Signed-off-by: Pawel Dembicki <paweldembicki@gmail.com>
Diffstat (limited to 'target/linux/kirkwood/base-files')
-rwxr-xr-xtarget/linux/kirkwood/base-files/etc/board.d/02_network3
-rwxr-xr-xtarget/linux/kirkwood/base-files/etc/board.d/03_gpio_switches18
-rw-r--r--target/linux/kirkwood/base-files/lib/preinit/07_set_iface_mac25
3 files changed, 46 insertions, 0 deletions
diff --git a/target/linux/kirkwood/base-files/etc/board.d/02_network b/target/linux/kirkwood/base-files/etc/board.d/02_network
index a86c57117d..658ce13346 100755
--- a/target/linux/kirkwood/base-files/etc/board.d/02_network
+++ b/target/linux/kirkwood/base-files/etc/board.d/02_network
@@ -11,6 +11,9 @@ board_config_update
board=$(board_name)
case "$board" in
+"checkpoint,l-50")
+ ucidef_set_interfaces_lan_wan "lan1 lan2 lan3 lan4 lan5 lan6 lan7 lan8 dmz" "eth0"
+ ;;
"cisco,on100")
ucidef_set_interface_lan "eth0 eth1"
;;
diff --git a/target/linux/kirkwood/base-files/etc/board.d/03_gpio_switches b/target/linux/kirkwood/base-files/etc/board.d/03_gpio_switches
new file mode 100755
index 0000000000..046f8d4d20
--- /dev/null
+++ b/target/linux/kirkwood/base-files/etc/board.d/03_gpio_switches
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+. /lib/functions/uci-defaults.sh
+
+board_config_update
+
+board=$(board_name)
+
+case "$board" in
+checkpoint,l-50)
+ ucidef_add_gpio_switch "mpcie-rst" "mPCIE Card reset" "502" "1"
+ ucidef_add_gpio_switch "exp-card-rst" "Express Card reset" "497" "1"
+ ;;
+esac
+
+board_config_flush
+
+exit 0
diff --git a/target/linux/kirkwood/base-files/lib/preinit/07_set_iface_mac b/target/linux/kirkwood/base-files/lib/preinit/07_set_iface_mac
new file mode 100644
index 0000000000..75e9e886d9
--- /dev/null
+++ b/target/linux/kirkwood/base-files/lib/preinit/07_set_iface_mac
@@ -0,0 +1,25 @@
+. /lib/functions.sh
+. /lib/functions/system.sh
+
+preinit_set_mac_address() {
+ local mac
+
+ case $(board_name) in
+ checkpoint,l-50)
+ mac=$(mtd_get_mac_ascii bootldr-env lan1_mac_addr)
+
+ ip link set dev lan1 address $mac 2>/dev/null
+ ip link set dev lan2 address $(macaddr_add $mac 1) 2>/dev/null
+ ip link set dev lan3 address $(macaddr_add $mac 2) 2>/dev/null
+ ip link set dev lan4 address $(macaddr_add $mac 3) 2>/dev/null
+ ip link set dev lan5 address $(macaddr_add $mac 4) 2>/dev/null
+ ip link set dev lan6 address $(macaddr_add $mac 5) 2>/dev/null
+ ip link set dev lan7 address $(macaddr_add $mac 6) 2>/dev/null
+ ip link set dev lan8 address $(macaddr_add $mac 7) 2>/dev/null
+ ip link set dev dmz address $(macaddr_add $mac 8) 2>/dev/null
+ ip link set dev dsl address $(macaddr_add $mac 9) 2>/dev/null
+ ;;
+ esac
+}
+
+boot_hook_add preinit_main preinit_set_mac_address