aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch
diff options
context:
space:
mode:
authorRafał Miłecki <zajec5@gmail.com>2015-06-07 14:41:05 +0000
committerRafał Miłecki <zajec5@gmail.com>2015-06-07 14:41:05 +0000
commitb0d1acac69acf3b1ef181b2c7253cb478a2bc087 (patch)
treed9854a6a48f78a49902cf7aa9f9756edd3e6d5f8 /target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch
parent4628924c5cc249ff512df58093d09b3d31d34152 (diff)
downloadmaster-187ad058-b0d1acac69acf3b1ef181b2c7253cb478a2bc087.tar.gz
master-187ad058-b0d1acac69acf3b1ef181b2c7253cb478a2bc087.tar.bz2
master-187ad058-b0d1acac69acf3b1ef181b2c7253cb478a2bc087.zip
bcm53xx: backport the latest 4.2 ARM BCM5302X patches
Signed-off-by: Rafał Miłecki <zajec5@gmail.com> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@45922 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch')
-rw-r--r--target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch b/target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch
new file mode 100644
index 0000000000..e41d8b853c
--- /dev/null
+++ b/target/linux/bcm53xx/patches-3.18/063-ARM-BCM5301X-Ignore-another-BCM4709-specific-fault-c.patch
@@ -0,0 +1,46 @@
+From 7eb68a2a0519a77b93184c695d4d293c92dc2286 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
+Date: Wed, 11 Feb 2015 16:40:58 +0100
+Subject: [PATCH] ARM: BCM5301X: Ignore another (BCM4709 specific) fault code
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Broadcom ARM devices seem to generate some fault once per boot. We
+already have an ignoring handler for BCM4707/BCM4708, but BCM4709
+generates different code.
+
+Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
+Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
+---
+ arch/arm/mach-bcm/bcm_5301x.c | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/arch/arm/mach-bcm/bcm_5301x.c b/arch/arm/mach-bcm/bcm_5301x.c
+index e9bcbdb..7aef927 100644
+--- a/arch/arm/mach-bcm/bcm_5301x.c
++++ b/arch/arm/mach-bcm/bcm_5301x.c
+@@ -18,15 +18,16 @@ static bool first_fault = true;
+ static int bcm5301x_abort_handler(unsigned long addr, unsigned int fsr,
+ struct pt_regs *regs)
+ {
+- if (fsr == 0x1c06 && first_fault) {
++ if ((fsr == 0x1406 || fsr == 0x1c06) && first_fault) {
+ first_fault = false;
+
+ /*
+- * These faults with code 0x1c06 happens for no good reason,
+- * possibly left over from the CFE boot loader.
++ * These faults with codes 0x1406 (BCM4709) or 0x1c06 happens
++ * for no good reason, possibly left over from the CFE boot
++ * loader.
+ */
+ pr_warn("External imprecise Data abort at addr=%#lx, fsr=%#x ignored.\n",
+- addr, fsr);
++ addr, fsr);
+
+ /* Returning non-zero causes fault display and panic */
+ return 0;
+--
+1.8.4.5
+