Message ID | 166336987163.3803215.16274917380401720231.stgit@djiang5-desk3.ch.intel.com |
---|---|
State | Superseded |
Headers | show |
Series | cxl/pci: Add fundamental error handling | expand |
On Fri, 16 Sep 2022 16:11:11 -0700 Dave Jiang <dave.jiang@intel.com> wrote: > From: Dan Williams <dan.j.williams@intel.com> > > The component registers are currently unused by the cxl_pci driver. > Only the physical address base of the component registers is conveyed to > the cxl_mem driver. Just call cxl_map_device_registers() directly. > > Signed-off-by: Dan Williams <dan.j.williams@intel.com> > Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> > Signed-off-by: Dave Jiang <dave.jiang@intel.com> These first 3 impact the CPMU driver code. So I'd very much like to have these at least upstream asap even if the rest takes a while to follow. Thanks, Jonathan > --- > drivers/cxl/pci.c | 23 +---------------------- > 1 file changed, 1 insertion(+), 22 deletions(-) > > diff --git a/drivers/cxl/pci.c b/drivers/cxl/pci.c > index faeb5d9d7a7a..82023cf0cdcf 100644 > --- a/drivers/cxl/pci.c > +++ b/drivers/cxl/pci.c > @@ -347,27 +347,6 @@ static int cxl_probe_regs(struct pci_dev *pdev, struct cxl_register_map *map) > return 0; > } > > -static int cxl_map_regs(struct cxl_dev_state *cxlds, struct cxl_register_map *map) > -{ > - struct device *dev = cxlds->dev; > - struct pci_dev *pdev = to_pci_dev(dev); > - > - switch (map->reg_type) { > - case CXL_REGLOC_RBI_COMPONENT: > - cxl_map_component_regs(pdev, &cxlds->regs.component, map); > - dev_dbg(dev, "Mapping component registers...\n"); > - break; > - case CXL_REGLOC_RBI_MEMDEV: > - cxl_map_device_regs(pdev, &cxlds->regs.device_regs, map); > - dev_dbg(dev, "Probing device registers...\n"); > - break; > - default: > - break; > - } > - > - return 0; > -} > - > static int cxl_setup_regs(struct pci_dev *pdev, enum cxl_regloc_type type, > struct cxl_register_map *map) > { > @@ -461,7 +440,7 @@ static int cxl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) > if (rc) > return rc; > > - rc = cxl_map_regs(cxlds, &map); > + rc = cxl_map_device_regs(pdev, &cxlds->regs.device_regs, &map); > if (rc) > return rc; > > >
diff --git a/drivers/cxl/pci.c b/drivers/cxl/pci.c index faeb5d9d7a7a..82023cf0cdcf 100644 --- a/drivers/cxl/pci.c +++ b/drivers/cxl/pci.c @@ -347,27 +347,6 @@ static int cxl_probe_regs(struct pci_dev *pdev, struct cxl_register_map *map) return 0; } -static int cxl_map_regs(struct cxl_dev_state *cxlds, struct cxl_register_map *map) -{ - struct device *dev = cxlds->dev; - struct pci_dev *pdev = to_pci_dev(dev); - - switch (map->reg_type) { - case CXL_REGLOC_RBI_COMPONENT: - cxl_map_component_regs(pdev, &cxlds->regs.component, map); - dev_dbg(dev, "Mapping component registers...\n"); - break; - case CXL_REGLOC_RBI_MEMDEV: - cxl_map_device_regs(pdev, &cxlds->regs.device_regs, map); - dev_dbg(dev, "Probing device registers...\n"); - break; - default: - break; - } - - return 0; -} - static int cxl_setup_regs(struct pci_dev *pdev, enum cxl_regloc_type type, struct cxl_register_map *map) { @@ -461,7 +440,7 @@ static int cxl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *id) if (rc) return rc; - rc = cxl_map_regs(cxlds, &map); + rc = cxl_map_device_regs(pdev, &cxlds->regs.device_regs, &map); if (rc) return rc;