Lines Matching refs:func_no

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()
72 static u8 __dw_pcie_ep_find_next_cap(struct dw_pcie_ep *ep, u8 func_no, in __dw_pcie_ep_find_next_cap() argument
81 reg = dw_pcie_ep_readw_dbi(ep, func_no, cap_ptr); in __dw_pcie_ep_find_next_cap()
91 return __dw_pcie_ep_find_next_cap(ep, func_no, next_cap_ptr, cap); in __dw_pcie_ep_find_next_cap()
94 static u8 dw_pcie_ep_find_capability(struct dw_pcie_ep *ep, u8 func_no, u8 cap) in dw_pcie_ep_find_capability() argument
99 reg = dw_pcie_ep_readw_dbi(ep, func_no, PCI_CAPABILITY_LIST); in dw_pcie_ep_find_capability()
102 return __dw_pcie_ep_find_next_cap(ep, func_no, next_cap_ptr, cap); in dw_pcie_ep_find_capability()
144 static int dw_pcie_ep_write_header(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_write_header() argument
151 dw_pcie_ep_writew_dbi(ep, func_no, PCI_VENDOR_ID, hdr->vendorid); in dw_pcie_ep_write_header()
152 dw_pcie_ep_writew_dbi(ep, func_no, PCI_DEVICE_ID, hdr->deviceid); in dw_pcie_ep_write_header()
153 dw_pcie_ep_writeb_dbi(ep, func_no, PCI_REVISION_ID, hdr->revid); in dw_pcie_ep_write_header()
154 dw_pcie_ep_writeb_dbi(ep, func_no, PCI_CLASS_PROG, hdr->progif_code); in dw_pcie_ep_write_header()
155 dw_pcie_ep_writew_dbi(ep, func_no, PCI_CLASS_DEVICE, in dw_pcie_ep_write_header()
157 dw_pcie_ep_writeb_dbi(ep, func_no, PCI_CACHE_LINE_SIZE, in dw_pcie_ep_write_header()
159 dw_pcie_ep_writew_dbi(ep, func_no, PCI_SUBSYSTEM_VENDOR_ID, in dw_pcie_ep_write_header()
161 dw_pcie_ep_writew_dbi(ep, func_no, PCI_SUBSYSTEM_ID, hdr->subsys_id); in dw_pcie_ep_write_header()
162 dw_pcie_ep_writeb_dbi(ep, func_no, PCI_INTERRUPT_PIN, in dw_pcie_ep_write_header()
169 static int dw_pcie_ep_inbound_atu(struct dw_pcie_ep *ep, u8 func_no, int type, in dw_pcie_ep_inbound_atu() argument
187 ret = dw_pcie_prog_ep_inbound_atu(pci, func_no, free_win, type, in dw_pcie_ep_inbound_atu()
228 static void dw_pcie_ep_clear_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_clear_bar() argument
239 __dw_pcie_ep_reset_bar(pci, func_no, bar, epf_bar->flags); in dw_pcie_ep_clear_bar()
271 static int dw_pcie_ep_set_bar_resizable(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_set_bar_resizable() argument
300 dw_pcie_ep_writel_dbi2(ep, func_no, reg, BIT(0)); in dw_pcie_ep_set_bar_resizable()
301 dw_pcie_ep_writel_dbi(ep, func_no, reg, flags); in dw_pcie_ep_set_bar_resizable()
304 dw_pcie_ep_writel_dbi2(ep, func_no, reg + 4, 0); in dw_pcie_ep_set_bar_resizable()
305 dw_pcie_ep_writel_dbi(ep, func_no, reg + 4, 0); in dw_pcie_ep_set_bar_resizable()
329 static int dw_pcie_ep_set_bar_programmable(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_set_bar_programmable() argument
340 dw_pcie_ep_writel_dbi2(ep, func_no, reg, lower_32_bits(size - 1)); in dw_pcie_ep_set_bar_programmable()
341 dw_pcie_ep_writel_dbi(ep, func_no, reg, flags); in dw_pcie_ep_set_bar_programmable()
344 dw_pcie_ep_writel_dbi2(ep, func_no, reg + 4, upper_32_bits(size - 1)); in dw_pcie_ep_set_bar_programmable()
345 dw_pcie_ep_writel_dbi(ep, func_no, reg + 4, 0); in dw_pcie_ep_set_bar_programmable()
366 static int dw_pcie_ep_set_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_set_bar() argument
418 ret = dw_pcie_ep_set_bar_programmable(ep, func_no, epf_bar); in dw_pcie_ep_set_bar()
421 ret = dw_pcie_ep_set_bar_resizable(ep, func_no, epf_bar); in dw_pcie_ep_set_bar()
438 ret = dw_pcie_ep_inbound_atu(ep, func_no, type, epf_bar->phys_addr, bar, in dw_pcie_ep_set_bar()
478 static void dw_pcie_ep_unmap_addr(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_unmap_addr() argument
496 static int dw_pcie_ep_map_addr(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_map_addr() argument
504 atu.func_no = func_no; in dw_pcie_ep_map_addr()
518 static int dw_pcie_ep_get_msi(struct pci_epc *epc, u8 func_no, u8 vfunc_no) in dw_pcie_ep_get_msi() argument
524 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_get_msi()
529 val = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_get_msi()
538 static int dw_pcie_ep_set_msi(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_set_msi() argument
547 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_set_msi()
552 val = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_set_msi()
556 dw_pcie_ep_writew_dbi(ep, func_no, reg, val); in dw_pcie_ep_set_msi()
562 static int dw_pcie_ep_get_msix(struct pci_epc *epc, u8 func_no, u8 vfunc_no) in dw_pcie_ep_get_msix() argument
568 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_get_msix()
573 val = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_get_msix()
582 static int dw_pcie_ep_set_msix(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_set_msix() argument
590 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_set_msix()
597 val = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_set_msix()
604 dw_pcie_ep_writel_dbi(ep, func_no, reg, val); in dw_pcie_ep_set_msix()
608 dw_pcie_ep_writel_dbi(ep, func_no, reg, val); in dw_pcie_ep_set_msix()
615 static int dw_pcie_ep_raise_irq(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_raise_irq() argument
623 return ep->ops->raise_irq(ep, func_no, type, interrupt_num); in dw_pcie_ep_raise_irq()
643 dw_pcie_ep_get_features(struct pci_epc *epc, u8 func_no, u8 vfunc_no) in dw_pcie_ep_get_features() argument
677 int dw_pcie_ep_raise_intx_irq(struct dw_pcie_ep *ep, u8 func_no) in dw_pcie_ep_raise_intx_irq() argument
696 int dw_pcie_ep_raise_msi_irq(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_raise_msi_irq() argument
709 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_raise_msi_irq()
715 msg_ctrl = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_raise_msi_irq()
718 msg_addr_lower = dw_pcie_ep_readl_dbi(ep, func_no, reg); in dw_pcie_ep_raise_msi_irq()
721 msg_addr_upper = dw_pcie_ep_readl_dbi(ep, func_no, reg); in dw_pcie_ep_raise_msi_irq()
723 msg_data = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_raise_msi_irq()
727 msg_data = dw_pcie_ep_readw_dbi(ep, func_no, reg); in dw_pcie_ep_raise_msi_irq()
732 ret = dw_pcie_ep_map_addr(epc, func_no, 0, ep->msi_mem_phys, msg_addr, in dw_pcie_ep_raise_msi_irq()
739 dw_pcie_ep_unmap_addr(epc, func_no, 0, ep->msi_mem_phys); in dw_pcie_ep_raise_msi_irq()
754 int dw_pcie_ep_raise_msix_irq_doorbell(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_raise_msix_irq_doorbell() argument
761 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_raise_msix_irq_doorbell()
765 msg_data = (func_no << PCIE_MSIX_DOORBELL_PF_SHIFT) | in dw_pcie_ep_raise_msix_irq_doorbell()
781 int dw_pcie_ep_raise_msix_irq(struct dw_pcie_ep *ep, u8 func_no, in dw_pcie_ep_raise_msix_irq() argument
796 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_raise_msix_irq()
801 tbl_offset = dw_pcie_ep_readl_dbi(ep, func_no, reg); in dw_pcie_ep_raise_msix_irq()
816 ret = dw_pcie_ep_map_addr(epc, func_no, 0, ep->msi_mem_phys, msg_addr, in dw_pcie_ep_raise_msix_irq()
823 dw_pcie_ep_unmap_addr(epc, func_no, 0, ep->msi_mem_phys); in dw_pcie_ep_raise_msix_irq()
930 u8 func_no; in dw_pcie_ep_init_registers() local
974 for (func_no = 0; func_no < epc->max_functions; func_no++) { in dw_pcie_ep_init_registers()
976 ep_func = dw_pcie_ep_get_func_from_ep(ep, func_no); in dw_pcie_ep_init_registers()
984 ep_func->func_no = func_no; in dw_pcie_ep_init_registers()
985 ep_func->msi_cap = dw_pcie_ep_find_capability(ep, func_no, in dw_pcie_ep_init_registers()
987 ep_func->msix_cap = dw_pcie_ep_find_capability(ep, func_no, in dw_pcie_ep_init_registers()