| /linux/drivers/pci/controller/ |
| H A D | pcie-altera.c | 45 #define S10_RP_CFG_ADDR(pcie, reg) \ argument 46 (((pcie)->hip_base) + (reg) + (1 << 20)) 47 #define S10_RP_SECONDARY(pcie) \ argument 48 readb(S10_RP_CFG_ADDR(pcie, PCI_SECONDARY_BUS)) 59 #define TLP_CFG_DW0(pcie, cfg) \ argument 62 #define TLP_CFG_DW1(pcie, tag, be) \ argument 63 (((PCI_DEVID(pcie->root_bus_nr, RP_DEVFN)) << 16) | (tag << 8) | (be)) 81 #define AGLX_RP_CFG_ADDR(pcie, reg) (((pcie)->hip_base) + (reg)) argument 82 #define AGLX_RP_SECONDARY(pcie) \ argument 83 readb(AGLX_RP_CFG_ADDR(pcie, PCI_SECONDARY_BUS)) [all …]
|
| H A D | pci-aardvark.c | 292 static inline void advk_writel(struct advk_pcie *pcie, u32 val, u64 reg) in advk_writel() argument 294 writel(val, pcie->base + reg); in advk_writel() 297 static inline u32 advk_readl(struct advk_pcie *pcie, u64 reg) in advk_readl() argument 299 return readl(pcie->base + reg); in advk_readl() 302 static u8 advk_pcie_ltssm_state(struct advk_pcie *pcie) in advk_pcie_ltssm_state() argument 307 val = advk_readl(pcie, CFG_REG); in advk_pcie_ltssm_state() 312 static inline bool advk_pcie_link_up(struct advk_pcie *pcie) in advk_pcie_link_up() argument 315 u8 ltssm_state = advk_pcie_ltssm_state(pcie); in advk_pcie_link_up() 319 static inline bool advk_pcie_link_active(struct advk_pcie *pcie) in advk_pcie_link_active() argument 329 u8 ltssm_state = advk_pcie_ltssm_state(pcie); in advk_pcie_link_active() [all …]
|
| H A D | pcie-xilinx-nwl.c | 176 static inline u32 nwl_bridge_readl(struct nwl_pcie *pcie, u32 off) in nwl_bridge_readl() argument 178 return readl(pcie->breg_base + off); in nwl_bridge_readl() 181 static inline void nwl_bridge_writel(struct nwl_pcie *pcie, u32 val, u32 off) in nwl_bridge_writel() argument 183 writel(val, pcie->breg_base + off); in nwl_bridge_writel() 186 static bool nwl_pcie_link_up(struct nwl_pcie *pcie) in nwl_pcie_link_up() argument 188 if (readl(pcie->pcireg_base + PS_LINKUP_OFFSET) & PCIE_PHY_LINKUP_BIT) in nwl_pcie_link_up() 193 static bool nwl_phy_link_up(struct nwl_pcie *pcie) in nwl_phy_link_up() argument 195 if (readl(pcie->pcireg_base + PS_LINKUP_OFFSET) & PHY_RDY_LINKUP_BIT) in nwl_phy_link_up() 200 static int nwl_wait_for_link(struct nwl_pcie *pcie) in nwl_wait_for_link() argument 202 struct device *dev = pcie->dev; in nwl_wait_for_link() [all …]
|
| H A D | pcie-mediatek-gen3.c | 159 int (*power_up)(struct mtk_gen3_pcie *pcie); 269 struct mtk_gen3_pcie *pcie = bus->sysdata; in mtk_pcie_config_tlp_header() local 278 writel_relaxed(val, pcie->base + PCIE_CFGNUM_REG); in mtk_pcie_config_tlp_header() 284 struct mtk_gen3_pcie *pcie = bus->sysdata; in mtk_pcie_map_bus() local 286 return pcie->base + PCIE_CFG_OFFSET_ADDR + where; in mtk_pcie_map_bus() 314 static int mtk_pcie_set_trans_table(struct mtk_gen3_pcie *pcie, in mtk_pcie_set_trans_table() argument 338 dev_err(pcie->dev, "illegal table size %#llx\n", in mtk_pcie_set_trans_table() 343 table = pcie->base + PCIE_TRANS_TABLE_BASE_REG + *num * PCIE_ATR_TLB_SET_OFFSET; in mtk_pcie_set_trans_table() 359 dev_dbg(pcie->dev, "set %s trans window[%d]: cpu_addr = %#llx, pci_addr = %#llx, size = %#llx\n", in mtk_pcie_set_trans_table() 371 dev_warn(pcie->dev, "not enough translate table for addr: %#llx, limited to [%d]\n", in mtk_pcie_set_trans_table() [all …]
|
| H A D | pcie-rcar-host.c | 49 struct rcar_pcie pcie; member 92 static u32 rcar_read_conf(struct rcar_pcie *pcie, int where) in rcar_read_conf() argument 95 u32 val = rcar_pci_read_reg(pcie, where & ~3); in rcar_read_conf() 117 static int rcar_pci_write_reg_workaround(struct rcar_pcie *pcie, u32 val, in rcar_pci_write_reg_workaround() argument 124 : "+r"(error):"r"(val), "r"(pcie->base + reg) : "memory"); in rcar_pci_write_reg_workaround() 126 rcar_pci_write_reg(pcie, val, reg); in rcar_pci_write_reg_workaround() 131 static int rcar_pci_read_reg_workaround(struct rcar_pcie *pcie, u32 *val, in rcar_pci_read_reg_workaround() argument 138 : "+r"(error), "=r"(*val) : "r"(pcie->base + reg) : "memory"); in rcar_pci_read_reg_workaround() 143 *val = rcar_pci_read_reg(pcie, reg); in rcar_pci_read_reg_workaround() 153 struct rcar_pcie *pcie = &host->pcie; in rcar_pcie_config_access() local [all …]
|
| H A D | pcie-rcar-ep.c | 23 struct rcar_pcie pcie; member 33 static void rcar_pcie_ep_hw_init(struct rcar_pcie *pcie) in rcar_pcie_ep_hw_init() argument 37 rcar_pci_write_reg(pcie, 0, PCIETCTLR); in rcar_pcie_ep_hw_init() 40 rcar_pci_write_reg(pcie, 0, PCIEMSR); in rcar_pcie_ep_hw_init() 43 rcar_rmw32(pcie, REXPCAP(0), 0xff, PCI_CAP_ID_EXP); in rcar_pcie_ep_hw_init() 44 rcar_rmw32(pcie, REXPCAP(PCI_EXP_FLAGS), in rcar_pcie_ep_hw_init() 46 rcar_rmw32(pcie, RCONF(PCI_HEADER_TYPE), PCI_HEADER_TYPE_MASK, in rcar_pcie_ep_hw_init() 50 rcar_rmw32(pcie, REXPCAP(PCI_EXP_SLTCAP), PCI_EXP_SLTCAP_PSN, 0); in rcar_pcie_ep_hw_init() 52 val = rcar_pci_read_reg(pcie, EXPCAP(1)); in rcar_pcie_ep_hw_init() 55 rcar_pci_write_reg(pcie, val, EXPCAP(1)); in rcar_pcie_ep_hw_init() [all …]
|
| H A D | pcie-rcar.c | 14 void rcar_pci_write_reg(struct rcar_pcie *pcie, u32 val, unsigned int reg) in rcar_pci_write_reg() argument 16 writel(val, pcie->base + reg); in rcar_pci_write_reg() 19 u32 rcar_pci_read_reg(struct rcar_pcie *pcie, unsigned int reg) in rcar_pci_read_reg() argument 21 return readl(pcie->base + reg); in rcar_pci_read_reg() 24 void rcar_rmw32(struct rcar_pcie *pcie, int where, u32 mask, u32 data) in rcar_rmw32() argument 27 u32 val = rcar_pci_read_reg(pcie, where & ~3); in rcar_rmw32() 31 rcar_pci_write_reg(pcie, val, where & ~3); in rcar_rmw32() 34 int rcar_pcie_wait_for_phyrdy(struct rcar_pcie *pcie) in rcar_pcie_wait_for_phyrdy() argument 39 if (rcar_pci_read_reg(pcie, PCIEPHYSR) & PHYRDY) in rcar_pcie_wait_for_phyrdy() 48 int rcar_pcie_wait_for_dl(struct rcar_pcie *pcie) in rcar_pcie_wait_for_dl() argument [all …]
|
| H A D | pcie-iproc-bcma.c | 28 struct iproc_pcie *pcie = dev->sysdata; in iproc_bcma_pcie_map_irq() local 29 struct bcma_device *bdev = container_of(pcie->dev, struct bcma_device, dev); in iproc_bcma_pcie_map_irq() 37 struct iproc_pcie *pcie; in iproc_bcma_pcie_probe() local 41 bridge = devm_pci_alloc_host_bridge(dev, sizeof(*pcie)); in iproc_bcma_pcie_probe() 45 pcie = pci_host_bridge_priv(bridge); in iproc_bcma_pcie_probe() 47 pcie->dev = dev; in iproc_bcma_pcie_probe() 49 pcie->type = IPROC_PCIE_PAXB_BCMA; in iproc_bcma_pcie_probe() 50 pcie->base = bdev->io_addr; in iproc_bcma_pcie_probe() 51 if (!pcie->base) { in iproc_bcma_pcie_probe() 56 pcie->base_addr = bdev->addr; in iproc_bcma_pcie_probe() [all …]
|
| H A D | pcie-iproc-msi.c | 94 struct iproc_pcie *pcie; member 131 struct iproc_pcie *pcie = msi->pcie; in iproc_msi_read_reg() local 133 return readl_relaxed(pcie->base + msi->reg_offsets[eq][reg]); in iproc_msi_read_reg() 140 struct iproc_pcie *pcie = msi->pcie; in iproc_msi_write_reg() local 142 writel_relaxed(val, pcie->base + msi->reg_offsets[eq][reg]); in iproc_msi_write_reg() 484 struct iproc_pcie *pcie = msi->pcie; in iproc_msi_irq_setup() local 496 dev_err(pcie->dev, in iproc_msi_irq_setup() 501 dev_err(pcie->dev, "failed to alloc CPU mask\n"); in iproc_msi_irq_setup() 515 int iproc_msi_init(struct iproc_pcie *pcie, struct device_node *node) in iproc_msi_init() argument 527 if (pcie->msi) in iproc_msi_init() [all …]
|
| H A D | pci-mvebu.c | 116 struct mvebu_pcie *pcie; member 344 static struct mvebu_pcie_port *mvebu_pcie_find_port(struct mvebu_pcie *pcie, 351 struct mvebu_pcie *pcie = bus->sysdata; in mvebu_pcie_child_rd_conf() local 355 port = mvebu_pcie_find_port(pcie, bus, devfn); in mvebu_pcie_child_rd_conf() 387 struct mvebu_pcie *pcie = bus->sysdata; in mvebu_pcie_child_wr_conf() local 391 port = mvebu_pcie_find_port(pcie, bus, devfn); in mvebu_pcie_child_wr_conf() 463 dev_err(&port->pcie->pdev->dev, in mvebu_pcie_add_windows() 539 desired.base = port->pcie->io.start + desired.remap; in mvebu_pcie_handle_iobase_change() 961 static struct mvebu_pcie_port *mvebu_pcie_find_port(struct mvebu_pcie *pcie, in mvebu_pcie_find_port() argument 967 for (i = 0; i < pcie->nports; i++) { in mvebu_pcie_find_port() [all …]
|
| /linux/drivers/pci/controller/mobiveil/ |
| H A D | pcie-mobiveil-host.c | 51 struct mobiveil_pcie *pcie = bus->sysdata; in mobiveil_pcie_map_bus() local 52 struct mobiveil_root_port *rp = &pcie->rp; in mobiveil_pcie_map_bus() 60 return pcie->csr_axi_slave_base + where; in mobiveil_pcie_map_bus() 72 mobiveil_csr_writel(pcie, value, PAB_AXI_AMAP_PEX_WIN_L(WIN_NUM_0)); in mobiveil_pcie_map_bus() 86 struct mobiveil_pcie *pcie = irq_desc_get_handler_data(desc); in mobiveil_pcie_isr() local 87 struct device *dev = &pcie->pdev->dev; in mobiveil_pcie_isr() 88 struct mobiveil_root_port *rp = &pcie->rp; in mobiveil_pcie_isr() 103 val = mobiveil_csr_readl(pcie, PAB_INTP_AMBA_MISC_STAT); in mobiveil_pcie_isr() 104 mask = mobiveil_csr_readl(pcie, PAB_INTP_AMBA_MISC_ENB); in mobiveil_pcie_isr() 109 shifted_status = mobiveil_csr_readl(pcie, in mobiveil_pcie_isr() [all …]
|
| H A D | pcie-mobiveil.c | 28 static void mobiveil_pcie_sel_page(struct mobiveil_pcie *pcie, u8 pg_idx) in mobiveil_pcie_sel_page() argument 32 val = readl(pcie->csr_axi_slave_base + PAB_CTRL); in mobiveil_pcie_sel_page() 36 writel(val, pcie->csr_axi_slave_base + PAB_CTRL); in mobiveil_pcie_sel_page() 39 static void __iomem *mobiveil_pcie_comp_addr(struct mobiveil_pcie *pcie, in mobiveil_pcie_comp_addr() argument 44 mobiveil_pcie_sel_page(pcie, 0); in mobiveil_pcie_comp_addr() 45 return pcie->csr_axi_slave_base + off; in mobiveil_pcie_comp_addr() 48 mobiveil_pcie_sel_page(pcie, OFFSET_TO_PAGE_IDX(off)); in mobiveil_pcie_comp_addr() 49 return pcie->csr_axi_slave_base + OFFSET_TO_PAGE_ADDR(off); in mobiveil_pcie_comp_addr() 99 u32 mobiveil_csr_read(struct mobiveil_pcie *pcie, u32 off, size_t size) in mobiveil_csr_read() argument 105 addr = mobiveil_pcie_comp_addr(pcie, off); in mobiveil_csr_read() [all …]
|
| H A D | pcie-layerscape-gen4.c | 45 static inline u32 ls_g4_pcie_pf_readl(struct ls_g4_pcie *pcie, u32 off) in ls_g4_pcie_pf_readl() argument 47 return ioread32(pcie->pci.csr_axi_slave_base + PCIE_PF_OFF + off); in ls_g4_pcie_pf_readl() 50 static inline void ls_g4_pcie_pf_writel(struct ls_g4_pcie *pcie, in ls_g4_pcie_pf_writel() argument 53 iowrite32(val, pcie->pci.csr_axi_slave_base + PCIE_PF_OFF + off); in ls_g4_pcie_pf_writel() 58 struct ls_g4_pcie *pcie = to_ls_g4_pcie(pci); in ls_g4_pcie_link_up() local 61 state = ls_g4_pcie_pf_readl(pcie, PCIE_PF_DBG); in ls_g4_pcie_link_up() 65 static void ls_g4_pcie_disable_interrupt(struct ls_g4_pcie *pcie) in ls_g4_pcie_disable_interrupt() argument 67 struct mobiveil_pcie *mv_pci = &pcie->pci; in ls_g4_pcie_disable_interrupt() 72 static void ls_g4_pcie_enable_interrupt(struct ls_g4_pcie *pcie) in ls_g4_pcie_enable_interrupt() argument 74 struct mobiveil_pcie *mv_pci = &pcie->pci; in ls_g4_pcie_enable_interrupt() [all …]
|
| H A D | pcie-mobiveil.h | 147 int (*interrupt_init)(struct mobiveil_pcie *pcie); 162 bool (*link_up)(struct mobiveil_pcie *pcie); 178 int mobiveil_pcie_host_probe(struct mobiveil_pcie *pcie); 179 int mobiveil_host_init(struct mobiveil_pcie *pcie, bool reinit); 180 bool mobiveil_pcie_link_up(struct mobiveil_pcie *pcie); 181 int mobiveil_bringup_link(struct mobiveil_pcie *pcie); 182 void program_ob_windows(struct mobiveil_pcie *pcie, int win_num, u64 cpu_addr, 184 void program_ib_windows(struct mobiveil_pcie *pcie, int win_num, u64 cpu_addr, 186 u32 mobiveil_csr_read(struct mobiveil_pcie *pcie, u32 off, size_t size); 187 void mobiveil_csr_write(struct mobiveil_pcie *pcie, u32 val, u32 off, [all …]
|
| /linux/drivers/pci/controller/dwc/ |
| H A D | pcie-visconti.c | 97 static void visconti_ulreg_writel(struct visconti_pcie *pcie, u32 val, u32 reg) in visconti_ulreg_writel() argument 99 writel_relaxed(val, pcie->ulreg_base + reg); in visconti_ulreg_writel() 102 static u32 visconti_ulreg_readl(struct visconti_pcie *pcie, u32 reg) in visconti_ulreg_readl() argument 104 return readl_relaxed(pcie->ulreg_base + reg); in visconti_ulreg_readl() 108 static void visconti_smu_writel(struct visconti_pcie *pcie, u32 val, u32 reg) in visconti_smu_writel() argument 110 writel_relaxed(val, pcie->smu_base + reg); in visconti_smu_writel() 114 static void visconti_mpu_writel(struct visconti_pcie *pcie, u32 val, u32 reg) in visconti_mpu_writel() argument 116 writel_relaxed(val, pcie->mpu_base + reg); in visconti_mpu_writel() 119 static u32 visconti_mpu_readl(struct visconti_pcie *pcie, u32 reg) in visconti_mpu_readl() argument 121 return readl_relaxed(pcie->mpu_base + reg); in visconti_mpu_readl() [all …]
|
| H A D | pcie-amd-mdb.c | 77 struct amd_mdb_pcie *pcie = irq_data_get_irq_chip_data(data); in amd_mdb_intx_irq_mask() local 78 struct dw_pcie *pci = &pcie->pci; in amd_mdb_intx_irq_mask() 91 writel_relaxed(val, pcie->slcr + AMD_MDB_TLP_IR_DISABLE_MISC); in amd_mdb_intx_irq_mask() 97 struct amd_mdb_pcie *pcie = irq_data_get_irq_chip_data(data); in amd_mdb_intx_irq_unmask() local 98 struct dw_pcie *pci = &pcie->pci; in amd_mdb_intx_irq_unmask() 111 writel_relaxed(val, pcie->slcr + AMD_MDB_TLP_IR_ENABLE_MISC); in amd_mdb_intx_irq_unmask() 147 struct amd_mdb_pcie *pcie = args; in dw_pcie_rp_intx() local 151 val = readl_relaxed(pcie->slcr + AMD_MDB_TLP_IR_STATUS_MISC); in dw_pcie_rp_intx() 156 generic_handle_domain_irq(pcie->intx_domain, i); in dw_pcie_rp_intx() 178 struct amd_mdb_pcie *pcie = irq_data_get_irq_chip_data(d); in amd_mdb_event_irq_mask() local [all …]
|
| H A D | pcie-uniphier.c | 75 static void uniphier_pcie_ltssm_enable(struct uniphier_pcie *pcie, in uniphier_pcie_ltssm_enable() argument 80 val = readl(pcie->base + PCL_APP_READY_CTRL); in uniphier_pcie_ltssm_enable() 85 writel(val, pcie->base + PCL_APP_READY_CTRL); in uniphier_pcie_ltssm_enable() 88 static void uniphier_pcie_init_rc(struct uniphier_pcie *pcie) in uniphier_pcie_init_rc() argument 93 val = readl(pcie->base + PCL_MODE); in uniphier_pcie_init_rc() 96 writel(val, pcie->base + PCL_MODE); in uniphier_pcie_init_rc() 99 val = readl(pcie->base + PCL_APP_PM0); in uniphier_pcie_init_rc() 101 writel(val, pcie->base + PCL_APP_PM0); in uniphier_pcie_init_rc() 104 val = readl(pcie->base + PCL_PINCTRL0); in uniphier_pcie_init_rc() 109 writel(val, pcie->base + PCL_PINCTRL0); in uniphier_pcie_init_rc() [all …]
|
| H A D | pcie-qcom.c | 241 int (*get_resources)(struct qcom_pcie *pcie); 242 int (*init)(struct qcom_pcie *pcie); 243 int (*post_init)(struct qcom_pcie *pcie); 244 void (*host_post_init)(struct qcom_pcie *pcie); 245 void (*deinit)(struct qcom_pcie *pcie); 246 void (*ltssm_enable)(struct qcom_pcie *pcie); 247 int (*config_sid)(struct qcom_pcie *pcie); 291 static void __qcom_pcie_perst_assert(struct qcom_pcie *pcie, bool assert) in __qcom_pcie_perst_assert() argument 297 list_for_each_entry(port, &pcie->ports, list) { in __qcom_pcie_perst_assert() 305 static void qcom_pcie_perst_assert(struct qcom_pcie *pcie) in qcom_pcie_perst_assert() argument [all …]
|
| H A D | pcie-armada8k.c | 73 static void armada8k_pcie_disable_phys(struct armada8k_pcie *pcie) in armada8k_pcie_disable_phys() argument 78 phy_power_off(pcie->phy[i]); in armada8k_pcie_disable_phys() 79 phy_exit(pcie->phy[i]); in armada8k_pcie_disable_phys() 83 static int armada8k_pcie_enable_phys(struct armada8k_pcie *pcie) in armada8k_pcie_enable_phys() argument 89 ret = phy_init(pcie->phy[i]); in armada8k_pcie_enable_phys() 93 ret = phy_set_mode_ext(pcie->phy[i], PHY_MODE_PCIE, in armada8k_pcie_enable_phys() 94 pcie->phy_count); in armada8k_pcie_enable_phys() 96 phy_exit(pcie->phy[i]); in armada8k_pcie_enable_phys() 100 ret = phy_power_on(pcie->phy[i]); in armada8k_pcie_enable_phys() 102 phy_exit(pcie->phy[i]); in armada8k_pcie_enable_phys() [all …]
|
| H A D | pci-layerscape-ep.c | 52 static u32 ls_pcie_pf_lut_readl(struct ls_pcie_ep *pcie, u32 offset) in ls_pcie_pf_lut_readl() argument 54 struct dw_pcie *pci = pcie->pci; in ls_pcie_pf_lut_readl() 56 if (pcie->big_endian) in ls_pcie_pf_lut_readl() 62 static void ls_pcie_pf_lut_writel(struct ls_pcie_ep *pcie, u32 offset, u32 value) in ls_pcie_pf_lut_writel() argument 64 struct dw_pcie *pci = pcie->pci; in ls_pcie_pf_lut_writel() 66 if (pcie->big_endian) in ls_pcie_pf_lut_writel() 74 struct ls_pcie_ep *pcie = dev_id; in ls_pcie_ep_event_handler() local 75 struct dw_pcie *pci = pcie->pci; in ls_pcie_ep_event_handler() 79 val = ls_pcie_pf_lut_readl(pcie, PEX_PF0_PME_MES_DR); in ls_pcie_ep_event_handler() 80 ls_pcie_pf_lut_writel(pcie, PEX_PF0_PME_MES_DR, val); in ls_pcie_ep_event_handler() [all …]
|
| H A D | pcie-al.c | 26 struct al_pcie_acpi *pcie = cfg->priv; in al_pcie_map_bus() local 27 void __iomem *dbi_base = pcie->dbi_base; in al_pcie_map_bus() 142 static inline u32 al_pcie_controller_readl(struct al_pcie *pcie, u32 offset) in al_pcie_controller_readl() argument 144 return readl_relaxed(pcie->controller_base + offset); in al_pcie_controller_readl() 147 static inline void al_pcie_controller_writel(struct al_pcie *pcie, u32 offset, in al_pcie_controller_writel() argument 150 writel_relaxed(val, pcie->controller_base + offset); in al_pcie_controller_writel() 153 static int al_pcie_rev_id_get(struct al_pcie *pcie, unsigned int *rev_id) in al_pcie_rev_id_get() argument 158 dev_rev_id_val = al_pcie_controller_readl(pcie, AXI_BASE_OFFSET + in al_pcie_rev_id_get() 174 dev_err(pcie->dev, "Unsupported dev_id_val (0x%x)\n", in al_pcie_rev_id_get() 179 dev_dbg(pcie->dev, "dev_id_val: 0x%x\n", dev_id_val); in al_pcie_rev_id_get() [all …]
|
| H A D | pcie-hisi.c | 66 struct hisi_pcie *pcie = cfg->priv; in hisi_pcie_map_bus() local 69 return pcie->reg_base + where; in hisi_pcie_map_bus() 79 struct hisi_pcie *pcie; in hisi_pcie_init() local 85 pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL); in hisi_pcie_init() 86 if (!pcie) in hisi_pcie_init() 103 pcie->reg_base = devm_pci_remap_cfgspace(dev, res->start, resource_size(res)); in hisi_pcie_init() 104 if (!pcie->reg_base) in hisi_pcie_init() 107 cfg->priv = pcie; in hisi_pcie_init() 127 struct hisi_pcie *pcie; in hisi_pcie_platform_init() local 131 pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL); in hisi_pcie_platform_init() [all …]
|
| /linux/drivers/pci/controller/cadence/ |
| H A D | pcie-cadence-ep.c | 22 static u8 cdns_pcie_get_fn_from_vfn(struct cdns_pcie *pcie, u8 fn, u8 vfn) in cdns_pcie_get_fn_from_vfn() argument 30 cap = cdns_pcie_find_ext_capability(pcie, PCI_EXT_CAP_ID_SRIOV); in cdns_pcie_get_fn_from_vfn() 31 first_vf_offset = cdns_pcie_ep_fn_readw(pcie, fn, cap + PCI_SRIOV_VF_OFFSET); in cdns_pcie_get_fn_from_vfn() 32 stride = cdns_pcie_ep_fn_readw(pcie, fn, cap + PCI_SRIOV_VF_STRIDE); in cdns_pcie_get_fn_from_vfn() 42 struct cdns_pcie *pcie = &ep->pcie; in cdns_pcie_ep_write_header() local 46 cap = cdns_pcie_find_ext_capability(pcie, PCI_EXT_CAP_ID_SRIOV); in cdns_pcie_ep_write_header() 52 cdns_pcie_ep_fn_writew(pcie, fn, reg, hdr->deviceid); in cdns_pcie_ep_write_header() 56 cdns_pcie_ep_fn_writew(pcie, fn, PCI_DEVICE_ID, hdr->deviceid); in cdns_pcie_ep_write_header() 57 cdns_pcie_ep_fn_writeb(pcie, fn, PCI_REVISION_ID, hdr->revid); in cdns_pcie_ep_write_header() 58 cdns_pcie_ep_fn_writeb(pcie, fn, PCI_CLASS_PROG, hdr->progif_code); in cdns_pcie_ep_write_header() [all …]
|
| /linux/drivers/gpu/drm/nouveau/nvkm/subdev/pci/ |
| H A D | pcie.c | 53 if (!pci->func->pcie.version) in nvkm_pcie_get_version() 56 return pci->func->pcie.version(pci); in nvkm_pcie_get_version() 62 if (!pci->func->pcie.version_supported) in nvkm_pcie_get_max_version() 65 return pci->func->pcie.version_supported(pci); in nvkm_pcie_get_max_version() 71 if (!pci->func->pcie.set_version) in nvkm_pcie_set_version() 75 pci->func->pcie.set_version(pci, version); in nvkm_pcie_set_version() 82 if (pci->func->pcie.max_speed) in nvkm_pcie_oneinit() 84 nvkm_pcie_speeds[pci->func->pcie.max_speed(pci)]); in nvkm_pcie_oneinit() 105 if (pci->func->pcie.init) in nvkm_pcie_init() 106 pci->func->pcie.init(pci); in nvkm_pcie_init() [all …]
|
| /linux/arch/arm/boot/dts/marvell/ |
| H A D | armada-xp-mv78460.dtsi | 70 pciec: pcie@82000000 { 71 compatible = "marvell,armada-xp-pcie"; 116 pcie1: pcie@1,0 { 133 marvell,pcie-port = <0>; 134 marvell,pcie-lane = <0>; 144 pcie2: pcie@2,0 { 161 marvell,pcie-port = <0>; 162 marvell,pcie-lane = <1>; 172 pcie3: pcie@3,0 { 189 marvell,pcie-port = <0>; [all …]
|