Home
last modified time | relevance | path

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

/Linux-v4.19/drivers/pci/endpoint/
Dpci-epf-core.c32 void pci_epf_linkup(struct pci_epf *epf) in pci_epf_linkup() argument
34 if (!epf->driver) { in pci_epf_linkup()
35 dev_WARN(&epf->dev, "epf device not bound to driver\n"); in pci_epf_linkup()
39 epf->driver->ops->linkup(epf); in pci_epf_linkup()
51 void pci_epf_unbind(struct pci_epf *epf) in pci_epf_unbind() argument
53 if (!epf->driver) { in pci_epf_unbind()
54 dev_WARN(&epf->dev, "epf device not bound to driver\n"); in pci_epf_unbind()
58 epf->driver->ops->unbind(epf); in pci_epf_unbind()
59 module_put(epf->driver->owner); in pci_epf_unbind()
70 int pci_epf_bind(struct pci_epf *epf) in pci_epf_bind() argument
[all …]
Dpci-ep-cfs.c24 struct pci_epf *epf; member
96 struct pci_epf *epf = epf_group->epf; in pci_epc_epf_link() local
104 epf->func_no = func_no; in pci_epc_epf_link()
106 ret = pci_epc_add_epf(epc, epf); in pci_epc_epf_link()
110 ret = pci_epf_bind(epf); in pci_epc_epf_link()
117 pci_epc_remove_epf(epc, epf); in pci_epc_epf_link()
129 struct pci_epf *epf; in pci_epc_epf_unlink() local
136 epf = epf_group->epf; in pci_epc_epf_unlink()
137 clear_bit(epf->func_no, &epc_group->function_num_map); in pci_epc_epf_unlink()
138 pci_epf_unbind(epf); in pci_epc_epf_unlink()
[all …]
Dpci-epc-core.c435 int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf) in pci_epc_add_epf() argument
439 if (epf->epc) in pci_epc_add_epf()
445 if (epf->func_no > epc->max_functions - 1) in pci_epc_add_epf()
448 epf->epc = epc; in pci_epc_add_epf()
451 list_add_tail(&epf->list, &epc->pci_epf); in pci_epc_add_epf()
465 void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf) in pci_epc_remove_epf() argument
473 list_del(&epf->list); in pci_epc_remove_epf()
489 struct pci_epf *epf; in pci_epc_linkup() local
495 list_for_each_entry(epf, &epc->pci_epf, list) in pci_epc_linkup()
496 pci_epf_linkup(epf); in pci_epc_linkup()
DMakefile7 obj-$(CONFIG_PCI_ENDPOINT) += pci-epc-core.o pci-epf-core.o\
/Linux-v4.19/drivers/pci/endpoint/functions/
Dpci-epf-test.c48 struct pci_epf *epf; member
88 struct pci_epf *epf = epf_test->epf; in pci_epf_test_copy() local
89 struct device *dev = &epf->dev; in pci_epf_test_copy()
90 struct pci_epc *epc = epf->epc; in pci_epf_test_copy()
102 ret = pci_epc_map_addr(epc, epf->func_no, src_phys_addr, reg->src_addr, in pci_epf_test_copy()
118 ret = pci_epc_map_addr(epc, epf->func_no, dst_phys_addr, reg->dst_addr, in pci_epf_test_copy()
128 pci_epc_unmap_addr(epc, epf->func_no, dst_phys_addr); in pci_epf_test_copy()
134 pci_epc_unmap_addr(epc, epf->func_no, src_phys_addr); in pci_epf_test_copy()
150 struct pci_epf *epf = epf_test->epf; in pci_epf_test_read() local
151 struct device *dev = &epf->dev; in pci_epf_test_read()
[all …]
DMakefile6 obj-$(CONFIG_PCI_EPF_TEST) += pci-epf-test.o
/Linux-v4.19/include/linux/
Dpci-epf.h62 int (*bind)(struct pci_epf *epf);
63 void (*unbind)(struct pci_epf *epf);
64 void (*linkup)(struct pci_epf *epf);
79 int (*probe)(struct pci_epf *epf);
80 int (*remove)(struct pci_epf *epf);
135 static inline void epf_set_drvdata(struct pci_epf *epf, void *data) in epf_set_drvdata() argument
137 dev_set_drvdata(&epf->dev, data); in epf_set_drvdata()
140 static inline void *epf_get_drvdata(struct pci_epf *epf) in epf_get_drvdata() argument
142 return dev_get_drvdata(&epf->dev); in epf_get_drvdata()
146 pci_epf_match_device(const struct pci_epf_device_id *id, struct pci_epf *epf);
[all …]
Dpci-epc.h139 int pci_epc_add_epf(struct pci_epc *epc, struct pci_epf *epf);
141 void pci_epc_remove_epf(struct pci_epc *epc, struct pci_epf *epf);
/Linux-v4.19/Documentation/PCI/endpoint/
Dpci-test-howto.txt4 This document is a guide to help users use pci-epf-test function driver
25 # ls /sys/bus/pci-epf/drivers
32 1.3 Creating pci-epf-test Device
35 pci-epf-test device, the following commands can be used
41 The "mkdir func1" above creates the pci-epf-test function device that will
53 when the device is bound to the driver. The pci-epf-test driver populates
61 1.4 Configuring pci-epf-test Device
63 The user can configure the pci-epf-test device using configfs entry. In order
72 1.5 Binding pci-epf-test Device to EP Controller
/Linux-v4.19/drivers/pci/controller/
Dpcie-cadence-ep.c388 struct pci_epf *epf; in cdns_pcie_ep_start() local
396 list_for_each_entry(epf, &epc->pci_epf, list) in cdns_pcie_ep_start()
397 cfg |= BIT(epf->func_no); in cdns_pcie_ep_start()
409 list_for_each_entry(epf, &epc->pci_epf, list) in cdns_pcie_ep_start()
410 pci_epf_linkup(epf); in cdns_pcie_ep_start()
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()
502 list_for_each_entry(epf, &epc->pci_epf, list) in rockchip_pcie_ep_start()
503 pci_epf_linkup(epf); in rockchip_pcie_ep_start()