Home
last modified time | relevance | path

Searched refs:epf (Results 1 – 19 of 19) sorted by relevance

/linux-6.1.9/drivers/pci/endpoint/
Dpci-epf-core.c34 struct config_group *pci_epf_type_add_cfs(struct pci_epf *epf, in pci_epf_type_add_cfs() argument
39 if (!epf->driver) { in pci_epf_type_add_cfs()
40 dev_err(&epf->dev, "epf device not bound to driver\n"); in pci_epf_type_add_cfs()
44 if (!epf->driver->ops->add_cfs) in pci_epf_type_add_cfs()
47 mutex_lock(&epf->lock); in pci_epf_type_add_cfs()
48 epf_type_group = epf->driver->ops->add_cfs(epf, group); in pci_epf_type_add_cfs()
49 mutex_unlock(&epf->lock); in pci_epf_type_add_cfs()
63 void pci_epf_unbind(struct pci_epf *epf) in pci_epf_unbind() argument
67 if (!epf->driver) { in pci_epf_unbind()
68 dev_WARN(&epf->dev, "epf device not bound to driver\n"); in pci_epf_unbind()
[all …]
Dpci-ep-cfs.c27 struct pci_epf *epf; member
54 struct pci_epf *epf = epf_group->epf; in pci_secondary_epc_epf_link() local
56 ret = pci_epc_add_epf(epc, epf, SECONDARY_INTERFACE); in pci_secondary_epc_epf_link()
60 ret = pci_epf_bind(epf); in pci_secondary_epc_epf_link()
62 pci_epc_remove_epf(epc, epf, SECONDARY_INTERFACE); in pci_secondary_epc_epf_link()
75 struct pci_epf *epf; in pci_secondary_epc_epf_unlink() local
80 epf = epf_group->epf; in pci_secondary_epc_epf_unlink()
81 pci_epf_unbind(epf); in pci_secondary_epc_epf_unlink()
82 pci_epc_remove_epf(epc, epf, SECONDARY_INTERFACE); in pci_secondary_epc_epf_unlink()
115 struct pci_epf *epf = epf_group->epf; in pci_primary_epc_epf_link() local
[all …]
Dpci-epc-core.c600 int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf, in pci_epc_add_epf() argument
607 if (IS_ERR_OR_NULL(epc) || epf->is_vf) in pci_epc_add_epf()
610 if (type == PRIMARY_INTERFACE && epf->epc) in pci_epc_add_epf()
613 if (type == SECONDARY_INTERFACE && epf->sec_epc) in pci_epc_add_epf()
632 epf->func_no = func_no; in pci_epc_add_epf()
633 epf->epc = epc; in pci_epc_add_epf()
634 list = &epf->list; in pci_epc_add_epf()
636 epf->sec_epc_func_no = func_no; in pci_epc_add_epf()
637 epf->sec_epc = epc; in pci_epc_add_epf()
638 list = &epf->sec_epc_list; in pci_epc_add_epf()
[all …]
DMakefile7 obj-$(CONFIG_PCI_ENDPOINT) += pci-epc-core.o pci-epf-core.o\
/linux-6.1.9/drivers/pci/endpoint/functions/
Dpci-epf-test.c51 struct pci_epf *epf; member
119 struct pci_epf *epf = epf_test->epf; in pci_epf_test_data_transfer() local
122 struct device *dev = &epf->dev; in pci_epf_test_data_transfer()
201 struct pci_epf *epf = epf_test->epf; in pci_epf_test_init_dma_chan() local
202 struct device *dev = &epf->dev; in pci_epf_test_init_dma_chan()
208 filter.dev = epf->epc->dev.parent; in pci_epf_test_init_dma_chan()
321 struct pci_epf *epf = epf_test->epf; in pci_epf_test_copy() local
322 struct device *dev = &epf->dev; in pci_epf_test_copy()
323 struct pci_epc *epc = epf->epc; in pci_epf_test_copy()
335 ret = pci_epc_map_addr(epc, epf->func_no, epf->vfunc_no, src_phys_addr, in pci_epf_test_copy()
[all …]
Dpci-epf-vntb.c120 struct pci_epf *epf; member
210 func_no = ntb->epf->func_no; in epf_ntb_configure_mw()
211 vfunc_no = ntb->epf->vfunc_no; in epf_ntb_configure_mw()
213 ret = pci_epc_map_addr(ntb->epf->epc, func_no, vfunc_no, phys_addr, addr, size); in epf_ntb_configure_mw()
215 dev_err(&ntb->epf->epc->dev, in epf_ntb_configure_mw()
230 pci_epc_unmap_addr(ntb->epf->epc, in epf_ntb_teardown_mw()
231 ntb->epf->func_no, in epf_ntb_teardown_mw()
232 ntb->epf->vfunc_no, in epf_ntb_teardown_mw()
276 dev = &ntb->epf->dev; in epf_ntb_cmd_handler()
343 epf_bar = &ntb->epf->bar[barno]; in epf_ntb_config_sspad_bar_clear()
[all …]
Dpci-epf-ntb.c80 struct pci_epf *epf; member
645 dev = &ntb->epf->dev; in epf_ntb_cmd_handler()
791 dev = &ntb->epf->dev; in epf_ntb_peer_spad_bar_set()
906 dev = &ntb->epf->dev; in epf_ntb_config_sspad_bar_set()
953 struct pci_epf *epf; in epf_ntb_config_spad_bar_free() local
955 epf = ntb->epf; in epf_ntb_config_spad_bar_free()
960 pci_epf_free_space(epf, ntb_epc->reg, barno, type); in epf_ntb_config_spad_bar_free()
1003 struct pci_epf *epf; in epf_ntb_config_spad_bar_alloc() local
1009 epf = ntb->epf; in epf_ntb_config_spad_bar_alloc()
1010 dev = &epf->dev; in epf_ntb_config_spad_bar_alloc()
[all …]
DMakefile6 obj-$(CONFIG_PCI_EPF_TEST) += pci-epf-test.o
7 obj-$(CONFIG_PCI_EPF_NTB) += pci-epf-ntb.o
8 obj-$(CONFIG_PCI_EPF_VNTB) += pci-epf-vntb.o
/linux-6.1.9/include/linux/
Dpci-epf.h69 int (*bind)(struct pci_epf *epf);
70 void (*unbind)(struct pci_epf *epf);
71 struct config_group *(*add_cfs)(struct pci_epf *epf,
87 int (*probe)(struct pci_epf *epf);
88 void (*remove)(struct pci_epf *epf);
191 static inline void epf_set_drvdata(struct pci_epf *epf, void *data) in epf_set_drvdata() argument
193 dev_set_drvdata(&epf->dev, data); in epf_set_drvdata()
196 static inline void *epf_get_drvdata(struct pci_epf *epf) in epf_get_drvdata() argument
198 return dev_get_drvdata(&epf->dev); in epf_get_drvdata()
202 void pci_epf_destroy(struct pci_epf *epf);
[all …]
Dpci-epc.h209 int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf,
213 void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf,
/linux-6.1.9/drivers/pci/controller/cadence/
Dpcie-cadence-ep.c80 struct cdns_pcie_epf *epf = &ep->epf[fn]; in cdns_pcie_ep_set_bar() local
144 epf = &epf->epf[vfn - 1]; in cdns_pcie_ep_set_bar()
145 epf->epf_bar[bar] = epf_bar; in cdns_pcie_ep_set_bar()
154 struct cdns_pcie_epf *epf = &ep->epf[fn]; in cdns_pcie_ep_clear_bar() local
179 epf = &epf->epf[vfn - 1]; in cdns_pcie_ep_clear_bar()
180 epf->epf_bar[bar] = NULL; in cdns_pcie_ep_clear_bar()
490 struct cdns_pcie_epf *epf; in cdns_pcie_ep_send_msix_irq() local
496 epf = &ep->epf[fn]; in cdns_pcie_ep_send_msix_irq()
498 epf = &epf->epf[vfn - 1]; in cdns_pcie_ep_send_msix_irq()
512 msix_tbl = epf->epf_bar[bir]->addr + tbl_offset; in cdns_pcie_ep_send_msix_irq()
[all …]
Dpcie-cadence.h340 struct cdns_pcie_epf *epf; member
379 struct cdns_pcie_epf *epf; member
/linux-6.1.9/Documentation/PCI/endpoint/
Dpci-ntb-howto.rst9 This document is a guide to help users use pci-epf-ntb function driver
40 # ls /sys/bus/pci-epf/drivers
49 Creating pci-epf-ntb Device
53 pci-epf-ntb device, the following commands can be used::
59 The "mkdir func1" above creates the pci-epf-ntb function device that will
66 baseclass_code deviceid msi_interrupts pci-epf-ntb.0
72 when the device is bound to the driver. The pci-epf-ntb driver populates
81 Configuring pci-epf-ntb Device
84 The user can configure the pci-epf-ntb device using its configfs entry. In order
111 Binding pci-epf-ntb Device to EP Controller
[all …]
Dpci-vntb-howto.rst9 This document is a guide to help users use pci-epf-vntb function driver
36 # ls /sys/bus/pci-epf/drivers
45 Creating pci-epf-vntb Device
49 pci-epf-vntb device, the following commands can be used::
55 The "mkdir func1" above creates the pci-epf-ntb function device that will
62 baseclass_code deviceid msi_interrupts pci-epf-ntb.0
68 when the device is bound to the driver. The pci-epf-vntb driver populates
77 Configuring pci-epf-vntb Device
80 The user can configure the pci-epf-vntb device using its configfs entry. In order
112 Binding pci-epf-ntb Device to EP Controller
[all …]
Dpci-test-howto.rst9 This document is a guide to help users use pci-epf-test function driver
35 # ls /sys/bus/pci-epf/drivers
44 Creating pci-epf-test Device
48 pci-epf-test device, the following commands can be used::
54 The "mkdir func1" above creates the pci-epf-test function device that will
66 when the device is bound to the driver. The pci-epf-test driver populates
75 Configuring pci-epf-test Device
78 The user can configure the pci-epf-test device using configfs entry. In order
88 Binding pci-epf-test Device to EP Controller
/linux-6.1.9/drivers/ntb/hw/
DMakefile5 obj-$(CONFIG_NTB_EPF) += epf/
DKconfig5 source "drivers/ntb/hw/epf/Kconfig"
/linux-6.1.9/drivers/pci/controller/
Dpcie-rockchip-ep.c493 struct pci_epf *epf; in rockchip_pcie_ep_start() local
497 list_for_each_entry(epf, &epc->pci_epf, list) in rockchip_pcie_ep_start()
498 cfg |= BIT(epf->func_no); in rockchip_pcie_ep_start()
/linux-6.1.9/
DMAINTAINERS14642 F: drivers/pci/endpoint/functions/pci-epf-*ntb.c