aboutsummaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
authorSteve Glennon <s.glennon@cablelabs.com>2019-04-23 14:46:37 -0600
committerChristian Lamparter <chunkeey@gmail.com>2019-05-11 16:37:11 +0200
commit9b0eb4d260cf5abf3e1ecb600db23356bb4e1d06 (patch)
tree4785c7fb35823cc16c8096565d62a05eadbc4fb0 /target
parent4de0a61a62a2e722bc4c443c4eb843485f837834 (diff)
downloadupstream-9b0eb4d260cf5abf3e1ecb600db23356bb4e1d06.tar.gz
upstream-9b0eb4d260cf5abf3e1ecb600db23356bb4e1d06.tar.bz2
upstream-9b0eb4d260cf5abf3e1ecb600db23356bb4e1d06.zip
ipq40xx: Fix reboot on EnGenius ENS620EXT
This patch works around an issue where reboot would cause the AP to power down and not reboot. The ipq4019 restart controller reboot causes the system to power down and not recover. Fix is to disable the restart controller in the device tree and the device reverts to using the watchdog to perform the reset. The real problem is due to the buggy bootloader that ships with the device. Steve Glennon reported in the PR for this patch: <https://github.com/openwrt/openwrt/pull/2009> that: "the problem was due to a bad u-boot that ships with the device. Using the u-boot that comes with 3.5.5.3 EnGenius factory software now allows the old code (using the do_msm_reboot) to reboot successfully. On to the bad news: Well 3.5.5.3 is a bad path. Finally managed to recover. You CANNOT use prior EnGenius firmware to downgrade. Findings: * They now password protect the serial console with a new, unkown password. * They changed the protection on their walled-garden. I have to use the ssh admin@ip /bin/sh --login to get out of their walled-garden. * Attempts to flash the original 3.0.0 or 3.0.1 EnGenius firmware fail through the UI and sysupgrade. Their firmware update GUI now seem to detect regular openwrt images, but they fail to flash Attempts to flash a normal OpenWrt image with sysupgrade fail. [..] Attempts to sysupgrade with EnGenius firmware fail with the same "mandatory section(s) missing" error, so you cannot downgrade to 3.0.0 or 3.0.1." Signed-off-by: Steve Glennon <s.glennon@cablelabs.com> Signed-off-by: Christian Lamparter <chunkeey@gmail.com> [added valuable findings from github discussion]
Diffstat (limited to 'target')
-rw-r--r--target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts9
-rw-r--r--target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts9
2 files changed, 18 insertions, 0 deletions
diff --git a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts
index f676ff61cb..34ca133728 100644
--- a/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts
+++ b/target/linux/ipq40xx/files-4.14/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts
@@ -63,6 +63,15 @@
edma@c080000 {
status = "okay";
};
+
+ /*
+ * Disable the broken restart as a workaround for the buggy
+ * 3.0.0/3.0.1 U-boots that ship with the device.
+ * Note: The watchdog is now used to restart this device.
+ */
+ restart@4ab000 {
+ status = "disabled";
+ };
};
buttons {
diff --git a/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts b/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts
index dd3ec229fe..8636b18b2e 100644
--- a/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts
+++ b/target/linux/ipq40xx/files-4.19/arch/arm/boot/dts/qcom-ipq4018-ens620ext.dts
@@ -67,6 +67,15 @@
edma@c080000 {
status = "okay";
};
+
+ /*
+ * Disable the broken restart as a workaround for the buggy
+ * 3.0.0/3.0.1 U-boots that ship with the device.
+ * Note: The watchdog is now used to restart this device.
+ */
+ restart@4ab000 {
+ status = "disabled";
+ };
};
buttons {