[v5,9/9] Revert "PCI: brcmstb: Wait for Raspberry Pi's firmware when present"

Message ID 20200629161845.6021-10-nsaenzjulienne@suse.de
State Superseded
Headers show
Series
  • Raspberry Pi 4 USB firmware initialization rework
Related show

Commit Message

Nicolas Saenz Julienne June 29, 2020, 4:18 p.m.
This reverts commit 44331189f9082c7e659697bbac1747db3def73e7.

Now that the VL805 init routine is run through a reset controller driver
the device dependencies are being taken care of by the device core. No
need to do it manually here.

Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
---
 drivers/pci/controller/pcie-brcmstb.c | 17 -----------------
 1 file changed, 17 deletions(-)

Comments

Lorenzo Pieralisi Aug. 14, 2020, 10:15 a.m. | #1
On Mon, Jun 29, 2020 at 06:18:45PM +0200, Nicolas Saenz Julienne wrote:
> This reverts commit 44331189f9082c7e659697bbac1747db3def73e7.

> 

> Now that the VL805 init routine is run through a reset controller driver

> the device dependencies are being taken care of by the device core. No

> need to do it manually here.

> 

> Signed-off-by: Nicolas Saenz Julienne <nsaenzjulienne@suse.de>

> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>

> ---

>  drivers/pci/controller/pcie-brcmstb.c | 17 -----------------

>  1 file changed, 17 deletions(-)


Acked-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>


> diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c

> index 7730ea845ff2..752f5b331579 100644

> --- a/drivers/pci/controller/pcie-brcmstb.c

> +++ b/drivers/pci/controller/pcie-brcmstb.c

> @@ -28,8 +28,6 @@

>  #include <linux/string.h>

>  #include <linux/types.h>

>  

> -#include <soc/bcm2835/raspberrypi-firmware.h>

> -

>  #include "../pci.h"

>  

>  /* BRCM_PCIE_CAP_REGS - Offset for the mandatory capability config regs */

> @@ -931,26 +929,11 @@ static int brcm_pcie_probe(struct platform_device *pdev)

>  {

>  	struct device_node *np = pdev->dev.of_node, *msi_np;

>  	struct pci_host_bridge *bridge;

> -	struct device_node *fw_np;

>  	struct brcm_pcie *pcie;

>  	struct pci_bus *child;

>  	struct resource *res;

>  	int ret;

>  

> -	/*

> -	 * We have to wait for Raspberry Pi's firmware interface to be up as a

> -	 * PCI fixup, rpi_firmware_init_vl805(), depends on it. This driver's

> -	 * probe can race with the firmware interface's (see

> -	 * drivers/firmware/raspberrypi.c) and potentially break the PCI fixup.

> -	 */

> -	fw_np = of_find_compatible_node(NULL, NULL,

> -					"raspberrypi,bcm2835-firmware");

> -	if (fw_np && !rpi_firmware_get(fw_np)) {

> -		of_node_put(fw_np);

> -		return -EPROBE_DEFER;

> -	}

> -	of_node_put(fw_np);

> -

>  	bridge = devm_pci_alloc_host_bridge(&pdev->dev, sizeof(*pcie));

>  	if (!bridge)

>  		return -ENOMEM;

> -- 

> 2.27.0

>

Patch

diff --git a/drivers/pci/controller/pcie-brcmstb.c b/drivers/pci/controller/pcie-brcmstb.c
index 7730ea845ff2..752f5b331579 100644
--- a/drivers/pci/controller/pcie-brcmstb.c
+++ b/drivers/pci/controller/pcie-brcmstb.c
@@ -28,8 +28,6 @@ 
 #include <linux/string.h>
 #include <linux/types.h>
 
-#include <soc/bcm2835/raspberrypi-firmware.h>
-
 #include "../pci.h"
 
 /* BRCM_PCIE_CAP_REGS - Offset for the mandatory capability config regs */
@@ -931,26 +929,11 @@  static int brcm_pcie_probe(struct platform_device *pdev)
 {
 	struct device_node *np = pdev->dev.of_node, *msi_np;
 	struct pci_host_bridge *bridge;
-	struct device_node *fw_np;
 	struct brcm_pcie *pcie;
 	struct pci_bus *child;
 	struct resource *res;
 	int ret;
 
-	/*
-	 * We have to wait for Raspberry Pi's firmware interface to be up as a
-	 * PCI fixup, rpi_firmware_init_vl805(), depends on it. This driver's
-	 * probe can race with the firmware interface's (see
-	 * drivers/firmware/raspberrypi.c) and potentially break the PCI fixup.
-	 */
-	fw_np = of_find_compatible_node(NULL, NULL,
-					"raspberrypi,bcm2835-firmware");
-	if (fw_np && !rpi_firmware_get(fw_np)) {
-		of_node_put(fw_np);
-		return -EPROBE_DEFER;
-	}
-	of_node_put(fw_np);
-
 	bridge = devm_pci_alloc_host_bridge(&pdev->dev, sizeof(*pcie));
 	if (!bridge)
 		return -ENOMEM;