diff options
author | Ira Weiny <ira.weiny@intel.com> | 2021-06-03 17:50:36 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2021-06-05 17:37:16 -0700 |
commit | 30af97296f48d84bc4a6abbaabb92c796a84ca57 (patch) | |
tree | 214e2d12ce72c06f88c9126ff21ef2ca392eeeaf /drivers/net | |
parent | f8a7e8c29be873b90fcc426e93bdb6184df5970e (diff) |
cxl/pci: Map registers based on capabilities
The information required to map registers based on capabilities is
contained within the bars themselves. This means the bar must be mapped
to read the information needed and then unmapped to map the individual
parts of the BAR based on capabilities.
Change cxl_setup_device_regs() to return a new cxl_register_map, change
the name to cxl_probe_device_regs(). Allocate and place
cxl_register_maps on a list while processing all of the specified
register blocks.
After probing all the register blocks go back and map smaller registers
blocks based on their capabilities and dispose of the cxl_register_maps.
NOTE: pci_iomap() is not managed automatically via pcim_enable_device()
so be careful to call pci_iounmap() correctly.
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Ira Weiny <ira.weiny@intel.com>
Link: https://lore.kernel.org/r/20210604005036.4187184-1-ira.weiny@intel.com
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/net')
0 files changed, 0 insertions, 0 deletions