Home
last modified time | relevance | path

Searched refs:ntb (Results 1 – 25 of 28) sorted by relevance

12

/drivers/pci/endpoint/functions/
A Dpci-epf-vntb.c176 ntb_link_event(&ntb->ntb); in epf_ntb_link_up()
264 ntb_db_event(&ntb->ntb, i); in epf_ntb_cmd_handler()
350 pci_epc_clear_bar(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no, epf_bar); in epf_ntb_config_sspad_bar_clear()
397 pci_epf_free_space(ntb->epf, ntb->reg, barno, 0); in epf_ntb_config_spad_bar_free()
474 epc_features = pci_epc_get_features(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no); in epf_ntb_configure_interrupt()
534 ret = pci_epc_set_bar(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no, epf_bar); in epf_ntb_db_bar_init()
655 pci_epc_remove_epf(ntb->epf->epc, ntb->epf, 0); in epf_ntb_epc_destroy()
735 epc_features = pci_epc_get_features(ntb->epf->epc, ntb->epf->func_no, ntb->epf->vfunc_no); in epf_ntb_init_epc_bar()
820 epf_ntb_mw_bar_clear(ntb, ntb->num_mws); in epf_ntb_epc_init()
839 epf_ntb_mw_bar_clear(ntb, ntb->num_mws); in epf_ntb_epc_cleanup()
[all …]
A Dpci-epf-ntb.c266 ntb->mws_size[mw]); in epf_ntb_configure_mw()
626 struct epf_ntb *ntb; in epf_ntb_cmd_handler() local
955 epf = ntb->epf; in epf_ntb_config_spad_bar_free()
1009 epf = ntb->epf; in epf_ntb_config_spad_bar_alloc()
1515 epf = ntb->epf; in epf_ntb_epc_destroy_interface()
1563 epf = ntb->epf; in epf_ntb_epc_create_interface()
1606 epf = ntb->epf; in epf_ntb_epc_create()
1728 epf = ntb->epf; in epf_ntb_epc_init_interface()
2091 ntb = devm_kzalloc(dev, sizeof(*ntb), GFP_KERNEL); in epf_ntb_probe()
2092 if (!ntb) in epf_ntb_probe()
[all …]
A DMakefile7 obj-$(CONFIG_PCI_EPF_NTB) += pci-epf-ntb.o
/drivers/ntb/
A Dcore.c105 if (!ntb) in ntb_register_device()
107 if (!ntb->pdev) in ntb_register_device()
109 if (!ntb->ops) in ntb_register_device()
117 ntb->dev.parent = &ntb->pdev->dev; in ntb_register_device()
119 dev_set_name(&ntb->dev, "%s", pci_name(ntb->pdev)); in ntb_register_device()
180 if (ntb->ctx_ops && ntb->ctx_ops->link_event) in ntb_link_event()
181 ntb->ctx_ops->link_event(ntb->ctx); in ntb_link_event()
193 if (ntb->ctx_ops && ntb->ctx_ops->db_event) in ntb_db_event()
194 ntb->ctx_ops->db_event(ntb->ctx, vector); in ntb_db_event()
206 if (ntb->ctx_ops && ntb->ctx_ops->msg_event) in ntb_msg_event()
[all …]
A Dmsi.c45 ntb->msi = devm_kzalloc(&ntb->dev, struct_size(ntb->msi, peer_mws, peers), in ntb_msi_init()
47 if (!ntb->msi) in ntb_msi_init()
60 ntb->msi->peer_mws[i] = devm_ioremap(&ntb->dev, mw_phys_addr, in ntb_msi_init()
73 devm_iounmap(&ntb->dev, ntb->msi->peer_mws[i]); in ntb_msi_init()
75 devm_kfree(&ntb->dev, ntb->msi); in ntb_msi_init()
76 ntb->msi = NULL; in ntb_msi_init()
106 if (!ntb->msi) in ntb_msi_setup_mws()
224 dr->ntb->msi->desc_changed(dr->ntb->ctx); in ntb_msi_write_msg()
245 dr->ntb = ntb; in ntbm_msi_setup_callback()
289 if (!ntb->msi) in ntbm_msi_request_threaded_irq()
[all …]
A DMakefile2 obj-$(CONFIG_NTB) += ntb.o hw/ test/
5 ntb-y := core.o
6 ntb-$(CONFIG_NTB_MSI) += msi.o
A DKconfig9 ntb Linux driver uses this point-to-point communication as a method to
27 source "drivers/ntb/hw/Kconfig"
29 source "drivers/ntb/test/Kconfig"
35 messages over the ntb hardware. The transport exposes a queue pair api
/drivers/ntb/test/
A Dntb_pingpong.c100 struct ntb_dev *ntb; member
246 if (ntb_db_is_unsafe(ntb)) { in pp_check_ntb()
264 if (ntb_spad_count(ntb) < 1 && ntb_msg_count(ntb) < 1) { in pp_check_ntb()
284 pp->ntb = ntb; in pp_create_data()
326 msg_mask = ntb_msg_outbits(pp->ntb) | ntb_msg_inbits(pp->ntb); in pp_mask_events()
340 ntb_link_event(pp->ntb); in pp_setup_ctx()
347 ntb_link_disable(pp->ntb); in pp_clear_ctx()
349 ntb_clear_ctx(pp->ntb); in pp_clear_ctx()
371 ret = pp_check_ntb(ntb); in pp_probe()
375 pp = pp_create_data(ntb); in pp_probe()
[all …]
A Dntb_msi_test.c20 struct ntb_dev *ntb; member
65 ret = ntb_msi_setup_mws(nm->ntb); in ntb_msit_setup_work()
101 ntb_peer_db_set(nm->ntb, BIT(ntb_port_number(nm->ntb))); in ntb_msit_setup_work()
118 ntb_peer_db_set(nm->ntb, BIT(ntb_port_number(nm->ntb))); in ntb_msit_desc_changed()
329 if (ntb_spad_is_unsafe(ntb) || ntb_spad_count(ntb) < 2 * num_irqs + 1) { in ntb_msit_probe()
364 nm->ntb = ntb; in ntb_msit_probe()
384 devm_kfree(&ntb->dev, nm); in ntb_msit_probe()
393 ntb_link_disable(ntb); in ntb_msit_remove()
394 ntb_db_set_mask(ntb, ntb_db_valid_mask(ntb)); in ntb_msit_remove()
395 ntb_msi_clear_mws(ntb); in ntb_msit_remove()
[all …]
A Dntb_perf.c188 struct ntb_dev *ntb; member
509 ntb_db_vector_mask(perf->ntb, vec), ntb_db_read(perf->ntb)); in perf_db_event()
520 ntb_msg_read_sts(perf->ntb)); in perf_msg_event()
649 dev_warn(&peer->perf->ntb->dev, in perf_service_work()
729 ntb_clear_ctx(perf->ntb); in perf_enable_service()
735 ntb_link_event(perf->ntb); in perf_enable_service()
753 ntb_clear_ctx(perf->ntb); in perf_disable_service()
769 ntb_link_disable(perf->ntb); in perf_disable_service()
1402 perf->ntb = ntb; in perf_create_data()
1428 dev_warn(&peer->perf->ntb->dev, in perf_setup_peer_mw()
[all …]
A Dntb_tool.c257 struct ntb_dev *ntb; member
310 db_bits = ntb_db_read(tc->ntb); in tool_db_event()
387 ret = fn_set(tc->ntb, bits); in tool_fn_write()
392 ret = fn_clear(tc->ntb, bits); in tool_fn_write()
1039 tc->ntb->ops->db_clear); in tool_db_write()
1446 tc->ntb = ntb; in tool_create_data()
1451 if (ntb_db_is_unsafe(ntb)) in tool_create_data()
1454 if (ntb_spad_is_unsafe(ntb)) in tool_create_data()
1474 ntb_clear_ctx(tc->ntb); in tool_clear_ntb()
1475 ntb_link_disable(tc->ntb); in tool_clear_ntb()
[all …]
A DKconfig6 doorbells of the ntb hardware. This driver may be used to test that
7 your ntb hardware and drivers are functioning at a basic level.
17 This driver may be used to test that your ntb hardware and drivers are
/drivers/ntb/hw/amd/
A Dntb_hw_amd.c89 return ntb_ndev(ntb)->mw_count; in amd_ntb_mw_count()
232 pdev = ndev->ntb.pdev; in amd_ntb_get_link_status()
606 ntb_link_event(&ndev->ntb); in amd_handle_event()
623 ntb_link_event(&ndev->ntb); in amd_handle_event()
667 ntb_link_event(&ndev->ntb); in amd_handle_db_event()
715 pdev = ndev->ntb.pdev; in ndev_init_isr()
816 pdev = ndev->ntb.pdev; in ndev_deinit_isr()
959 ndev->ntb.pdev = pdev; in ndev_init_struct()
1066 switch (ndev->ntb.topo) { in amd_init_ntb()
1112 pdev = ndev->ntb.pdev; in amd_init_dev()
[all …]
A Dntb_hw_amd.h181 struct ntb_dev ntb; member
216 #define ntb_ndev(__ntb) container_of(__ntb, struct amd_ntb_dev, ntb)
/drivers/ntb/hw/epf/
A Dntb_hw_epf.c61 struct ntb_dev ntb; member
325 ntb_link_event(&ndev->ntb); in ntb_epf_vec_isr()
327 ntb_db_event(&ndev->ntb, irq_no); in ntb_epf_vec_isr()
334 struct pci_dev *pdev = ndev->ntb.pdev; in ntb_epf_init_isr()
385 return ntb_ndev(ntb)->mw_count; in ntb_epf_peer_mw_count()
390 return ntb_ndev(ntb)->spad_count; in ntb_epf_spad_count()
395 return ntb_ndev(ntb)->db_valid_mask; in ntb_epf_db_valid_mask()
541 ndev->ntb.pdev = pdev; in ntb_epf_init_struct()
542 ndev->ntb.topo = NTB_TOPO_NONE; in ntb_epf_init_struct()
543 ndev->ntb.ops = &ntb_epf_ops; in ntb_epf_init_struct()
[all …]
/drivers/ntb/hw/intel/
A Dntb_hw_gen1.h159 int intel_ntb_mw_count(struct ntb_dev *ntb, int pidx);
163 int intel_ntb_peer_mw_count(struct ntb_dev *ntb);
164 int intel_ntb_peer_mw_get_addr(struct ntb_dev *ntb, int idx,
168 int intel_ntb_link_disable(struct ntb_dev *ntb);
169 u64 intel_ntb_db_valid_mask(struct ntb_dev *ntb);
170 int intel_ntb_db_vector_count(struct ntb_dev *ntb);
172 int intel_ntb_db_set_mask(struct ntb_dev *ntb, u64 db_bits);
173 int intel_ntb_db_clear_mask(struct ntb_dev *ntb, u64 db_bits);
174 int intel_ntb_spad_is_unsafe(struct ntb_dev *ntb);
175 int intel_ntb_spad_count(struct ntb_dev *ntb);
[all …]
A Dntb_hw_gen3.c102 rc = pci_read_config_word(ndev->ntb.pdev, in gen3_poll_link()
150 pdev = ndev->ntb.pdev; in gen3_setup_b2b_mw()
187 switch (ndev->ntb.topo) { in gen3_init_ntb()
194 if (ndev->ntb.topo == NTB_TOPO_B2B_USD) { in gen3_init_ntb()
235 pdev = ndev->ntb.pdev; in gen3_init_dev()
245 ntb_topo_string(ndev->ntb.topo)); in gen3_init_dev()
246 if (ndev->ntb.topo == NTB_TOPO_NONE) in gen3_init_dev()
284 ntb_topo_string(ndev->ntb.topo)); in ndev_ntb3_debugfs_read()
350 if (ntb_topo_is_b2b(ndev->ntb.topo)) { in ndev_ntb3_debugfs_read()
427 ndev = container_of(ntb, struct intel_ntb_dev, ntb); in intel_ntb3_link_enable()
[all …]
A Dntb_hw_gen1.c370 pdev = ndev->ntb.pdev; in ndev_init_isr()
469 pdev = ndev->ntb.pdev; in ndev_deinit_isr()
503 pdev = ndev->ntb.pdev; in ndev_ntb_debugfs_read()
766 else if (pdev_is_gen4(ndev->ntb.pdev) || pdev_is_gen5(ndev->ntb.pdev)) in ndev_debugfs_read()
972 ndev = container_of(ntb, struct intel_ntb_dev, ntb); in intel_ntb_link_enable()
1001 ndev = container_of(ntb, struct intel_ntb_dev, ntb); in intel_ntb_link_disable()
1064 ndev = container_of(ntb, struct intel_ntb_dev, ntb); in intel_ntb_db_vector_count()
1157 ndev = container_of(ntb, struct intel_ntb_dev, ntb); in intel_ntb_spad_count()
1302 pdev = ndev->ntb.pdev; in xeon_setup_b2b_mw()
1649 pdev = ndev->ntb.pdev; in xeon_init_dev()
[all …]
A Dntb_hw_gen4.c104 pdev = ndev->ntb.pdev; in gen4_setup_b2b_mw()
141 if (ndev->ntb.topo == NTB_TOPO_B2B_USD) in gen4_init_ntb()
185 struct pci_dev *pdev = ndev->ntb.pdev; in gen4_init_dev()
203 ntb_topo_string(ndev->ntb.topo)); in gen4_init_dev()
204 if (ndev->ntb.topo == NTB_TOPO_NONE) in gen4_init_dev()
245 ntb_topo_string(ndev->ntb.topo)); in ndev_ntb4_debugfs_read()
438 ndev = container_of(ntb, struct intel_ntb_dev, ntb); in intel_ntb4_link_enable()
440 dev_dbg(&ntb->pdev->dev, in intel_ntb4_link_enable()
445 dev_dbg(&ntb->pdev->dev, in intel_ntb4_link_enable()
448 dev_dbg(&ntb->pdev->dev, in intel_ntb4_link_enable()
[all …]
A Dntb_hw_gen3.h107 int intel_ntb3_link_enable(struct ntb_dev *ntb, enum ntb_speed max_speed,
109 u64 intel_ntb3_db_read(struct ntb_dev *ntb);
110 int intel_ntb3_db_clear(struct ntb_dev *ntb, u64 db_bits);
111 int intel_ntb3_peer_db_set(struct ntb_dev *ntb, u64 db_bits);
112 int intel_ntb3_peer_db_addr(struct ntb_dev *ntb, phys_addr_t *db_addr,
A Dntb_hw_intel.h139 struct ntb_dev ntb; member
190 #define ntb_ndev(__ntb) container_of(__ntb, struct intel_ntb_dev, ntb)
/drivers/ntb/hw/idt/
A Dntb_hw_idt.c718 ntb_link_event(&ndev->ntb); in idt_se_isr()
1131 dev_err(&ndev->ntb.pdev->dev, in idt_init_mws()
1141 dev_err(&ndev->ntb.pdev->dev, in idt_init_mws()
1431 ntb_db_event(&ndev->ntb, 0); in idt_db_isr()
1614 ntb_msg_event(&ndev->ntb); in idt_msg_isr()
2123 struct pci_dev *pdev = ndev->ntb.pdev; in idt_init_isr()
2280 ndev->ntb.ops = &idt_ntb_ops; in idt_register_device()
2281 ndev->ntb.topo = NTB_TOPO_SWITCH; in idt_register_device()
2301 ntb_unregister_device(&ndev->ntb); in idt_unregister_device()
2456 data = idt_ntb_db_read(&ndev->ntb); in idt_dbgfs_info_read()
[all …]
/drivers/ntb/hw/mscc/
A Dntb_hw_switchtec.c46 struct ntb_dev ntb; member
95 return container_of(ntb, struct switchtec_ntb, ntb); in ntb_sndev()
511 ntb_link_event(&sndev->ntb); in switchtec_ntb_link_status_update()
533 ntb_link_event(&sndev->ntb); in check_link_status_work()
846 sndev->ntb.pdev = sndev->stdev->pdev; in switchtec_ntb_init_sndev()
847 sndev->ntb.topo = NTB_TOPO_SWITCH; in switchtec_ntb_init_sndev()
848 sndev->ntb.ops = &switchtec_ntb_ops; in switchtec_ntb_init_sndev()
1133 sndev->ntb.topo = NTB_TOPO_CROSSLINK; in switchtec_ntb_init_crosslink()
1379 ntb_db_event(&sndev->ntb, 0); in switchtec_ntb_doorbell_isr()
1521 rc = ntb_register_device(&sndev->ntb); in switchtec_ntb_add()
[all …]
/drivers/ntb/hw/
A DKconfig2 source "drivers/ntb/hw/amd/Kconfig"
3 source "drivers/ntb/hw/idt/Kconfig"
4 source "drivers/ntb/hw/intel/Kconfig"
5 source "drivers/ntb/hw/epf/Kconfig"
6 source "drivers/ntb/hw/mscc/Kconfig"
/drivers/net/
A Dntb_netdev.c403 struct ntb_dev *ntb; in ntb_netdev_probe() local
409 ntb = dev_ntb(client_dev->parent); in ntb_netdev_probe()
410 pdev = ntb->pdev; in ntb_netdev_probe()

Completed in 71 milliseconds

12