On Thu, 2020-11-12 at 13:14 +0000, Phil Elwell wrote: > Commit 04356ac30771 ("PCI: brcmstb: Add bcm7278 PERST# support") > 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. > > Fixes: commit 04356ac30771 ("PCI: brcmstb: Add bcm7278 PERST# support") > > Signed-off-by: Phil Elwell <phil@xxxxxxxxxxxxxxx> > --- Acked-by: Nicolas Saenz Julienne <nsaenzjulienne@xxxxxxx> Thanks! > drivers/pci/controller/pcie-brcmstb.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c > index bea86899bd5d..a90d6f69c5a1 100644 > --- a/drivers/pci/controller/pcie-brcmstb.c > +++ b/drivers/pci/controller/pcie-brcmstb.c > @@ -869,6 +869,8 @@ static int brcm_pcie_setup(struct brcm_pcie *pcie) > > /* 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 */
Attachment:
signature.asc
Description: This is a digitally signed message part