| /linux/drivers/pci/controller/dwc/ |
| H A D | pcie-designware-ep.c | 27 dw_pcie_ep_get_func_from_ep(struct dw_pcie_ep *ep, u8 func_no) in dw_pcie_ep_get_func_from_ep() argument 32 if (ep_func->func_no == func_no) in dw_pcie_ep_get_func_from_ep() 39 static void __dw_pcie_ep_reset_bar(struct dw_pcie *pci, u8 func_no, in __dw_pcie_ep_reset_bar() argument 47 dw_pcie_ep_writel_dbi2(ep, func_no, reg, 0x0); in __dw_pcie_ep_reset_bar() 48 dw_pcie_ep_writel_dbi(ep, func_no, reg, 0x0); in __dw_pcie_ep_reset_bar() 50 dw_pcie_ep_writel_dbi2(ep, func_no, reg + 4, 0x0); in __dw_pcie_ep_reset_bar() 51 dw_pcie_ep_writel_dbi(ep, func_no, reg + 4, 0x0); in __dw_pcie_ep_reset_bar() 63 u8 func_no, funcs; in dw_pcie_ep_reset_bar() local 67 for (func_no = 0; func_no < funcs; func_no++) in dw_pcie_ep_reset_bar() 68 __dw_pcie_ep_reset_bar(pci, func_no, bar, 0); in dw_pcie_ep_reset_bar() [all …]
|
| H A D | pcie-designware.h | 405 u8 func_no; member 455 int (*raise_irq)(struct dw_pcie_ep *ep, u8 func_no, 465 unsigned int (*get_dbi_offset)(struct dw_pcie_ep *ep, u8 func_no); 466 unsigned int (*get_dbi2_offset)(struct dw_pcie_ep *ep, u8 func_no); 471 u8 func_no; member 600 int dw_pcie_prog_ep_inbound_atu(struct dw_pcie *pci, u8 func_no, int index, 670 u8 func_no) in dw_pcie_ep_get_dbi_offset() argument 675 dbi_offset = ep->ops->get_dbi_offset(ep, func_no); in dw_pcie_ep_get_dbi_offset() 680 static inline u32 dw_pcie_ep_read_dbi(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_read_dbi() argument 683 unsigned int offset = dw_pcie_ep_get_dbi_offset(ep, func_no); in dw_pcie_ep_read_dbi() [all …]
|
| H A D | pci-layerscape-ep.c | 168 static int ls_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in ls_pcie_ep_raise_irq() argument 175 return dw_pcie_ep_raise_intx_irq(ep, func_no); in ls_pcie_ep_raise_irq() 177 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in ls_pcie_ep_raise_irq() 179 return dw_pcie_ep_raise_msix_irq_doorbell(ep, func_no, in ls_pcie_ep_raise_irq() 187 static unsigned int ls_pcie_ep_get_dbi_offset(struct dw_pcie_ep *ep, u8 func_no) in ls_pcie_ep_get_dbi_offset() argument 192 WARN_ON(func_no && !pcie->drvdata->func_offset); in ls_pcie_ep_get_dbi_offset() 193 return pcie->drvdata->func_offset * func_no; in ls_pcie_ep_get_dbi_offset()
|
| H A D | pcie-designware-plat.c | 44 static int dw_plat_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in dw_plat_pcie_ep_raise_irq() argument 51 return dw_pcie_ep_raise_intx_irq(ep, func_no); in dw_plat_pcie_ep_raise_irq() 53 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in dw_plat_pcie_ep_raise_irq() 55 return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); in dw_plat_pcie_ep_raise_irq()
|
| H A D | pcie-rcar-gen4.c | 404 static int rcar_gen4_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in rcar_gen4_pcie_ep_raise_irq() argument 411 return dw_pcie_ep_raise_intx_irq(ep, func_no); in rcar_gen4_pcie_ep_raise_irq() 413 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in rcar_gen4_pcie_ep_raise_irq() 439 u8 func_no) in rcar_gen4_pcie_ep_get_dbi_offset() argument 441 return func_no * RCAR_GEN4_PCIE_EP_FUNC_DBI_OFFSET; in rcar_gen4_pcie_ep_get_dbi_offset() 445 u8 func_no) in rcar_gen4_pcie_ep_get_dbi2_offset() argument 447 return func_no * RCAR_GEN4_PCIE_EP_FUNC_DBI2_OFFSET; in rcar_gen4_pcie_ep_get_dbi2_offset()
|
| H A D | pcie-stm32-ep.c | 56 static int stm32_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in stm32_pcie_raise_irq() argument 63 return dw_pcie_ep_raise_intx_irq(ep, func_no); in stm32_pcie_raise_irq() 65 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in stm32_pcie_raise_irq()
|
| H A D | pcie-uniphier-ep.c | 241 u8 func_no, u16 interrupt_num) in uniphier_pcie_ep_raise_msi_irq() argument 247 val = FIELD_PREP(PCL_APP_VEN_MSI_TC_MASK, func_no) in uniphier_pcie_ep_raise_msi_irq() 258 static int uniphier_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in uniphier_pcie_ep_raise_irq() argument 267 return uniphier_pcie_ep_raise_msi_irq(ep, func_no, in uniphier_pcie_ep_raise_irq()
|
| H A D | pcie-keembay.c | 291 static int keembay_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in keembay_pcie_ep_raise_irq() argument 302 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in keembay_pcie_ep_raise_irq() 304 return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); in keembay_pcie_ep_raise_irq()
|
| H A D | pcie-dw-rockchip.c | 373 static int rockchip_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in rockchip_pcie_raise_irq() argument 380 return dw_pcie_ep_raise_intx_irq(ep, func_no); in rockchip_pcie_raise_irq() 382 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in rockchip_pcie_raise_irq() 384 return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); in rockchip_pcie_raise_irq()
|
| H A D | pcie-artpec6.c | 354 static int artpec6_pcie_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in artpec6_pcie_raise_irq() argument 364 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in artpec6_pcie_raise_irq()
|
| H A D | pcie-qcom-ep.c | 800 static int qcom_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in qcom_pcie_ep_raise_irq() argument 807 return dw_pcie_ep_raise_intx_irq(ep, func_no); in qcom_pcie_ep_raise_irq() 809 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in qcom_pcie_ep_raise_irq()
|
| H A D | pci-imx6.c | 1413 static int imx_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in imx_pcie_ep_raise_irq() argument 1420 return dw_pcie_ep_raise_intx_irq(ep, func_no); in imx_pcie_ep_raise_irq() 1422 return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in imx_pcie_ep_raise_irq() 1424 return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); in imx_pcie_ep_raise_irq()
|
| H A D | pci-keystone.c | 908 static int ks_pcie_am654_raise_irq(struct dw_pcie_ep *ep, u8 func_no, in ks_pcie_am654_raise_irq() argument 919 dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); in ks_pcie_am654_raise_irq() 922 dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); in ks_pcie_am654_raise_irq()
|
| H A D | pcie-designware.c | 562 val = atu->type | atu->routing | PCIE_ATU_FUNC_NUM(atu->func_no); in dw_pcie_prog_outbound_atu() 660 int dw_pcie_prog_ep_inbound_atu(struct dw_pcie *pci, u8 func_no, int index, in dw_pcie_prog_ep_inbound_atu() argument 675 PCIE_ATU_FUNC_NUM(func_no)); in dw_pcie_prog_ep_inbound_atu()
|
| /linux/drivers/pci/endpoint/ |
| H A D | pci-epc-core.c | 116 u8 func_no, u8 vfunc_no) in pci_epc_function_is_valid() argument 118 if (IS_ERR_OR_NULL(epc) || func_no >= epc->max_functions) in pci_epc_function_is_valid() 121 if (vfunc_no > 0 && (!epc->max_vfs || vfunc_no > epc->max_vfs[func_no])) in pci_epc_function_is_valid() 140 u8 func_no, u8 vfunc_no) in pci_epc_get_features() argument 144 if (!pci_epc_function_is_valid(epc, func_no, vfunc_no)) in pci_epc_get_features() 151 epc_features = epc->ops->get_features(epc, func_no, vfunc_no); in pci_epc_get_features() 209 int pci_epc_raise_irq(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in pci_epc_raise_irq() argument 214 if (!pci_epc_function_is_valid(epc, func_no, vfunc_no)) in pci_epc_raise_irq() 221 ret = epc->ops->raise_irq(epc, func_no, vfunc_no, type, interrupt_num); in pci_epc_raise_irq() 249 int pci_epc_map_msi_irq(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in pci_epc_map_msi_irq() argument [all …]
|
| H A D | pci-epf-core.c | 63 u8 func_no, vfunc_no; in pci_epf_bind() local 86 func_no = epf->func_no; in pci_epf_bind() 94 if (vfunc_no > epc->max_vfs[func_no]) { in pci_epf_bind() 96 func_no); in pci_epf_bind() 103 func_no = epf->sec_epc_func_no; in pci_epf_bind() 111 if (vfunc_no > epc->max_vfs[func_no]) { in pci_epf_bind() 113 func_no); in pci_epf_bind() 119 epf_vf->func_no = epf->func_no; in pci_epf_bind()
|
| /linux/include/linux/ |
| H A D | pci-epc.h | 90 int (*write_header)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 92 int (*set_bar)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 94 void (*clear_bar)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 98 int (*map_addr)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 100 void (*unmap_addr)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 102 int (*set_msi)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 104 int (*get_msi)(struct pci_epc *epc, u8 func_no, u8 vfunc_no); 105 int (*set_msix)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, 107 int (*get_msix)(struct pci_epc *epc, u8 func_no, u8 vfunc_no); 108 int (*raise_irq)(struct pci_epc *epc, u8 func_no, u8 vfunc_no, [all …]
|
| H A D | pci-epf.h | 202 u8 func_no; member
|
| /linux/drivers/pci/endpoint/functions/ |
| H A D | pci-epf-ntb.c | 89 u8 func_no; member 147 u8 func_no, vfunc_no; in epf_ntb_link_up() local 154 func_no = ntb_epc->func_no; in epf_ntb_link_up() 163 ret = pci_epc_raise_irq(epc, func_no, vfunc_no, irq_type, 1); in epf_ntb_link_up() 243 u8 func_no, vfunc_no; in epf_ntb_configure_mw() local 271 func_no = ntb_epc->func_no; in epf_ntb_configure_mw() 274 ret = pci_epc_map_addr(epc, func_no, vfunc_no, phys_addr, addr, size); in epf_ntb_configure_mw() 302 u8 func_no, vfunc_no; in epf_ntb_teardown_mw() local 316 func_no = ntb_epc->func_no; in epf_ntb_teardown_mw() 319 pci_epc_unmap_addr(epc, func_no, vfunc_no, phys_addr); in epf_ntb_teardown_mw() [all …]
|
| H A D | pci-epf-vntb.c | 210 u8 func_no, vfunc_no; in epf_ntb_configure_mw() local 218 func_no = ntb->epf->func_no; in epf_ntb_configure_mw() 221 ret = pci_epc_map_addr(ntb->epf->epc, func_no, vfunc_no, phys_addr, addr, size); in epf_ntb_configure_mw() 239 ntb->epf->func_no, in epf_ntb_teardown_mw() 367 pci_epc_clear_bar(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no, epf_bar); in epf_ntb_config_sspad_bar_clear() 386 u8 func_no, vfunc_no; in epf_ntb_config_sspad_bar_set() local 391 func_no = ntb->epf->func_no; in epf_ntb_config_sspad_bar_set() 396 ret = pci_epc_set_bar(ntb->epf->epc, func_no, vfunc_no, epf_bar); in epf_ntb_config_sspad_bar_set() 439 epf->func_no, in epf_ntb_config_spad_bar_alloc() 491 epc_features = pci_epc_get_features(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no); in epf_ntb_configure_interrupt() [all …]
|
| H A D | pci-epf-test.c | 385 ret = pci_epc_mem_map(epc, epf->func_no, epf->vfunc_no, in pci_epf_test_copy() 393 ret = pci_epc_mem_map(epf->epc, epf->func_no, epf->vfunc_no, in pci_epf_test_copy() 398 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, in pci_epf_test_copy() 425 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, &dst_map); in pci_epf_test_copy() 426 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, &src_map); in pci_epf_test_copy() 435 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, &dst_map); in pci_epf_test_copy() 436 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, &src_map); in pci_epf_test_copy() 480 ret = pci_epc_mem_map(epc, epf->func_no, epf->vfunc_no, in pci_epf_test_read() 522 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, &map); in pci_epf_test_read() 535 pci_epc_mem_unmap(epc, epf->func_no, epf->vfunc_no, &map); in pci_epf_test_read() [all …]
|
| H A D | pci-epf-mhi.c | 179 ret = pci_epc_map_addr(epc, epf->func_no, epf->vfunc_no, *paddr, in __pci_epf_mhi_alloc_map() 212 pci_epc_unmap_addr(epc, epf->func_no, epf->vfunc_no, paddr - offset); in __pci_epf_mhi_unmap_free() 238 pci_epc_raise_irq(epc, epf->func_no, epf->vfunc_no, PCI_IRQ_MSI, in pci_epf_mhi_raise_irq() 733 ret = pci_epc_set_bar(epc, epf->func_no, epf->vfunc_no, epf_bar); in pci_epf_mhi_epc_init() 739 ret = pci_epc_set_msi(epc, epf->func_no, epf->vfunc_no, in pci_epf_mhi_epc_init() 746 ret = pci_epc_write_header(epc, epf->func_no, epf->vfunc_no, in pci_epf_mhi_epc_init() 753 epf_mhi->epc_features = pci_epc_get_features(epc, epf->func_no, epf->vfunc_no); in pci_epf_mhi_epc_init() 783 pci_epc_clear_bar(epc, epf->func_no, epf->vfunc_no, epf_bar); in pci_epf_mhi_epc_deinit() 921 pci_epc_clear_bar(epc, epf->func_no, epf->vfunc_no, epf_bar); in pci_epf_mhi_unbind()
|
| /linux/drivers/pci/controller/cadence/ |
| H A D | pcie-cadence-ep.c | 275 static int cdns_pcie_ep_get_msix(struct pci_epc *epc, u8 func_no, u8 vfunc_no) in cdns_pcie_ep_get_msix() argument 283 func_no = cdns_pcie_get_fn_from_vfn(pcie, func_no, vfunc_no); in cdns_pcie_ep_get_msix() 286 val = cdns_pcie_ep_fn_readw(pcie, func_no, reg); in cdns_pcie_ep_get_msix() 629 cdns_pcie_ep_get_features(struct pci_epc *epc, u8 func_no, u8 vfunc_no) in cdns_pcie_ep_get_features() argument
|
| /linux/drivers/nvme/target/ |
| H A D | pci-epf.c | 261 return pci_epc_mem_map(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_mem_map() 270 pci_epc_mem_unmap(epf->epc, epf->func_no, epf->vfunc_no, map); in nvmet_pci_epf_mem_unmap() 643 ret = pci_epc_raise_irq(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_raise_irq() 649 ret = pci_epc_raise_irq(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_raise_irq() 2235 pci_epc_clear_bar(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_clear_bar() 2247 ret = pci_epc_set_msix(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_init_irq() 2262 ret = pci_epc_set_msi(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_init_irq() 2332 ret = pci_epc_write_header(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_epc_init() 2340 ret = pci_epc_set_bar(epf->epc, epf->func_no, epf->vfunc_no, in nvmet_pci_epf_epc_init() 2415 epc_features = pci_epc_get_features(epc, epf->func_no, epf->vfunc_no); in nvmet_pci_epf_bind()
|
| /linux/drivers/pci/controller/ |
| H A D | pcie-rcar-ep.c | 195 static int rcar_pcie_ep_set_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in rcar_pcie_ep_set_bar() argument 453 rcar_pcie_ep_get_features(struct pci_epc *epc, u8 func_no, u8 vfunc_no) in rcar_pcie_ep_get_features() argument
|