• Home
  • Raw
  • Download

Lines Matching refs:evtchn

118 static int set_evtchn_to_irq(unsigned evtchn, unsigned irq)  in set_evtchn_to_irq()  argument
123 if (evtchn >= xen_evtchn_max_channels()) in set_evtchn_to_irq()
126 row = EVTCHN_ROW(evtchn); in set_evtchn_to_irq()
127 col = EVTCHN_COL(evtchn); in set_evtchn_to_irq()
141 evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)] = irq; in set_evtchn_to_irq()
145 int get_evtchn_to_irq(unsigned evtchn) in get_evtchn_to_irq() argument
147 if (evtchn >= xen_evtchn_max_channels()) in get_evtchn_to_irq()
149 if (evtchn_to_irq[EVTCHN_ROW(evtchn)] == NULL) in get_evtchn_to_irq()
151 return evtchn_to_irq[EVTCHN_ROW(evtchn)][EVTCHN_COL(evtchn)]; in get_evtchn_to_irq()
164 unsigned evtchn, in xen_irq_info_common_setup() argument
173 info->evtchn = evtchn; in xen_irq_info_common_setup()
176 ret = set_evtchn_to_irq(evtchn, irq); in xen_irq_info_common_setup()
186 unsigned evtchn) in xen_irq_info_evtchn_setup() argument
190 return xen_irq_info_common_setup(info, irq, IRQT_EVTCHN, evtchn, 0); in xen_irq_info_evtchn_setup()
195 unsigned evtchn, in xen_irq_info_ipi_setup() argument
204 return xen_irq_info_common_setup(info, irq, IRQT_IPI, evtchn, 0); in xen_irq_info_ipi_setup()
209 unsigned evtchn, in xen_irq_info_virq_setup() argument
218 return xen_irq_info_common_setup(info, irq, IRQT_VIRQ, evtchn, 0); in xen_irq_info_virq_setup()
222 unsigned evtchn, in xen_irq_info_pirq_setup() argument
235 return xen_irq_info_common_setup(info, irq, IRQT_PIRQ, evtchn, 0); in xen_irq_info_pirq_setup()
240 set_evtchn_to_irq(info->evtchn, -1); in xen_irq_info_cleanup()
241 info->evtchn = 0; in xen_irq_info_cleanup()
252 return info_for_irq(irq)->evtchn; in evtchn_from_irq()
255 unsigned irq_from_evtchn(unsigned int evtchn) in irq_from_evtchn() argument
257 return get_evtchn_to_irq(evtchn); in irq_from_evtchn()
306 unsigned int cpu_from_evtchn(unsigned int evtchn) in cpu_from_evtchn() argument
308 int irq = get_evtchn_to_irq(evtchn); in cpu_from_evtchn()
348 unsigned int evtchn; in xen_evtchn_mask_all() local
350 for (evtchn = 0; evtchn < xen_evtchn_nr_channels(); evtchn++) in xen_evtchn_mask_all()
351 mask_evtchn(evtchn); in xen_evtchn_mask_all()
364 int evtchn = evtchn_from_irq(irq); in notify_remote_via_irq() local
366 if (VALID_EVTCHN(evtchn)) in notify_remote_via_irq()
367 notify_remote_via_evtchn(evtchn); in notify_remote_via_irq()
482 int evtchn = evtchn_from_irq(data->irq); in eoi_pirq() local
486 if (!VALID_EVTCHN(evtchn)) in eoi_pirq()
491 int masked = test_and_set_mask(evtchn); in eoi_pirq()
493 clear_evtchn(evtchn); in eoi_pirq()
498 unmask_evtchn(evtchn); in eoi_pirq()
500 clear_evtchn(evtchn); in eoi_pirq()
518 int evtchn = evtchn_from_irq(irq); in __startup_pirq() local
523 if (VALID_EVTCHN(evtchn)) in __startup_pirq()
535 evtchn = bind_pirq.port; in __startup_pirq()
539 rc = set_evtchn_to_irq(evtchn, irq); in __startup_pirq()
543 info->evtchn = evtchn; in __startup_pirq()
544 bind_evtchn_to_cpu(evtchn, 0); in __startup_pirq()
551 unmask_evtchn(evtchn); in __startup_pirq()
558 xen_evtchn_close(evtchn); in __startup_pirq()
571 unsigned evtchn = evtchn_from_irq(irq); in shutdown_pirq() local
575 if (!VALID_EVTCHN(evtchn)) in shutdown_pirq()
578 mask_evtchn(evtchn); in shutdown_pirq()
579 xen_evtchn_close(evtchn); in shutdown_pirq()
611 int evtchn = evtchn_from_irq(irq); in __unbind_from_irq() local
620 if (VALID_EVTCHN(evtchn)) { in __unbind_from_irq()
623 xen_evtchn_close(evtchn); in __unbind_from_irq()
839 int bind_evtchn_to_irq(unsigned int evtchn) in bind_evtchn_to_irq() argument
844 if (evtchn >= xen_evtchn_max_channels()) in bind_evtchn_to_irq()
849 irq = get_evtchn_to_irq(evtchn); in bind_evtchn_to_irq()
859 ret = xen_irq_info_evtchn_setup(irq, evtchn); in bind_evtchn_to_irq()
866 bind_evtchn_to_cpu(evtchn, 0); in bind_evtchn_to_irq()
882 int evtchn, irq; in bind_ipi_to_irq() local
901 evtchn = bind_ipi.port; in bind_ipi_to_irq()
903 ret = xen_irq_info_ipi_setup(cpu, irq, evtchn, ipi); in bind_ipi_to_irq()
909 bind_evtchn_to_cpu(evtchn, cpu); in bind_ipi_to_irq()
974 int evtchn, irq, ret; in bind_virq_to_irq() local
997 evtchn = bind_virq.port; in bind_virq_to_irq()
1002 evtchn = ret; in bind_virq_to_irq()
1005 ret = xen_irq_info_virq_setup(cpu, irq, evtchn, virq); in bind_virq_to_irq()
1012 bind_evtchn_to_cpu(evtchn, cpu); in bind_virq_to_irq()
1031 int bind_evtchn_to_irqhandler(unsigned int evtchn, in bind_evtchn_to_irqhandler() argument
1038 irq = bind_evtchn_to_irq(evtchn); in bind_evtchn_to_irqhandler()
1144 int evtchn_make_refcounted(unsigned int evtchn) in evtchn_make_refcounted() argument
1146 int irq = get_evtchn_to_irq(evtchn); in evtchn_make_refcounted()
1165 int evtchn_get(unsigned int evtchn) in evtchn_get() argument
1171 if (evtchn >= xen_evtchn_max_channels()) in evtchn_get()
1176 irq = get_evtchn_to_irq(evtchn); in evtchn_get()
1198 void evtchn_put(unsigned int evtchn) in evtchn_put() argument
1200 int irq = get_evtchn_to_irq(evtchn); in evtchn_put()
1274 void rebind_evtchn_irq(int evtchn, int irq) in rebind_evtchn_irq() argument
1288 BUG_ON(get_evtchn_to_irq(evtchn) != -1); in rebind_evtchn_irq()
1293 (void)xen_irq_info_evtchn_setup(irq, evtchn); in rebind_evtchn_irq()
1297 bind_evtchn_to_cpu(evtchn, info->cpu); in rebind_evtchn_irq()
1309 int evtchn = evtchn_from_irq(irq); in rebind_irq_to_cpu() local
1312 if (!VALID_EVTCHN(evtchn)) in rebind_irq_to_cpu()
1323 bind_vcpu.port = evtchn; in rebind_irq_to_cpu()
1330 masked = test_and_set_mask(evtchn); in rebind_irq_to_cpu()
1338 bind_evtchn_to_cpu(evtchn, tcpu); in rebind_irq_to_cpu()
1341 unmask_evtchn(evtchn); in rebind_irq_to_cpu()
1356 int evtchn = evtchn_from_irq(data->irq); in enable_dynirq() local
1358 if (VALID_EVTCHN(evtchn)) in enable_dynirq()
1359 unmask_evtchn(evtchn); in enable_dynirq()
1364 int evtchn = evtchn_from_irq(data->irq); in disable_dynirq() local
1366 if (VALID_EVTCHN(evtchn)) in disable_dynirq()
1367 mask_evtchn(evtchn); in disable_dynirq()
1372 int evtchn = evtchn_from_irq(data->irq); in ack_dynirq() local
1374 if (!VALID_EVTCHN(evtchn)) in ack_dynirq()
1379 int masked = test_and_set_mask(evtchn); in ack_dynirq()
1381 clear_evtchn(evtchn); in ack_dynirq()
1386 unmask_evtchn(evtchn); in ack_dynirq()
1388 clear_evtchn(evtchn); in ack_dynirq()
1399 unsigned int evtchn = evtchn_from_irq(data->irq); in retrigger_dynirq() local
1402 if (!VALID_EVTCHN(evtchn)) in retrigger_dynirq()
1405 masked = test_and_set_mask(evtchn); in retrigger_dynirq()
1406 set_evtchn(evtchn); in retrigger_dynirq()
1408 unmask_evtchn(evtchn); in retrigger_dynirq()
1454 int virq, irq, evtchn; in restore_cpu_virqs() local
1468 evtchn = bind_virq.port; in restore_cpu_virqs()
1471 (void)xen_irq_info_virq_setup(cpu, irq, evtchn, virq); in restore_cpu_virqs()
1472 bind_evtchn_to_cpu(evtchn, cpu); in restore_cpu_virqs()
1479 int ipi, irq, evtchn; in restore_cpu_ipis() local
1492 evtchn = bind_ipi.port; in restore_cpu_ipis()
1495 (void)xen_irq_info_ipi_setup(cpu, irq, evtchn, ipi); in restore_cpu_ipis()
1496 bind_evtchn_to_cpu(evtchn, cpu); in restore_cpu_ipis()
1503 int evtchn = evtchn_from_irq(irq); in xen_clear_irq_pending() local
1505 if (VALID_EVTCHN(evtchn)) in xen_clear_irq_pending()
1506 clear_evtchn(evtchn); in xen_clear_irq_pending()
1511 int evtchn = evtchn_from_irq(irq); in xen_set_irq_pending() local
1513 if (VALID_EVTCHN(evtchn)) in xen_set_irq_pending()
1514 set_evtchn(evtchn); in xen_set_irq_pending()
1519 int evtchn = evtchn_from_irq(irq); in xen_test_irq_pending() local
1522 if (VALID_EVTCHN(evtchn)) in xen_test_irq_pending()
1523 ret = test_evtchn(evtchn); in xen_test_irq_pending()
1532 evtchn_port_t evtchn = evtchn_from_irq(irq); in xen_poll_irq_timeout() local
1534 if (VALID_EVTCHN(evtchn)) { in xen_poll_irq_timeout()
1539 set_xen_guest_handle(poll.ports, &evtchn); in xen_poll_irq_timeout()
1581 info->evtchn = 0; /* zap event-channel binding */ in xen_irq_resume()