From 5063f712a6d5d7e306566b4ad697967b5c06506c Mon Sep 17 00:00:00 2001 From: John Crispin Date: Mon, 24 Jun 2013 12:39:28 +0000 Subject: [PATCH] ramips: move ESW reset to preinit on RT305x/RT5350 RT305x/RT5350 SoCs require the switch to be reset before touching the ethernet interface, otherwise the driver will panic. As we already init the ethernet in preinit we therefor need to reset the switch before that. Signed-off-by: Felix Kaechele SVN-Revision: 37027 --- .../ramips/base-files/etc/uci-defaults/02_network | 1 - .../lib/preinit/07_set_preinit_iface_ramips | 15 ++++----------- 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/target/linux/ramips/base-files/etc/uci-defaults/02_network b/target/linux/ramips/base-files/etc/uci-defaults/02_network index b45b0ca25a2..747a83d4541 100755 --- a/target/linux/ramips/base-files/etc/uci-defaults/02_network +++ b/target/linux/ramips/base-files/etc/uci-defaults/02_network @@ -13,7 +13,6 @@ ramips_setup_rt3x5x_vlans() fi local wanports="" local lanports="" - swconfig dev rt305x set reset 1 for port in 5 4 3 2 1 0; do if [ `swconfig dev rt305x port $port get disable` = "1" ]; then continue diff --git a/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips b/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips index edc5a12e34d..db03b6bde65 100644 --- a/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips +++ b/target/linux/ramips/base-files/lib/preinit/07_set_preinit_iface_ramips @@ -6,17 +6,10 @@ . /lib/ramips.sh ramips_set_preinit_iface() { - local board=$(ramips_board_name) - - case "$board" in - mpr-a2) - #TODO - # Ralink ethernet driver cannot re-open ethernet if it is opened during preinit and then closed. - # Looks like Ralink ethernet driver has a problem. - # Temporary solution is not to open ethernet during preinit. - return 0 - ;; - esac + RT3X5X=`cat /proc/cpuinfo | egrep "(RT3.5|RT5350)"` + if [ -n "${RT3X5X}" ]; then + swconfig dev rt305x set reset 1 + fi ifname=eth0 } -- 2.30.2