mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-22 15:02:32 +00:00
8299d1f057
Rebased RPi foundation patches on linux 5.10.59, removed applied and reverted patches, wireless patches and defconfig patches. bcm2708: boot tested on RPi B+ v1.2 bcm2709: boot tested on RPi 4B v1.1 4G bcm2711: boot tested on RPi 4B v1.1 4G Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
36 lines
1.3 KiB
Diff
36 lines
1.3 KiB
Diff
From 92f08923793d755a2eb1bf4724c6b6764cfba071 Mon Sep 17 00:00:00 2001
|
|
From: Phil Elwell <phil@raspberrypi.com>
|
|
Date: Wed, 11 Nov 2020 17:08:33 +0000
|
|
Subject: [PATCH] PCI: brcmstb: Restore initial fundamental reset
|
|
|
|
[1] replaced a single reset function with a pointer to one of two
|
|
implementations, but also removed the call asserting the reset
|
|
at the start of brcm_pcie_setup. Doing so breaks Raspberry Pis with
|
|
VL805 XHCI controllers lacking dedicated SPI EEPROMs, which have been
|
|
used for USB booting but then need to be reset so that the kernel
|
|
can reconfigure them. The lack of a reset causes the firmware's loading
|
|
of the EEPROM image to RAM to fail, breaking USB for the kernel.
|
|
|
|
See: https://www.raspberrypi.org/forums/viewtopic.php?p=1758157#p1758157
|
|
|
|
Fixes: 04356ac30771 ("PCI: brcmstb: Add bcm7278 PERST# support")
|
|
|
|
[1] 04356ac30771 ("PCI: brcmstb: Add bcm7278 PERST# support")
|
|
|
|
Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
|
---
|
|
drivers/pci/controller/pcie-brcmstb.c | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
--- a/drivers/pci/controller/pcie-brcmstb.c
|
|
+++ b/drivers/pci/controller/pcie-brcmstb.c
|
|
@@ -871,6 +871,8 @@ static int brcm_pcie_setup(struct brcm_p
|
|
|
|
/* Reset the bridge */
|
|
pcie->bridge_sw_init_set(pcie, 1);
|
|
+ pcie->perst_set(pcie, 1);
|
|
+
|
|
usleep_range(100, 200);
|
|
|
|
/* Take the bridge out of reset */
|