Home
last modified time | relevance | path

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

/Linux-v5.10/drivers/pci/endpoint/
Dpci-epf-core.c31 void pci_epf_unbind(struct pci_epf *epf) in pci_epf_unbind() argument
33 if (!epf->driver) { in pci_epf_unbind()
34 dev_WARN(&epf->dev, "epf device not bound to driver\n"); in pci_epf_unbind()
38 mutex_lock(&epf->lock); in pci_epf_unbind()
39 epf->driver->ops->unbind(epf); in pci_epf_unbind()
40 mutex_unlock(&epf->lock); in pci_epf_unbind()
41 module_put(epf->driver->owner); in pci_epf_unbind()
52 int pci_epf_bind(struct pci_epf *epf) in pci_epf_bind() argument
56 if (!epf->driver) { in pci_epf_bind()
57 dev_WARN(&epf->dev, "epf device not bound to driver\n"); in pci_epf_bind()
[all …]
Dpci-ep-cfs.c24 struct pci_epf *epf; member
95 struct pci_epf *epf = epf_group->epf; in pci_epc_epf_link() local
97 ret = pci_epc_add_epf(epc, epf); in pci_epc_epf_link()
101 ret = pci_epf_bind(epf); in pci_epc_epf_link()
103 pci_epc_remove_epf(epc, epf); in pci_epc_epf_link()
114 struct pci_epf *epf; in pci_epc_epf_unlink() local
121 epf = epf_group->epf; in pci_epc_epf_unlink()
122 pci_epf_unbind(epf); in pci_epc_epf_unlink()
123 pci_epc_remove_epf(epc, epf); in pci_epc_epf_unlink()
197 struct pci_epf *epf = to_pci_epf_group(item)->epf; \
[all …]
Dpci-epc-core.c475 int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf) in pci_epc_add_epf() argument
480 if (epf->epc) in pci_epc_add_epf()
501 epf->func_no = func_no; in pci_epc_add_epf()
502 epf->epc = epc; in pci_epc_add_epf()
504 list_add_tail(&epf->list, &epc->pci_epf); in pci_epc_add_epf()
520 void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf) in pci_epc_remove_epf() argument
522 if (!epc || IS_ERR(epc) || !epf) in pci_epc_remove_epf()
526 clear_bit(epf->func_no, &epc->function_num_map); in pci_epc_remove_epf()
527 list_del(&epf->list); in pci_epc_remove_epf()
528 epf->epc = NULL; in pci_epc_remove_epf()
DMakefile7 obj-$(CONFIG_PCI_ENDPOINT) += pci-epc-core.o pci-epf-core.o\
/Linux-v5.10/drivers/pci/endpoint/functions/
Dpci-epf-test.c51 struct pci_epf *epf; member
112 struct pci_epf *epf = epf_test->epf; in pci_epf_test_data_transfer() local
114 struct device *dev = &epf->dev; in pci_epf_test_data_transfer()
159 struct pci_epf *epf = epf_test->epf; in pci_epf_test_init_dma_chan() local
160 struct device *dev = &epf->dev; in pci_epf_test_init_dma_chan()
236 struct pci_epf *epf = epf_test->epf; in pci_epf_test_copy() local
237 struct device *dev = &epf->dev; in pci_epf_test_copy()
238 struct pci_epc *epc = epf->epc; in pci_epf_test_copy()
250 ret = pci_epc_map_addr(epc, epf->func_no, src_phys_addr, reg->src_addr, in pci_epf_test_copy()
266 ret = pci_epc_map_addr(epc, epf->func_no, dst_phys_addr, reg->dst_addr, in pci_epf_test_copy()
[all …]
DMakefile6 obj-$(CONFIG_PCI_EPF_TEST) += pci-epf-test.o
/Linux-v5.10/include/linux/
Dpci-epf.h65 int (*bind)(struct pci_epf *epf);
66 void (*unbind)(struct pci_epf *epf);
81 int (*probe)(struct pci_epf *epf);
82 int (*remove)(struct pci_epf *epf);
157 static inline void epf_set_drvdata(struct pci_epf *epf, void *data) in epf_set_drvdata() argument
159 dev_set_drvdata(&epf->dev, data); in epf_set_drvdata()
162 static inline void *epf_get_drvdata(struct pci_epf *epf) in epf_get_drvdata() argument
164 return dev_get_drvdata(&epf->dev); in epf_get_drvdata()
168 pci_epf_match_device(const struct pci_epf_device_id *id, struct pci_epf *epf);
170 void pci_epf_destroy(struct pci_epf *epf);
[all …]
Dpci-epc.h178 int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf);
181 void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf);
/Linux-v5.10/drivers/pci/controller/cadence/
Dpcie-cadence-ep.c54 struct cdns_pcie_epf *epf = &ep->epf[fn]; in cdns_pcie_ep_set_bar() local
115 epf->epf_bar[bar] = epf_bar; in cdns_pcie_ep_set_bar()
124 struct cdns_pcie_epf *epf = &ep->epf[fn]; in cdns_pcie_ep_clear_bar() local
147 epf->epf_bar[bar] = NULL; in cdns_pcie_ep_clear_bar()
392 struct cdns_pcie_epf *epf; in cdns_pcie_ep_send_msix_irq() local
408 epf = &ep->epf[fn]; in cdns_pcie_ep_send_msix_irq()
409 msix_tbl = epf->epf_bar[bir]->addr + tbl_offset; in cdns_pcie_ep_send_msix_irq()
458 struct pci_epf *epf; in cdns_pcie_ep_start() local
467 list_for_each_entry(epf, &epc->pci_epf, list) in cdns_pcie_ep_start()
468 cfg |= BIT(epf->func_no); in cdns_pcie_ep_start()
[all …]
Dpcie-cadence.h344 struct cdns_pcie_epf *epf; member
/Linux-v5.10/Documentation/PCI/endpoint/
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-v5.10/drivers/pci/controller/
Dpcie-rockchip-ep.c494 struct pci_epf *epf; in rockchip_pcie_ep_start() local
498 list_for_each_entry(epf, &epc->pci_epf, list) in rockchip_pcie_ep_start()
499 cfg |= BIT(epf->func_no); in rockchip_pcie_ep_start()