Lines Matching refs:epc

14 #include <linux/pci-epc.h>
19 struct pci_epc *epc = ep->epc;
21 pci_epc_linkup(epc);
27 struct pci_epc *epc = ep->epc;
29 pci_epc_init_notify(epc);
80 funcs = pci->ep.epc->max_functions;
128 static int dw_pcie_ep_write_header(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
131 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
211 static void dw_pcie_ep_clear_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
214 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
227 static int dw_pcie_ep_set_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
230 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
287 static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
292 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
303 static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
307 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
319 static int dw_pcie_ep_get_msi(struct pci_epc *epc, u8 func_no, u8 vfunc_no)
321 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
343 static int dw_pcie_ep_set_msi(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
346 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
369 static int dw_pcie_ep_get_msix(struct pci_epc *epc, u8 func_no, u8 vfunc_no)
371 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
393 static int dw_pcie_ep_set_msix(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
396 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
429 static int dw_pcie_ep_raise_irq(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
432 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
440 static void dw_pcie_ep_stop(struct pci_epc *epc)
442 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
448 static int dw_pcie_ep_start(struct pci_epc *epc)
450 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
457 dw_pcie_ep_get_features(struct pci_epc *epc, u8 func_no, u8 vfunc_no)
459 struct dw_pcie_ep *ep = epc_get_drvdata(epc);
499 struct pci_epc *epc = ep->epc;
530 aligned_offset = msg_addr_lower & (epc->mem->window.page_size - 1);
533 ret = dw_pcie_ep_map_addr(epc, func_no, 0, ep->msi_mem_phys, msg_addr,
534 epc->mem->window.page_size);
540 dw_pcie_ep_unmap_addr(epc, func_no, 0, ep->msi_mem_phys);
571 struct pci_epc *epc = ep->epc;
601 aligned_offset = msg_addr & (epc->mem->window.page_size - 1);
602 msg_addr = ALIGN_DOWN(msg_addr, epc->mem->window.page_size);
603 ret = dw_pcie_ep_map_addr(epc, func_no, 0, ep->msi_mem_phys, msg_addr,
604 epc->mem->window.page_size);
610 dw_pcie_ep_unmap_addr(epc, func_no, 0, ep->msi_mem_phys);
618 struct pci_epc *epc = ep->epc;
622 pci_epc_mem_free_addr(epc, ep->msi_mem_phys, ep->msi_mem,
623 epc->mem->window.page_size);
625 pci_epc_mem_exit(epc);
712 struct pci_epc *epc;
753 epc = devm_pci_epc_create(dev, &epc_ops);
754 if (IS_ERR(epc)) {
755 dev_err(dev, "Failed to create epc device\n");
756 return PTR_ERR(epc);
759 ep->epc = epc;
760 epc_set_drvdata(epc, ep);
762 ret = of_property_read_u8(np, "max-functions", &epc->max_functions);
764 epc->max_functions = 1;
766 for (func_no = 0; func_no < epc->max_functions; func_no++) {
783 ret = pci_epc_mem_init(epc, ep->phys_base, ep->addr_size,
790 ep->msi_mem = pci_epc_mem_alloc_addr(epc, &ep->msi_mem_phys,
791 epc->mem->window.page_size);
818 pci_epc_mem_free_addr(epc, ep->msi_mem_phys, ep->msi_mem,
819 epc->mem->window.page_size);
822 pci_epc_mem_exit(epc);