Add a custom constant for the ".bus_shit" initialiser to capture
a non-standard platform-specific ECAM bus shift value.

Standard values otherwise defined in the PCI Express Specification
are available in the include/linux/pci-ecam.h.

Suggested-by: Bjorn Helgaas <bhelg...@google.com>
Signed-off-by: Krzysztof Wilczyński <k...@linux.com>
---
 drivers/pci/controller/pci-thunder-pem.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/drivers/pci/controller/pci-thunder-pem.c 
b/drivers/pci/controller/pci-thunder-pem.c
index 3f847969143e..1a3f70ac61fc 100644
--- a/drivers/pci/controller/pci-thunder-pem.c
+++ b/drivers/pci/controller/pci-thunder-pem.c
@@ -19,6 +19,15 @@
 #define PEM_CFG_WR 0x28
 #define PEM_CFG_RD 0x30
 
+/*
+ * Enhanced Configuration Access Mechanism (ECAM)
+ *
+ * N.B. This is a non-standard platform-specific ECAM bus shift value.  For
+ * standard values defined in the PCI Express Base Specification see
+ * include/linux/pci-ecam.h.
+ */
+#define THUNDER_PCIE_ECAM_BUS_SHIFT    24
+
 struct thunder_pem_pci {
        u32             ea_entry[3];
        void __iomem    *pem_reg_base;
@@ -404,7 +413,7 @@ static int thunder_pem_acpi_init(struct pci_config_window 
*cfg)
 }
 
 const struct pci_ecam_ops thunder_pem_ecam_ops = {
-       .bus_shift      = 24,
+       .bus_shift      = THUNDER_PCIE_ECAM_BUS_SHIFT,
        .init           = thunder_pem_acpi_init,
        .pci_ops        = {
                .map_bus        = pci_ecam_map_bus,
@@ -441,7 +450,7 @@ static int thunder_pem_platform_init(struct 
pci_config_window *cfg)
 }
 
 static const struct pci_ecam_ops pci_thunder_pem_ops = {
-       .bus_shift      = 24,
+       .bus_shift      = THUNDER_PCIE_ECAM_BUS_SHIFT,
        .init           = thunder_pem_platform_init,
        .pci_ops        = {
                .map_bus        = pci_ecam_map_bus,
-- 
2.29.2

Reply via email to