Home
last modified time | relevance | path

Searched refs:evtchn (Results 1 – 25 of 34) sorted by relevance

12

/linux-6.6.21/drivers/xen/events/
Devents_base.c111 evtchn_port_t evtchn; /* event channel */ member
216 static int set_evtchn_to_irq(evtchn_port_t evtchn, unsigned int irq) in set_evtchn_to_irq() argument
222 if (evtchn >= xen_evtchn_max_channels()) in set_evtchn_to_irq()
225 row = EVTCHN_ROW(evtchn); in set_evtchn_to_irq()
226 col = EVTCHN_COL(evtchn); in set_evtchn_to_irq()
268 static struct irq_info *evtchn_to_info(evtchn_port_t evtchn) in evtchn_to_info() argument
272 if (evtchn >= xen_evtchn_max_channels()) in evtchn_to_info()
274 if (evtchn_to_irq[EVTCHN_ROW(evtchn)] == NULL) in evtchn_to_info()
276 irq = READ_ONCE(evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]); in evtchn_to_info()
331 evtchn_port_t evtchn, in xen_irq_info_common_setup() argument
[all …]
Devents_internal.h18 void (*bind_to_cpu)(evtchn_port_t evtchn, unsigned int cpu,
38 unsigned int cpu_from_evtchn(evtchn_port_t evtchn);
49 static inline int xen_evtchn_port_setup(evtchn_port_t evtchn) in xen_evtchn_port_setup() argument
52 return evtchn_ops->setup(evtchn); in xen_evtchn_port_setup()
56 static inline void xen_evtchn_port_remove(evtchn_port_t evtchn, in xen_evtchn_port_remove() argument
60 evtchn_ops->remove(evtchn, cpu); in xen_evtchn_port_remove()
63 static inline void xen_evtchn_port_bind_to_cpu(evtchn_port_t evtchn, in xen_evtchn_port_bind_to_cpu() argument
67 evtchn_ops->bind_to_cpu(evtchn, cpu, old_cpu); in xen_evtchn_port_bind_to_cpu()
Devents_2l.c50 static void evtchn_2l_remove(evtchn_port_t evtchn, unsigned int cpu) in evtchn_2l_remove() argument
52 clear_bit(evtchn, BM(per_cpu(cpu_evtchn_mask, cpu))); in evtchn_2l_remove()
55 static void evtchn_2l_bind_to_cpu(evtchn_port_t evtchn, unsigned int cpu, in evtchn_2l_bind_to_cpu() argument
58 clear_bit(evtchn, BM(per_cpu(cpu_evtchn_mask, old_cpu))); in evtchn_2l_bind_to_cpu()
59 set_bit(evtchn, BM(per_cpu(cpu_evtchn_mask, cpu))); in evtchn_2l_bind_to_cpu()
174 evtchn_port_t evtchn; in evtchn_2l_handle_events() local
177 irq = irq_evtchn_from_virq(cpu, VIRQ_TIMER, &evtchn); in evtchn_2l_handle_events()
179 word_idx = evtchn / BITS_PER_LONG; in evtchn_2l_handle_events()
180 bit_idx = evtchn % BITS_PER_LONG; in evtchn_2l_handle_events()
/linux-6.6.21/drivers/xen/
Devtchn.c107 static int add_evtchn(struct per_user_data *u, struct user_evtchn *evtchn) in add_evtchn() argument
119 if (this->port < evtchn->port) in add_evtchn()
121 else if (this->port > evtchn->port) in add_evtchn()
128 rb_link_node(&evtchn->node, parent, new); in add_evtchn()
129 rb_insert_color(&evtchn->node, &u->evtchns); in add_evtchn()
134 static void del_evtchn(struct per_user_data *u, struct user_evtchn *evtchn) in del_evtchn() argument
137 rb_erase(&evtchn->node, &u->evtchns); in del_evtchn()
138 kfree(evtchn); in del_evtchn()
147 struct user_evtchn *evtchn; in find_evtchn() local
149 evtchn = rb_entry(node, struct user_evtchn, node); in find_evtchn()
[all …]
DMakefile19 obj-$(CONFIG_XEN_DEV_EVTCHN) += xen-evtchn.o
35 xen-evtchn-y := evtchn.o
Dpvcalls-front.c381 static int create_active(struct sock_mapping *map, evtchn_port_t *evtchn) in create_active() argument
386 *evtchn = 0; in create_active()
399 ret = xenbus_alloc_evtchn(pvcalls_front_dev, evtchn); in create_active()
402 irq = bind_evtchn_to_irqhandler(*evtchn, pvcalls_front_conn_handler, in create_active()
417 if (*evtchn > 0) in create_active()
418 xenbus_free_evtchn(pvcalls_front_dev, *evtchn); in create_active()
429 evtchn_port_t evtchn; in pvcalls_front_connect() local
444 ret = create_active(map, &evtchn); in pvcalls_front_connect()
467 req->u.connect.evtchn = evtchn; in pvcalls_front_connect()
779 evtchn_port_t evtchn; in pvcalls_front_accept() local
[all …]
Dpvcalls-back.c320 evtchn_port_t evtchn, in pvcalls_new_active_socket() argument
357 fedata->dev, evtchn, in pvcalls_new_active_socket()
421 req->u.connect.evtchn, in pvcalls_back_connect()
560 req->u.accept.evtchn, in __pvcalls_back_accept()
929 evtchn_port_t evtchn; in backend_connect() local
939 &evtchn); in backend_connect()
955 err = bind_interdomain_evtchn_to_irq_lateeoi(dev, evtchn); in backend_connect()
Dxen-scsiback.c845 evtchn_port_t evtchn) in scsiback_init_sring() argument
861 err = bind_interdomain_evtchn_to_irq_lateeoi(info->dev, evtchn); in scsiback_init_sring()
887 evtchn_port_t evtchn; in scsiback_map() local
892 "event-channel", "%u", &evtchn, NULL); in scsiback_map()
898 return scsiback_init_sring(info, ring_ref, evtchn); in scsiback_map()
/linux-6.6.21/include/xen/
Devents.h19 int bind_evtchn_to_irq(evtchn_port_t evtchn);
20 int bind_evtchn_to_irq_lateeoi(evtchn_port_t evtchn);
21 int bind_evtchn_to_irqhandler(evtchn_port_t evtchn,
25 int bind_evtchn_to_irqhandler_lateeoi(evtchn_port_t evtchn,
72 int evtchn_make_refcounted(evtchn_port_t evtchn, bool is_static);
73 int evtchn_get(evtchn_port_t evtchn);
74 void evtchn_put(evtchn_port_t evtchn);
77 void rebind_evtchn_irq(evtchn_port_t evtchn, int irq);
103 unsigned int irq_from_evtchn(evtchn_port_t evtchn);
105 evtchn_port_t *evtchn);
/linux-6.6.21/drivers/tty/hvc/
Dhvc_xen.c39 unsigned int evtchn; member
84 notify_remote_via_evtchn(cons->evtchn); in notify_daemon()
267 info->evtchn = v; in xen_hvm_console_init()
291 info->evtchn = xen_start_info->console.domU.evtchn; in xencons_info_pv_init()
309 if (!xen_start_info->console.domU.evtchn) in xen_pv_console_init()
362 info->evtchn = v; in xen_console_update_evtchn()
364 info->evtchn = xen_start_info->console.domU.evtchn; in xen_console_update_evtchn()
373 rebind_evtchn_irq(info->evtchn, info->irq); in xen_console_resume()
384 evtchn_put(info->evtchn); in xencons_disconnect_backend()
386 info->evtchn = 0; in xencons_disconnect_backend()
[all …]
/linux-6.6.21/drivers/char/tpm/
Dxen-tpmfront.c26 unsigned int evtchn; member
126 notify_remote_via_evtchn(priv->evtchn); in vtpm_cancel()
161 notify_remote_via_evtchn(priv->evtchn); in vtpm_send()
262 rv = xenbus_alloc_evtchn(dev, &priv->evtchn); in setup_ring()
266 rv = bind_evtchn_to_irqhandler(priv->evtchn, tpmif_interrupt, 0, in setup_ring()
289 priv->evtchn); in setup_ring()
/linux-6.6.21/tools/testing/selftests/kvm/x86_64/
Dxen_shinfo_test.c590 .u.evtchn.send_port = 127, in main()
591 .u.evtchn.type = EVTCHNSTAT_interdomain, in main()
592 .u.evtchn.flags = 0, in main()
593 .u.evtchn.deliver.port.port = EVTCHN_TEST1, in main()
594 .u.evtchn.deliver.port.vcpu = vcpu->id + 1, in main()
595 .u.evtchn.deliver.port.priority = KVM_IRQ_ROUTING_XEN_EVTCHN_PRIO_2LEVEL, in main()
600 inj.u.evtchn.flags = KVM_XEN_EVTCHN_UPDATE; in main()
601 inj.u.evtchn.deliver.port.vcpu = vcpu->id; in main()
604 inj.u.evtchn.send_port = 197; in main()
605 inj.u.evtchn.deliver.eventfd.port = 0; in main()
[all …]
/linux-6.6.21/arch/x86/kvm/
Dxen.c1822 u32 port = data->u.evtchn.send_port; in kvm_xen_eventfd_update()
1836 if (evtchnfd->type != data->u.evtchn.type) in kvm_xen_eventfd_update()
1844 evtchnfd->deliver.port.port != data->u.evtchn.deliver.port.port) in kvm_xen_eventfd_update()
1848 if (data->u.evtchn.deliver.port.priority != KVM_IRQ_ROUTING_XEN_EVTCHN_PRIO_2LEVEL) in kvm_xen_eventfd_update()
1851 evtchnfd->deliver.port.priority = data->u.evtchn.deliver.port.priority; in kvm_xen_eventfd_update()
1852 if (evtchnfd->deliver.port.vcpu_id != data->u.evtchn.deliver.port.vcpu) { in kvm_xen_eventfd_update()
1853 evtchnfd->deliver.port.vcpu_id = data->u.evtchn.deliver.port.vcpu; in kvm_xen_eventfd_update()
1869 u32 port = data->u.evtchn.send_port; in kvm_xen_eventfd_assign()
1878 switch(data->u.evtchn.type) { in kvm_xen_eventfd_assign()
1881 if (data->u.evtchn.deliver.port.port != data->u.evtchn.send_port) in kvm_xen_eventfd_assign()
[all …]
/linux-6.6.21/include/xen/interface/io/
Dpvcalls.h55 uint32_t evtchn; member
74 uint32_t evtchn; member
/linux-6.6.21/drivers/pci/
Dxen-pcifront.c43 int evtchn; member
116 evtchn_port_t port = pdev->evtchn; in do_pci_op()
639 notify_remote_via_evtchn(pdev->evtchn); in pcifront_do_aer()
712 pdev->evtchn = INVALID_EVTCHN; in alloc_pdev()
734 if (pdev->evtchn != INVALID_EVTCHN) in free_pdev()
735 xenbus_free_evtchn(pdev->xdev, pdev->evtchn); in free_pdev()
749 err = xenbus_alloc_evtchn(pdev->xdev, &pdev->evtchn); in pcifront_publish_info()
753 err = bind_evtchn_to_irqhandler(pdev->evtchn, pcifront_handler_aer, in pcifront_publish_info()
774 "event-channel", "%u", pdev->evtchn); in pcifront_publish_info()
/linux-6.6.21/drivers/input/misc/
Dxen-kbdfront.c425 int ret, evtchn; in xenkbd_connect_backend() local
434 ret = xenbus_alloc_evtchn(dev, &evtchn); in xenkbd_connect_backend()
437 ret = bind_evtchn_to_irqhandler(evtchn, input_handler, in xenkbd_connect_backend()
460 evtchn); in xenkbd_connect_backend()
481 xenbus_free_evtchn(dev, evtchn); in xenkbd_connect_backend()
/linux-6.6.21/net/9p/
Dtrans_xen.c40 int evtchn; member
357 ret = xenbus_alloc_evtchn(dev, &ring->evtchn); in xen_9pfs_front_alloc_dataring()
360 ring->irq = bind_evtchn_to_irqhandler(ring->evtchn, in xen_9pfs_front_alloc_dataring()
366 xenbus_free_evtchn(dev, ring->evtchn); in xen_9pfs_front_alloc_dataring()
452 priv->rings[i].evtchn); in xen_9pfs_front_init()
/linux-6.6.21/drivers/video/fbdev/
Dxen-fbfront.c551 int ret, evtchn, irq; in xenfb_connect_backend() local
554 ret = xenbus_alloc_evtchn(dev, &evtchn); in xenfb_connect_backend()
557 irq = bind_evtchn_to_irqhandler(evtchn, xenfb_event_handler, in xenfb_connect_backend()
560 xenbus_free_evtchn(dev, evtchn); in xenfb_connect_backend()
575 evtchn); in xenfb_connect_backend()
/linux-6.6.21/drivers/block/xen-blkback/
Dxenbus.c193 unsigned int nr_grefs, unsigned int evtchn) in xen_blkif_map() argument
254 evtchn, xen_blkif_be_int, 0, "blkif-backend", ring); in xen_blkif_map()
972 unsigned int nr_grefs, evtchn; in read_per_ring_refs() local
975 &evtchn); in read_per_ring_refs()
1030 err = xen_blkif_map(ring, ring_ref, nr_grefs, evtchn); in read_per_ring_refs()
1032 xenbus_dev_fatal(dev, err, "mapping ring-ref port %u", evtchn); in read_per_ring_refs()
/linux-6.6.21/drivers/scsi/
Dxen-scsifront.c112 unsigned int evtchn; member
803 err = xenbus_alloc_evtchn(dev, &info->evtchn); in scsifront_alloc_ring()
809 err = bind_evtchn_to_irq_lateeoi(info->evtchn); in scsifront_alloc_ring()
852 pr_debug("%s: %u %u\n", __func__, info->ring_ref, info->evtchn); in scsifront_init_ring()
867 info->evtchn); in scsifront_init_ring()
/linux-6.6.21/drivers/net/xen-netback/
Dxenbus.c688 unsigned int evtchn; in connect_ctrl_ring() local
707 evtchn = val; in connect_ctrl_ring()
709 err = xenvif_connect_ctrl(vif, ring_ref, evtchn); in connect_ctrl_ring()
713 ring_ref, evtchn); in connect_ctrl_ring()
Dcommon.h360 unsigned int evtchn);
/linux-6.6.21/usr/include/
DMakefile52 no-header-test += xen/evtchn.h
/linux-6.6.21/include/xen/interface/
Dxen.h631 uint32_t evtchn; /* Event channel for console page. */ member
/linux-6.6.21/drivers/usb/host/
Dxen-hcd.c82 unsigned int evtchn; member
1131 err = xenbus_alloc_evtchn(dev, &info->evtchn); in xenhcd_setup_rings()
1137 err = bind_evtchn_to_irq_lateeoi(info->evtchn); in xenhcd_setup_rings()
1194 info->evtchn); in xenhcd_talk_to_backend()

12