diff options
| author | Bjorn Helgaas <[email protected]> | 2021-12-23 21:37:49 +0000 |
|---|---|---|
| committer | Bjorn Helgaas <[email protected]> | 2022-01-03 21:05:28 +0000 |
| commit | 73a0c2be75cf777fa03eb86487dfbe7fbb88d8a2 (patch) | |
| tree | 002653e6b25c5ca7c3460914e278054d66e7126d /drivers/pci/controller/dwc/pci-keystone.c | |
| parent | PCI: hisi: Avoid invalid address space conversions (diff) | |
| download | kernel-73a0c2be75cf777fa03eb86487dfbe7fbb88d8a2.tar.gz kernel-73a0c2be75cf777fa03eb86487dfbe7fbb88d8a2.zip | |
PCI: spear13xx: Avoid invalid address space conversions
The sparse checker complains about converting pointers between address
spaces. We correctly stored an __iomem pointer in struct spear13xx_pcie,
but discarded the __iomem when extracting app_base, causing one warning.
Then we passed the non-__iomem pointer to writel(), which expects an
__iomem pointer, causing another warning.
Add the appropriate annotations.
The sparse warnings look like this:
$ make C=2 drivers/pci/controller/
drivers/pci/controller/dwc/pcie-spear13xx.c:72:54: warning: incorrect type in initializer (different address spaces)
drivers/pci/controller/dwc/pcie-spear13xx.c:72:54: expected struct pcie_app_reg *app_reg
drivers/pci/controller/dwc/pcie-spear13xx.c:72:54: got void [noderef] __iomem *app_base
drivers/pci/controller/dwc/pcie-spear13xx.c:78:26: warning: incorrect type in argument 2 (different address spaces)
drivers/pci/controller/dwc/pcie-spear13xx.c:78:26: expected void volatile [noderef] __iomem *addr
drivers/pci/controller/dwc/pcie-spear13xx.c:78:26: got unsigned int *
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Bjorn Helgaas <[email protected]>
Cc: Pratyush Anand <[email protected]>
Diffstat (limited to 'drivers/pci/controller/dwc/pci-keystone.c')
0 files changed, 0 insertions, 0 deletions
