Now that "cdns,max-outbound-regions" is made an optional property, do
not error out if "cdns,max-outbound-regions" device tree property is
not found.

Link: http://lore.kernel.org/r/20201105165331.GA55814@bogus
Signed-off-by: Kishon Vijay Abraham I <[email protected]>
---
 drivers/pci/controller/cadence/pcie-cadence-ep.c | 9 +++------
 drivers/pci/controller/cadence/pcie-cadence.h    | 1 +
 2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/drivers/pci/controller/cadence/pcie-cadence-ep.c 
b/drivers/pci/controller/cadence/pcie-cadence-ep.c
index 254a3e1eff50..9a4195af958e 100644
--- a/drivers/pci/controller/cadence/pcie-cadence-ep.c
+++ b/drivers/pci/controller/cadence/pcie-cadence-ep.c
@@ -531,12 +531,9 @@ int cdns_pcie_ep_setup(struct cdns_pcie_ep *ep)
        }
        pcie->mem_res = res;
 
-       ret = of_property_read_u32(np, "cdns,max-outbound-regions",
-                                  &ep->max_regions);
-       if (ret < 0) {
-               dev_err(dev, "missing \"cdns,max-outbound-regions\"\n");
-               return ret;
-       }
+       ep->max_regions = CDNS_PCIE_MAX_OB;
+       of_property_read_u32(np, "cdns,max-outbound-regions", &ep->max_regions);
+
        ep->ob_addr = devm_kcalloc(dev,
                                   ep->max_regions, sizeof(*ep->ob_addr),
                                   GFP_KERNEL);
diff --git a/drivers/pci/controller/cadence/pcie-cadence.h 
b/drivers/pci/controller/cadence/pcie-cadence.h
index feed1e3038f4..30eba6cafe2c 100644
--- a/drivers/pci/controller/cadence/pcie-cadence.h
+++ b/drivers/pci/controller/cadence/pcie-cadence.h
@@ -197,6 +197,7 @@ enum cdns_pcie_rp_bar {
 };
 
 #define CDNS_PCIE_RP_MAX_IB    0x3
+#define CDNS_PCIE_MAX_OB       32
 
 struct cdns_pcie_rp_ib_bar {
        u64 size;
-- 
2.17.1

Reply via email to