Lines Matching defs:pcie

13 #include "pcie-cadence.h"
33 struct cdns_pcie *pcie = &rc->pcie;
46 return pcie->reg_base + (where & 0xfff);
49 if (!(cdns_pcie_readl(pcie, CDNS_PCIE_LM_BASE) & 0x1))
52 cdns_pcie_writel(pcie, CDNS_PCIE_AT_LINKDOWN, 0x0);
58 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_PCI_ADDR0(0), addr0);
71 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_DESC0(0), desc0);
82 static int cdns_pcie_host_training_complete(struct cdns_pcie *pcie)
91 lnk_stat = cdns_pcie_rp_readw(pcie, pcie_cap_off + PCI_EXP_LNKSTA);
103 static int cdns_pcie_host_wait_for_link(struct cdns_pcie *pcie)
105 struct device *dev = pcie->dev;
110 if (cdns_pcie_link_up(pcie)) {
120 static int cdns_pcie_retrain(struct cdns_pcie *pcie)
131 lnk_cap_sls = cdns_pcie_readl(pcie, (CDNS_PCIE_RP_BASE + pcie_cap_off +
136 lnk_stat = cdns_pcie_rp_readw(pcie, pcie_cap_off + PCI_EXP_LNKSTA);
138 lnk_ctl = cdns_pcie_rp_readw(pcie,
141 cdns_pcie_rp_writew(pcie, pcie_cap_off + PCI_EXP_LNKCTL,
144 ret = cdns_pcie_host_training_complete(pcie);
148 ret = cdns_pcie_host_wait_for_link(pcie);
153 static void cdns_pcie_host_enable_ptm_response(struct cdns_pcie *pcie)
157 val = cdns_pcie_readl(pcie, CDNS_PCIE_LM_PTM_CTRL);
158 cdns_pcie_writel(pcie, CDNS_PCIE_LM_PTM_CTRL, val | CDNS_PCIE_LM_TPM_CTRL_PTMRSEN);
163 struct cdns_pcie *pcie = &rc->pcie;
166 ret = cdns_pcie_host_wait_for_link(pcie);
173 ret = cdns_pcie_retrain(pcie);
180 struct cdns_pcie *pcie = &rc->pcie;
199 cdns_pcie_writel(pcie, CDNS_PCIE_LM_RC_BAR_CFG, value);
205 cdns_pcie_writel(pcie, CDNS_PCIE_LM_ID, id);
209 cdns_pcie_rp_writew(pcie, PCI_DEVICE_ID, rc->device_id);
211 cdns_pcie_rp_writeb(pcie, PCI_CLASS_REVISION, 0);
212 cdns_pcie_rp_writeb(pcie, PCI_CLASS_PROG, 0);
213 cdns_pcie_rp_writew(pcie, PCI_CLASS_DEVICE, PCI_CLASS_BRIDGE_PCI);
223 struct cdns_pcie *pcie = &rc->pcie;
235 cdns_pcie_writel(pcie, CDNS_PCIE_AT_IB_RP_BAR_ADDR0(bar), addr0);
236 cdns_pcie_writel(pcie, CDNS_PCIE_AT_IB_RP_BAR_ADDR1(bar), addr1);
241 value = cdns_pcie_readl(pcie, CDNS_PCIE_LM_RC_BAR_CFG);
258 cdns_pcie_writel(pcie, CDNS_PCIE_LM_RC_BAR_CFG, value);
315 struct cdns_pcie *pcie = &rc->pcie;
316 struct device *dev = pcie->dev;
396 struct cdns_pcie *pcie = &rc->pcie;
397 struct device *dev = pcie->dev;
433 struct cdns_pcie *pcie = &rc->pcie;
452 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_PCI_ADDR1(0), addr1);
453 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_DESC1(0), desc1);
455 if (pcie->ops->cpu_addr_fixup)
456 cpu_addr = pcie->ops->cpu_addr_fixup(pcie, cpu_addr);
461 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_CPU_ADDR0(0), addr0);
462 cdns_pcie_writel(pcie, CDNS_PCIE_AT_OB_REGION_CPU_ADDR1(0), addr1);
470 cdns_pcie_set_outbound_region(pcie, busnr, 0, r,
476 cdns_pcie_set_outbound_region(pcie, busnr, 0, r,
502 struct device *dev = rc->pcie.dev;
507 struct cdns_pcie *pcie;
515 pcie = &rc->pcie;
516 pcie->is_rc = true;
524 pcie->reg_base = devm_platform_ioremap_resource_byname(pdev, "reg");
525 if (IS_ERR(pcie->reg_base)) {
527 return PTR_ERR(pcie->reg_base);
537 cdns_pcie_detect_quiet_min_delay_set(&rc->pcie);
539 cdns_pcie_host_enable_ptm_response(pcie);
541 ret = cdns_pcie_start_link(pcie);