Browse Source

Merge remote-tracking branch 'lorenzo/pci/rcar' into next

* lorenzo/pci/rcar:
  PCI: rcar: Handle rcar_pcie_parse_request_of_pci_ranges() failures
Bjorn Helgaas 7 years ago
parent
commit
88af81297b
1 changed files with 4 additions and 1 deletions
  1. 4 1
      drivers/pci/host/pcie-rcar.c

+ 4 - 1
drivers/pci/host/pcie-rcar.c

@@ -1123,7 +1123,9 @@ static int rcar_pcie_probe(struct platform_device *pdev)
 
 
 	INIT_LIST_HEAD(&pcie->resources);
 	INIT_LIST_HEAD(&pcie->resources);
 
 
-	rcar_pcie_parse_request_of_pci_ranges(pcie);
+	err = rcar_pcie_parse_request_of_pci_ranges(pcie);
+	if (err)
+		goto err_free_bridge;
 
 
 	err = rcar_pcie_get_resources(pcie);
 	err = rcar_pcie_get_resources(pcie);
 	if (err < 0) {
 	if (err < 0) {
@@ -1178,6 +1180,7 @@ err_pm_disable:
 
 
 err_free_resource_list:
 err_free_resource_list:
 	pci_free_resource_list(&pcie->resources);
 	pci_free_resource_list(&pcie->resources);
+err_free_bridge:
 	pci_free_host_bridge(bridge);
 	pci_free_host_bridge(bridge);
 
 
 	return err;
 	return err;