Message ID | 20201106151107.3987-3-kishon@ti.com |
---|---|
State | Accepted |
Commit | e87d17ca6af5ba4466538de87785cfc8c20af59a |
Headers | show |
Series | PCI: Make "cdns,max-outbound-regions" optional DT property | expand |
On Fri, Nov 06, 2020 at 08:41:07PM +0530, Kishon Vijay Abraham I wrote: > 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 <kishon@ti.com> > --- > drivers/pci/controller/cadence/pcie-cadence-ep.c | 9 +++------ > drivers/pci/controller/cadence/pcie-cadence.h | 1 + > 2 files changed, 4 insertions(+), 6 deletions(-) Reviewed-by: Rob Herring <robh@kernel.org> > > 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 >
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;
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 <kishon@ti.com> --- drivers/pci/controller/cadence/pcie-cadence-ep.c | 9 +++------ drivers/pci/controller/cadence/pcie-cadence.h | 1 + 2 files changed, 4 insertions(+), 6 deletions(-) -- 2.17.1