/linux-6.1.9/drivers/xen/events/ |
D | events_base.c | 109 evtchn_port_t evtchn; /* event channel */ member 221 static int set_evtchn_to_irq(evtchn_port_t evtchn, unsigned int irq) in set_evtchn_to_irq() argument 227 if (evtchn >= xen_evtchn_max_channels()) in set_evtchn_to_irq() 230 row = EVTCHN_ROW(evtchn); in set_evtchn_to_irq() 231 col = EVTCHN_COL(evtchn); in set_evtchn_to_irq() 256 int get_evtchn_to_irq(evtchn_port_t evtchn) in get_evtchn_to_irq() argument 258 if (evtchn >= xen_evtchn_max_channels()) in get_evtchn_to_irq() 260 if (evtchn_to_irq[EVTCHN_ROW(evtchn)] == NULL) in get_evtchn_to_irq() 262 return READ_ONCE(evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]); in get_evtchn_to_irq() 312 evtchn_port_t evtchn, in xen_irq_info_common_setup() argument [all …]
|
D | events_internal.h | 18 void (*bind_to_cpu)(evtchn_port_t evtchn, unsigned int cpu, 36 int get_evtchn_to_irq(evtchn_port_t evtchn); 39 unsigned int cpu_from_evtchn(evtchn_port_t evtchn); 50 static inline int xen_evtchn_port_setup(evtchn_port_t evtchn) in xen_evtchn_port_setup() argument 53 return evtchn_ops->setup(evtchn); in xen_evtchn_port_setup() 57 static inline void xen_evtchn_port_remove(evtchn_port_t evtchn, in xen_evtchn_port_remove() argument 61 evtchn_ops->remove(evtchn, cpu); in xen_evtchn_port_remove() 64 static inline void xen_evtchn_port_bind_to_cpu(evtchn_port_t evtchn, in xen_evtchn_port_bind_to_cpu() argument 68 evtchn_ops->bind_to_cpu(evtchn, cpu, old_cpu); in xen_evtchn_port_bind_to_cpu()
|
D | events_2l.c | 50 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() 178 evtchn_port_t evtchn = evtchn_from_irq(irq); in evtchn_2l_handle_events() local 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.1.9/drivers/xen/ |
D | evtchn.c | 107 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 …]
|
D | Makefile | 19 obj-$(CONFIG_XEN_DEV_EVTCHN) += xen-evtchn.o 35 xen-evtchn-y := evtchn.o
|
D | pvcalls-front.c | 373 static int create_active(struct sock_mapping *map, evtchn_port_t *evtchn) in create_active() argument 378 *evtchn = 0; in create_active() 391 ret = xenbus_alloc_evtchn(pvcalls_front_dev, evtchn); in create_active() 394 irq = bind_evtchn_to_irqhandler(*evtchn, pvcalls_front_conn_handler, in create_active() 409 if (*evtchn > 0) in create_active() 410 xenbus_free_evtchn(pvcalls_front_dev, *evtchn); in create_active() 421 evtchn_port_t evtchn; in pvcalls_front_connect() local 445 ret = create_active(map, &evtchn); in pvcalls_front_connect() 460 req->u.connect.evtchn = evtchn; in pvcalls_front_connect() 772 evtchn_port_t evtchn; in pvcalls_front_accept() local [all …]
|
D | pvcalls-back.c | 316 evtchn_port_t evtchn, in pvcalls_new_active_socket() argument 351 fedata->dev, evtchn, in pvcalls_new_active_socket() 415 req->u.connect.evtchn, in pvcalls_back_connect() 556 req->u.accept.evtchn, in __pvcalls_back_accept() 924 evtchn_port_t evtchn; in backend_connect() local 934 &evtchn); in backend_connect() 950 err = bind_interdomain_evtchn_to_irq_lateeoi(dev, evtchn); in backend_connect()
|
D | xen-scsiback.c | 845 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.1.9/include/xen/ |
D | events.h | 19 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); 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); 104 unsigned int irq_from_evtchn(evtchn_port_t evtchn);
|
/linux-6.1.9/drivers/tty/hvc/ |
D | hvc_xen.c | 39 unsigned int evtchn; member 83 notify_remote_via_evtchn(cons->evtchn); in notify_daemon() 255 info->evtchn = v; in xen_hvm_console_init() 278 info->evtchn = xen_start_info->console.domU.evtchn; in xencons_info_pv_init() 296 if (!xen_start_info->console.domU.evtchn) in xen_pv_console_init() 348 info->evtchn = v; in xen_console_update_evtchn() 350 info->evtchn = xen_start_info->console.domU.evtchn; in xen_console_update_evtchn() 359 rebind_evtchn_irq(info->evtchn, info->irq); in xen_console_resume() 369 if (info->evtchn > 0) in xencons_disconnect_backend() 370 xenbus_free_evtchn(info->xbdev, info->evtchn); in xencons_disconnect_backend() [all …]
|
/linux-6.1.9/drivers/char/tpm/ |
D | xen-tpmfront.c | 26 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.1.9/tools/testing/selftests/kvm/x86_64/ |
D | xen_shinfo_test.c | 577 .u.evtchn.send_port = 127, in main() 578 .u.evtchn.type = EVTCHNSTAT_interdomain, in main() 579 .u.evtchn.flags = 0, in main() 580 .u.evtchn.deliver.port.port = EVTCHN_TEST1, in main() 581 .u.evtchn.deliver.port.vcpu = vcpu->id + 1, in main() 582 .u.evtchn.deliver.port.priority = KVM_IRQ_ROUTING_XEN_EVTCHN_PRIO_2LEVEL, in main() 587 inj.u.evtchn.flags = KVM_XEN_EVTCHN_UPDATE; in main() 588 inj.u.evtchn.deliver.port.vcpu = vcpu->id; in main() 591 inj.u.evtchn.send_port = 197; in main() 592 inj.u.evtchn.deliver.eventfd.port = 0; in main() [all …]
|
/linux-6.1.9/arch/x86/kvm/ |
D | xen.c | 1621 u32 port = data->u.evtchn.send_port; in kvm_xen_eventfd_update() 1635 if (evtchnfd->type != data->u.evtchn.type) in kvm_xen_eventfd_update() 1643 evtchnfd->deliver.port.port != data->u.evtchn.deliver.port.port) in kvm_xen_eventfd_update() 1647 if (data->u.evtchn.deliver.port.priority != KVM_IRQ_ROUTING_XEN_EVTCHN_PRIO_2LEVEL) in kvm_xen_eventfd_update() 1651 evtchnfd->deliver.port.priority = data->u.evtchn.deliver.port.priority; in kvm_xen_eventfd_update() 1652 if (evtchnfd->deliver.port.vcpu_id != data->u.evtchn.deliver.port.vcpu) { in kvm_xen_eventfd_update() 1653 evtchnfd->deliver.port.vcpu_id = data->u.evtchn.deliver.port.vcpu; in kvm_xen_eventfd_update() 1667 u32 port = data->u.evtchn.send_port; in kvm_xen_eventfd_assign() 1679 switch(data->u.evtchn.type) { in kvm_xen_eventfd_assign() 1682 if (data->u.evtchn.deliver.port.port != data->u.evtchn.send_port) in kvm_xen_eventfd_assign() [all …]
|
/linux-6.1.9/include/xen/interface/io/ |
D | pvcalls.h | 55 uint32_t evtchn; member 74 uint32_t evtchn; member
|
/linux-6.1.9/drivers/pci/ |
D | xen-pcifront.c | 44 int evtchn; member 117 evtchn_port_t port = pdev->evtchn; in do_pci_op() 642 notify_remote_via_evtchn(pdev->evtchn); in pcifront_do_aer() 720 pdev->evtchn = INVALID_EVTCHN; in alloc_pdev() 742 if (pdev->evtchn != INVALID_EVTCHN) in free_pdev() 743 xenbus_free_evtchn(pdev->xdev, pdev->evtchn); in free_pdev() 757 err = xenbus_alloc_evtchn(pdev->xdev, &pdev->evtchn); in pcifront_publish_info() 761 err = bind_evtchn_to_irqhandler(pdev->evtchn, pcifront_handler_aer, in pcifront_publish_info() 782 "event-channel", "%u", pdev->evtchn); in pcifront_publish_info()
|
/linux-6.1.9/drivers/input/misc/ |
D | xen-kbdfront.c | 426 int ret, evtchn; in xenkbd_connect_backend() local 435 ret = xenbus_alloc_evtchn(dev, &evtchn); in xenkbd_connect_backend() 438 ret = bind_evtchn_to_irqhandler(evtchn, input_handler, in xenkbd_connect_backend() 461 evtchn); in xenkbd_connect_backend() 482 xenbus_free_evtchn(dev, evtchn); in xenkbd_connect_backend()
|
/linux-6.1.9/net/9p/ |
D | trans_xen.c | 40 int evtchn; member 352 ret = xenbus_alloc_evtchn(dev, &ring->evtchn); in xen_9pfs_front_alloc_dataring() 355 ring->irq = bind_evtchn_to_irqhandler(ring->evtchn, in xen_9pfs_front_alloc_dataring() 361 xenbus_free_evtchn(dev, ring->evtchn); in xen_9pfs_front_alloc_dataring() 447 priv->rings[i].evtchn); in xen_9pfs_front_probe()
|
/linux-6.1.9/drivers/video/fbdev/ |
D | xen-fbfront.c | 578 int ret, evtchn, irq; in xenfb_connect_backend() local 581 ret = xenbus_alloc_evtchn(dev, &evtchn); in xenfb_connect_backend() 584 irq = bind_evtchn_to_irqhandler(evtchn, xenfb_event_handler, in xenfb_connect_backend() 587 xenbus_free_evtchn(dev, evtchn); in xenfb_connect_backend() 602 evtchn); in xenfb_connect_backend()
|
/linux-6.1.9/drivers/block/xen-blkback/ |
D | xenbus.c | 193 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() 974 unsigned int nr_grefs, evtchn; in read_per_ring_refs() local 977 &evtchn); in read_per_ring_refs() 1032 err = xen_blkif_map(ring, ring_ref, nr_grefs, evtchn); in read_per_ring_refs() 1034 xenbus_dev_fatal(dev, err, "mapping ring-ref port %u", evtchn); in read_per_ring_refs()
|
/linux-6.1.9/drivers/scsi/ |
D | xen-scsifront.c | 112 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.1.9/drivers/net/xen-netback/ |
D | xenbus.c | 688 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()
|
D | common.h | 360 unsigned int evtchn);
|
/linux-6.1.9/usr/include/ |
D | Makefile | 52 no-header-test += xen/evtchn.h
|
/linux-6.1.9/include/xen/interface/ |
D | xen.h | 631 uint32_t evtchn; /* Event channel for console page. */ member
|
/linux-6.1.9/drivers/usb/host/ |
D | xen-hcd.c | 82 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()
|