#define OARR_SIZE_CFG_SHIFT          1
 #define OARR_SIZE_CFG                BIT(OARR_SIZE_CFG_SHIFT)
 
+#define PCI_EXP_CAP                    0xac
+
 #define MAX_NUM_OB_WINDOWS           2
 
 #define IPROC_PCIE_REG_INVALID 0xffff
        struct device *dev = pcie->dev;
        u8 hdr_type;
        u32 link_ctrl, class, val;
-       u16 pos, link_status;
+       u16 pos = PCI_EXP_CAP, link_status;
        bool link_is_active = false;
 
        /*
        pci_bus_write_config_dword(bus, 0, PCI_BRIDGE_CTRL_REG_OFFSET, class);
 
        /* check link status to see if link is active */
-       pos = pci_bus_find_capability(bus, 0, PCI_CAP_ID_EXP);
        pci_bus_read_config_word(bus, 0, pos + PCI_EXP_LNKSTA, &link_status);
        if (link_status & PCI_EXP_LNKSTA_NLW)
                link_is_active = true;
 
        if (!link_is_active) {
                /* try GEN 1 link speed */
-#define PCI_LINK_STATUS_CTRL_2_OFFSET 0x0dc
 #define PCI_TARGET_LINK_SPEED_MASK    0xf
 #define PCI_TARGET_LINK_SPEED_GEN2    0x2
 #define PCI_TARGET_LINK_SPEED_GEN1    0x1
                pci_bus_read_config_dword(bus, 0,
-                                         PCI_LINK_STATUS_CTRL_2_OFFSET,
+                                         pos + PCI_EXP_LNKCTL2,
                                          &link_ctrl);
                if ((link_ctrl & PCI_TARGET_LINK_SPEED_MASK) ==
                    PCI_TARGET_LINK_SPEED_GEN2) {
                        link_ctrl &= ~PCI_TARGET_LINK_SPEED_MASK;
                        link_ctrl |= PCI_TARGET_LINK_SPEED_GEN1;
                        pci_bus_write_config_dword(bus, 0,
-                                          PCI_LINK_STATUS_CTRL_2_OFFSET,
+                                          pos + PCI_EXP_LNKCTL2,
                                           link_ctrl);
                        msleep(100);
 
-                       pos = pci_bus_find_capability(bus, 0, PCI_CAP_ID_EXP);
                        pci_bus_read_config_word(bus, 0, pos + PCI_EXP_LNKSTA,
                                                 &link_status);
                        if (link_status & PCI_EXP_LNKSTA_NLW)