/* Disable BARs for inbound access */
        ks_dw_pcie_set_dbi_mode(ks_pcie->va_app_base);
-       writel(0, pp->dbi_base + PCI_BASE_ADDRESS_0);
-       writel(0, pp->dbi_base + PCI_BASE_ADDRESS_1);
+       dw_pcie_writel_rc(pp, PCI_BASE_ADDRESS_0, 0);
+       dw_pcie_writel_rc(pp, PCI_BASE_ADDRESS_1, 0);
        ks_dw_pcie_clear_dbi_mode(ks_pcie->va_app_base);
 
        /* Set outbound translation size per window division */
        ks_dw_pcie_set_dbi_mode(ks_pcie->va_app_base);
 
        /* Enable BAR0 */
-       writel(1, pp->dbi_base + PCI_BASE_ADDRESS_0);
-       writel(SZ_4K - 1, pp->dbi_base + PCI_BASE_ADDRESS_0);
+       dw_pcie_writel_rc(pp, PCI_BASE_ADDRESS_0, 1);
+       dw_pcie_writel_rc(pp, PCI_BASE_ADDRESS_0, SZ_4K - 1);
 
        ks_dw_pcie_clear_dbi_mode(ks_pcie->va_app_base);
 
          * For BAR0, just setting bus address for inbound writes (MSI) should
          * be sufficient.  Use physical address to avoid any conflicts.
          */
-       writel(ks_pcie->app.start, pp->dbi_base + PCI_BASE_ADDRESS_0);
+       dw_pcie_writel_rc(pp, PCI_BASE_ADDRESS_0, ks_pcie->app.start);
 }
 
 /**
  */
 int ks_dw_pcie_link_up(struct pcie_port *pp)
 {
-       u32 val = readl(pp->dbi_base + DEBUG0);
+       u32 val;
 
+       val = dw_pcie_readl_rc(pp, DEBUG0);
        return (val & LTSSM_STATE_MASK) == LTSSM_STATE_L0;
 }