Home
last modified time | relevance | path

Searched refs:epc (Results 1 – 25 of 66) sorted by relevance

123

/Linux-v6.6/drivers/pci/endpoint/
Dpci-epc-core.c21 struct pci_epc *epc = *(struct pci_epc **)res; in devm_pci_epc_release() local
23 pci_epc_destroy(epc); in devm_pci_epc_release()
28 struct pci_epc **epc = res; in devm_pci_epc_match() local
30 return *epc == match_data; in devm_pci_epc_match()
39 void pci_epc_put(struct pci_epc *epc) in pci_epc_put() argument
41 if (!epc || IS_ERR(epc)) in pci_epc_put()
44 module_put(epc->ops->owner); in pci_epc_put()
45 put_device(&epc->dev); in pci_epc_put()
59 struct pci_epc *epc; in pci_epc_get() local
68 epc = to_pci_epc(dev); in pci_epc_get()
[all …]
Dpci-epc-mem.c47 int pci_epc_multi_mem_init(struct pci_epc *epc, in pci_epc_multi_mem_init() argument
60 epc->num_windows = 0; in pci_epc_multi_mem_init()
65 epc->windows = kcalloc(num_windows, sizeof(*epc->windows), GFP_KERNEL); in pci_epc_multi_mem_init()
66 if (!epc->windows) in pci_epc_multi_mem_init()
98 epc->windows[i] = mem; in pci_epc_multi_mem_init()
101 epc->mem = epc->windows[0]; in pci_epc_multi_mem_init()
102 epc->num_windows = num_windows; in pci_epc_multi_mem_init()
108 mem = epc->windows[i]; in pci_epc_multi_mem_init()
112 kfree(epc->windows); in pci_epc_multi_mem_init()
128 int pci_epc_mem_init(struct pci_epc *epc, phys_addr_t base, in pci_epc_mem_init() argument
[all …]
Dpci-ep-cfs.c34 struct pci_epc *epc; member
54 struct pci_epc *epc = epc_group->epc; in pci_secondary_epc_epf_link() local
57 ret = pci_epc_add_epf(epc, epf, SECONDARY_INTERFACE); in pci_secondary_epc_epf_link()
63 pci_epc_remove_epf(epc, epf, SECONDARY_INTERFACE); in pci_secondary_epc_epf_link()
75 struct pci_epc *epc; in pci_secondary_epc_epf_unlink() local
80 epc = epc_group->epc; in pci_secondary_epc_epf_unlink()
83 pci_epc_remove_epf(epc, epf, SECONDARY_INTERFACE); in pci_secondary_epc_epf_unlink()
115 struct pci_epc *epc = epc_group->epc; in pci_primary_epc_epf_link() local
118 ret = pci_epc_add_epf(epc, epf, PRIMARY_INTERFACE); in pci_primary_epc_epf_link()
124 pci_epc_remove_epf(epc, epf, PRIMARY_INTERFACE); in pci_primary_epc_epf_link()
[all …]
Dpci-epf-core.c64 struct pci_epc *epc; in pci_epf_bind() local
85 epc = epf->epc; in pci_epf_bind()
87 if (!IS_ERR_OR_NULL(epc)) { in pci_epf_bind()
88 if (!epc->max_vfs) { in pci_epf_bind()
94 if (vfunc_no > epc->max_vfs[func_no]) { in pci_epf_bind()
102 epc = epf->sec_epc; in pci_epf_bind()
104 if (!IS_ERR_OR_NULL(epc)) { in pci_epf_bind()
105 if (!epc->max_vfs) { in pci_epf_bind()
111 if (vfunc_no > epc->max_vfs[func_no]) { in pci_epf_bind()
121 epf_vf->epc = epf->epc; in pci_epf_bind()
[all …]
DMakefile7 obj-$(CONFIG_PCI_ENDPOINT) += pci-epc-core.o pci-epf-core.o\
8 pci-epc-mem.o functions/
/Linux-v6.6/arch/mips/kernel/
Dbranch.c32 long epc = regs->cp0_epc; in __isa_exception_epc() local
35 if (__get_user(inst, (u16 __user *) msk_isa16_mode(epc))) { in __isa_exception_epc()
38 return epc; in __isa_exception_epc()
45 epc += 4; in __isa_exception_epc()
47 epc += 2; in __isa_exception_epc()
49 epc += 2; in __isa_exception_epc()
51 epc += 4; in __isa_exception_epc()
53 return epc; in __isa_exception_epc()
326 long epc; in __MIPS16e_compute_return_epc() local
328 epc = regs->cp0_epc; in __MIPS16e_compute_return_epc()
[all …]
Dmips-r2-to-r6-emul.c250 unsigned long cepc, epc, nepc; in jr_func() local
260 epc = regs->cp0_epc; in jr_func()
287 err = mips_dsemul(regs, nir, epc, cepc); in jr_func()
911 unsigned long cpc, epc, nepc, r31, res, rs, rt; in mipsr2_decoder() local
918 epc = regs->cp0_epc; in mipsr2_decoder()
925 inst, epc, pass); in mipsr2_decoder()
994 regs->cp0_epc = epc; in mipsr2_decoder()
1001 nepc = epc + 4; in mipsr2_decoder()
1037 err = mips_dsemul(regs, nir, epc, cpc); in mipsr2_decoder()
1051 regs->cp0_epc = epc; in mipsr2_decoder()
[all …]
/Linux-v6.6/include/linux/
Dpci-epc.h65 int (*write_header)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
67 int (*set_bar)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
69 void (*clear_bar)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
71 int (*map_addr)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
73 void (*unmap_addr)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
75 int (*set_msi)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
77 int (*get_msi)(struct pci_epc *epc, u8 func_no, u8 vfunc_no);
78 int (*set_msix)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
80 int (*get_msix)(struct pci_epc *epc, u8 func_no, u8 vfunc_no);
81 int (*raise_irq)(struct pci_epc *epc, u8 func_no, u8 vfunc_no,
[all …]
/Linux-v6.6/drivers/pci/endpoint/functions/
Dpci-epf-ntb.c83 struct epf_ntb_epc *epc[2]; member
95 struct pci_epc *epc; member
146 struct pci_epc *epc; in epf_ntb_link_up() local
152 ntb_epc = ntb->epc[type]; in epf_ntb_link_up()
153 epc = ntb_epc->epc; in epf_ntb_link_up()
163 ret = pci_epc_raise_irq(epc, func_no, vfunc_no, irq_type, 1); in epf_ntb_link_up()
165 dev_err(&epc->dev, in epf_ntb_link_up()
244 struct pci_epc *epc; in epf_ntb_configure_mw() local
248 ntb_epc = ntb->epc[type]; in epf_ntb_configure_mw()
249 epc = ntb_epc->epc; in epf_ntb_configure_mw()
[all …]
Dpci-epf-test.c224 filter.dev = epf->epc->dev.parent; in pci_epf_test_init_dma_chan()
328 struct pci_epc *epc = epf->epc; in pci_epf_test_copy() local
330 src_addr = pci_epc_mem_alloc_addr(epc, &src_phys_addr, reg->size); in pci_epf_test_copy()
338 ret = pci_epc_map_addr(epc, epf->func_no, epf->vfunc_no, src_phys_addr, in pci_epf_test_copy()
346 dst_addr = pci_epc_mem_alloc_addr(epc, &dst_phys_addr, reg->size); in pci_epf_test_copy()
354 ret = pci_epc_map_addr(epc, epf->func_no, epf->vfunc_no, dst_phys_addr, in pci_epf_test_copy()
393 pci_epc_unmap_addr(epc, epf->func_no, epf->vfunc_no, dst_phys_addr); in pci_epf_test_copy()
396 pci_epc_mem_free_addr(epc, dst_phys_addr, dst_addr, reg->size); in pci_epf_test_copy()
399 pci_epc_unmap_addr(epc, epf->func_no, epf->vfunc_no, src_phys_addr); in pci_epf_test_copy()
402 pci_epc_mem_free_addr(epc, src_phys_addr, src_addr, reg->size); in pci_epf_test_copy()
[all …]
Dpci-epf-mhi.c142 struct pci_epc *epc = epf->epc; in __pci_epf_mhi_alloc_map() local
145 *vaddr = pci_epc_mem_alloc_addr(epc, paddr, size + offset); in __pci_epf_mhi_alloc_map()
149 ret = pci_epc_map_addr(epc, epf->func_no, epf->vfunc_no, *paddr, in __pci_epf_mhi_alloc_map()
152 pci_epc_mem_free_addr(epc, *paddr, *vaddr, size + offset); in __pci_epf_mhi_alloc_map()
180 struct pci_epc *epc = epf->epc; in __pci_epf_mhi_unmap_free() local
182 pci_epc_unmap_addr(epc, epf->func_no, epf->vfunc_no, paddr - offset); in __pci_epf_mhi_unmap_free()
183 pci_epc_mem_free_addr(epc, paddr - offset, vaddr - offset, in __pci_epf_mhi_unmap_free()
202 struct pci_epc *epc = epf->epc; in pci_epf_mhi_raise_irq() local
208 pci_epc_raise_irq(epc, epf->func_no, epf->vfunc_no, PCI_EPC_IRQ_MSI, in pci_epf_mhi_raise_irq()
277 struct device *dma_dev = epf_mhi->epf->epc->dev.parent; in pci_epf_mhi_edma_read()
[all …]
Dpci-epf-vntb.c216 ret = pci_epc_map_addr(ntb->epf->epc, func_no, vfunc_no, phys_addr, addr, size); in epf_ntb_configure_mw()
218 dev_err(&ntb->epf->epc->dev, in epf_ntb_configure_mw()
233 pci_epc_unmap_addr(ntb->epf->epc, in epf_ntb_teardown_mw()
348 pci_epc_clear_bar(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no, epf_bar); in epf_ntb_config_sspad_bar_clear()
377 ret = pci_epc_set_bar(ntb->epf->epc, func_no, vfunc_no, epf_bar); in epf_ntb_config_sspad_bar_set()
421 const struct pci_epc_features *epc_features = pci_epc_get_features(epf->epc, in epf_ntb_config_spad_bar_alloc()
492 epc_features = pci_epc_get_features(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no); in epf_ntb_configure_interrupt()
508 ret = pci_epc_set_msi(ntb->epf->epc, in epf_ntb_configure_interrupt()
538 epc_features = pci_epc_get_features(ntb->epf->epc, in epf_ntb_db_bar_init()
563 ret = pci_epc_set_bar(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no, epf_bar); in epf_ntb_db_bar_init()
[all …]
/Linux-v6.6/drivers/pci/controller/dwc/
Dpcie-designware-ep.c18 struct pci_epc *epc = ep->epc; in dw_pcie_ep_linkup() local
20 pci_epc_linkup(epc); in dw_pcie_ep_linkup()
26 struct pci_epc *epc = ep->epc; in dw_pcie_ep_init_notify() local
28 pci_epc_init_notify(epc); in dw_pcie_ep_init_notify()
79 funcs = pci->ep.epc->max_functions; in dw_pcie_ep_reset_bar()
127 static int dw_pcie_ep_write_header(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_write_header() argument
130 struct dw_pcie_ep *ep = epc_get_drvdata(epc); in dw_pcie_ep_write_header()
210 static void dw_pcie_ep_clear_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_clear_bar() argument
213 struct dw_pcie_ep *ep = epc_get_drvdata(epc); in dw_pcie_ep_clear_bar()
226 static int dw_pcie_ep_set_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in dw_pcie_ep_set_bar() argument
[all …]
/Linux-v6.6/drivers/pci/controller/cadence/
Dpcie-cadence-ep.c34 static int cdns_pcie_ep_write_header(struct pci_epc *epc, u8 fn, u8 vfn, in cdns_pcie_ep_write_header() argument
37 struct cdns_pcie_ep *ep = epc_get_drvdata(epc); in cdns_pcie_ep_write_header()
43 dev_err(&epc->dev, "Only Virtual Function #1 has deviceID\n"); in cdns_pcie_ep_write_header()
76 static int cdns_pcie_ep_set_bar(struct pci_epc *epc, u8 fn, u8 vfn, in cdns_pcie_ep_set_bar() argument
79 struct cdns_pcie_ep *ep = epc_get_drvdata(epc); in cdns_pcie_ep_set_bar()
150 static void cdns_pcie_ep_clear_bar(struct pci_epc *epc, u8 fn, u8 vfn, in cdns_pcie_ep_clear_bar() argument
153 struct cdns_pcie_ep *ep = epc_get_drvdata(epc); in cdns_pcie_ep_clear_bar()
183 static int cdns_pcie_ep_map_addr(struct pci_epc *epc, u8 fn, u8 vfn, in cdns_pcie_ep_map_addr() argument
186 struct cdns_pcie_ep *ep = epc_get_drvdata(epc); in cdns_pcie_ep_map_addr()
192 dev_err(&epc->dev, "no free outbound region\n"); in cdns_pcie_ep_map_addr()
[all …]
/Linux-v6.6/drivers/pci/controller/
Dpcie-rockchip-ep.c42 struct pci_epc *epc; member
92 static int rockchip_pcie_ep_write_header(struct pci_epc *epc, u8 fn, u8 vfn, in rockchip_pcie_ep_write_header() argument
96 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc); in rockchip_pcie_ep_write_header()
131 static int rockchip_pcie_ep_set_bar(struct pci_epc *epc, u8 fn, u8 vfn, in rockchip_pcie_ep_set_bar() argument
134 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc); in rockchip_pcie_ep_set_bar()
199 static void rockchip_pcie_ep_clear_bar(struct pci_epc *epc, u8 fn, u8 vfn, in rockchip_pcie_ep_clear_bar() argument
202 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc); in rockchip_pcie_ep_clear_bar()
233 static int rockchip_pcie_ep_map_addr(struct pci_epc *epc, u8 fn, u8 vfn, in rockchip_pcie_ep_map_addr() argument
237 struct rockchip_pcie_ep *ep = epc_get_drvdata(epc); in rockchip_pcie_ep_map_addr()
249 static void rockchip_pcie_ep_unmap_addr(struct pci_epc *epc, u8 fn, u8 vfn, in rockchip_pcie_ep_unmap_addr() argument
[all …]
Dpcie-rcar-ep.c159 static int rcar_pcie_ep_write_header(struct pci_epc *epc, u8 fn, u8 vfn, in rcar_pcie_ep_write_header() argument
162 struct rcar_pcie_endpoint *ep = epc_get_drvdata(epc); in rcar_pcie_ep_write_header()
195 static int rcar_pcie_ep_set_bar(struct pci_epc *epc, u8 func_no, u8 vfunc_no, in rcar_pcie_ep_set_bar() argument
199 struct rcar_pcie_endpoint *ep = epc_get_drvdata(epc); in rcar_pcie_ep_set_bar()
246 static void rcar_pcie_ep_clear_bar(struct pci_epc *epc, u8 fn, u8 vfn, in rcar_pcie_ep_clear_bar() argument
249 struct rcar_pcie_endpoint *ep = epc_get_drvdata(epc); in rcar_pcie_ep_clear_bar()
259 static int rcar_pcie_ep_set_msi(struct pci_epc *epc, u8 fn, u8 vfn, in rcar_pcie_ep_set_msi() argument
262 struct rcar_pcie_endpoint *ep = epc_get_drvdata(epc); in rcar_pcie_ep_set_msi()
273 static int rcar_pcie_ep_get_msi(struct pci_epc *epc, u8 fn, u8 vfn) in rcar_pcie_ep_get_msi() argument
275 struct rcar_pcie_endpoint *ep = epc_get_drvdata(epc); in rcar_pcie_ep_get_msi()
[all …]
/Linux-v6.6/arch/mips/kvm/
Demulate.c46 long epc = instpc; in kvm_compute_return_epc() local
50 if (epc & 3) { in kvm_compute_return_epc()
56 err = kvm_get_badinstrp((u32 *)epc, vcpu, &insn.word); in kvm_compute_return_epc()
65 arch->gprs[insn.r_format.rd] = epc + 8; in kvm_compute_return_epc()
85 epc = epc + 4 + (insn.i_format.simmediate << 2); in kvm_compute_return_epc()
87 epc += 8; in kvm_compute_return_epc()
88 nextpc = epc; in kvm_compute_return_epc()
94 epc = epc + 4 + (insn.i_format.simmediate << 2); in kvm_compute_return_epc()
96 epc += 8; in kvm_compute_return_epc()
97 nextpc = epc; in kvm_compute_return_epc()
[all …]
/Linux-v6.6/arch/riscv/kernel/
Dcfi.c38 if (get_kernel_nofault(insn, (void *)regs->epc - 4)) in decode_cfi_insn()
45 if (get_kernel_nofault(insn, (void *)regs->epc) || in decode_cfi_insn()
46 get_kernel_nofault(insn, (void *)regs->epc + GET_INSN_LENGTH(insn))) in decode_cfi_insn()
70 if (!is_cfi_trap(regs->epc)) in handle_cfi_failure()
74 return report_cfi_failure_noaddr(regs, regs->epc); in handle_cfi_failure()
76 return report_cfi_failure(regs, regs->epc, &target, type); in handle_cfi_failure()
Dtraps_misaligned.c241 unsigned long epc = regs->epc; in handle_misaligned_load() local
242 unsigned long insn = get_insn(epc); in handle_misaligned_load()
246 regs->epc = 0; in handle_misaligned_load()
304 regs->epc = epc; in handle_misaligned_load()
316 regs->epc = epc + INSN_LEN(insn); in handle_misaligned_load()
324 unsigned long epc = regs->epc; in handle_misaligned_store() local
325 unsigned long insn = get_insn(epc); in handle_misaligned_store()
329 regs->epc = 0; in handle_misaligned_store()
358 regs->epc = epc; in handle_misaligned_store()
365 regs->epc = epc + INSN_LEN(insn); in handle_misaligned_store()
Dtraps.c138 do_trap_error(regs, signo, code, regs->epc, "Oops - " str); \
142 do_trap_error(regs, signo, code, regs->epc, "Oops - " str); \
168 do_trap_error(regs, SIGILL, ILL_ILLOPC, regs->epc, in do_trap_insn_illegal()
175 do_trap_error(regs, SIGILL, ILL_ILLOPC, regs->epc, in do_trap_insn_illegal()
199 do_trap_error(regs, SIGBUS, BUS_ADRALN, regs->epc, in do_trap_load_misaligned()
207 do_trap_error(regs, SIGBUS, BUS_ADRALN, regs->epc, in do_trap_load_misaligned()
220 do_trap_error(regs, SIGBUS, BUS_ADRALN, regs->epc, in do_trap_store_misaligned()
228 do_trap_error(regs, SIGBUS, BUS_ADRALN, regs->epc, in do_trap_store_misaligned()
277 force_sig_fault(SIGTRAP, TRAP_BRKPT, (void __user *)regs->epc); in handle_break()
283 else if (report_bug(regs->epc, regs) == BUG_TRAP_TYPE_WARN || in handle_break()
[all …]
Dkgdb.c39 unsigned long pc = regs->epc; in get_step_address()
201 {DBG_REG_EPC, GDB_SIZEOF_REG, offsetof(struct pt_regs, epc)},
254 regs->epc = pc; in kgdb_arch_set_pc()
276 regs->epc = addr; in kgdb_arch_update_addr()
326 type = kgdb_riscv_kgdbbreak(regs->epc); in kgdb_riscv_notify()
337 regs->epc += 4; in kgdb_riscv_notify()
Dsignal.c264 frame, (void *)regs->epc, (void *)regs->sp); in SYSCALL_DEFINE0()
367 regs->epc = (unsigned long)ksig->ka.sa.sa_handler; in setup_rt_frame()
376 (void *)regs->epc, (void *)regs->ra, frame); in setup_rt_frame()
406 regs->epc -= 0x4; in handle_signal()
443 regs->epc -= 0x4; in arch_do_signal_or_restart()
448 regs->epc -= 0x4; in arch_do_signal_or_restart()
/Linux-v6.6/arch/riscv/mm/
Dextable.c26 regs->epc = get_ex_fixup(ex); in ex_handler_fixup()
49 regs->epc = get_ex_fixup(ex); in ex_handler_uaccess_err_zero()
57 ex = search_exception_tables(regs->epc); in fixup_exception()
/Linux-v6.6/arch/riscv/include/asm/
Dptrace.h16 unsigned long epc; member
72 return regs->epc; in instruction_pointer()
77 regs->epc = val; in instruction_pointer_set()
/Linux-v6.6/arch/csky/kernel/
Datomic.S21 mfcr a3, epc
53 mtcr a3, epc

123