Re: [PATCH] Revert "MIPS: BCM47XX: Enable 74K Core ExternalSync for PCIe erratum"
From: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
Date: 2018-07-29 21:59:30
On 28/07/18 05:13, Paul Burton wrote:
Hi Rafał, On Fri, Jul 27, 2018 at 01:13:39PM +0200, Rafał Miłecki wrote:quoted
From: Rafał Miłecki <rafal@milecki.pl> This reverts commit 2a027b47dba6b77ab8c8e47b589ae9bbc5ac6175. Enabling ExternalSync caused a regression for BCM4718A1 (used e.g. in Netgear E3000 and ASUS RT-N16): it simply hangs during PCIe initialization. It's likely that BCM4717A1 is also affected. I didn't notice that earlier as the only BCM47XX devices with PCIe I own are: 1) BCM4706 with 2 x 14e4:4331 2) BCM4706 with 14e4:4360 and 14e4:4331 it appears that BCM4706 is unaffected. While BCM5300X-ES300-RDS.pdf seems to document that erratum and its workarounds (according to quotes provided by Tokunori) it seems not even Broadcom follows them. According to the provided info Broadcom should define CONF7_ES in their SDK's mipsinc.h and implement workaround in the si_mips_init(). Checking both didn't reveal such code. It *could* mean Broadcom also had some problems with the given workaround. Reported-by: Michael Marley <redacted> Cc: Tokunori Ikegami <redacted> Cc: Paul Burton <redacted> Cc: Hauke Mehrtens <hauke@hauke-m.de> Cc: Chris Packham <chris.packham@alliedtelesis.co.nz> Cc: stable@vger.kernel.org Cc: James Hogan <jhogan@kernel.org> Signed-off-by: Rafał Miłecki <rafal@milecki.pl> --- This has been reported by Michael as OpenWrt bug at: https://bugs.openwrt.org/index.php?do=details&task_id=1688 --- arch/mips/bcm47xx/setup.c | 6 ------ arch/mips/include/asm/mipsregs.h | 3 --- 2 files changed, 9 deletions(-)Thanks - I've applied this to mips-fixes, and will send to Linus before v4.18 final so this regression shouldn't appear in a stable kernel. Tokunori - if this breaks your system then we'll need to look at applying the workaround more selectively.
I wonder if the Erratum really is specific to the 5300X SoC (which isn't supported in upstream Linux). It's a little hard to get any useful information out of Broadcom, especially for an older chip.