/openbmc/linux/drivers/xen/events/ |
H A D | events_base.c | 97 struct irq_info { struct 186 static struct irq_info *legacy_info_ptrs[NR_IRQS_LEGACY]; 252 static struct irq_info *info_for_irq(unsigned irq) in info_for_irq() 260 static void set_info_for_irq(unsigned int irq, struct irq_info *info) in set_info_for_irq() 268 static struct irq_info *evtchn_to_info(evtchn_port_t evtchn) in evtchn_to_info() 282 static void channels_on_cpu_dec(struct irq_info *info) in channels_on_cpu_dec() 295 static void channels_on_cpu_inc(struct irq_info *info) in channels_on_cpu_inc() 316 struct irq_info *info = container_of(to_rcu_work(work), struct irq_info, in delayed_free_irq() 329 static int xen_irq_info_common_setup(struct irq_info *info, in xen_irq_info_common_setup() 353 static int xen_irq_info_evtchn_setup(struct irq_info *info, in xen_irq_info_evtchn_setup() [all …]
|
/openbmc/linux/drivers/media/radio/wl128x/ |
H A D | fmdrv_common.c | 173 fmdev->irq_info.handlers[fmdev->irq_info.stage](fmdev); in fm_irq_call() 179 fmdev->irq_info.stage = stage; in fm_irq_call_stage() 185 fmdev->irq_info.stage = stage; in fm_irq_timeout_stage() 186 mod_timer(&fmdev->irq_info.timer, jiffies + FM_DRV_TX_TIMEOUT); in fm_irq_timeout_stage() 253 struct fm_irq *irq_info; in recv_tasklet() local 260 irq_info = &fmdev->irq_info; in recv_tasklet() 279 if (irq_info->stage != 0) { in recv_tasklet() 281 irq_info->stage = 0; in recv_tasklet() 288 irq_info->handlers[irq_info->stage](fmdev); in recv_tasklet() 315 irq_info->handlers[irq_info->stage](fmdev); in recv_tasklet() [all …]
|
H A D | fmdrv_rx.c | 23 fmdev->irq_info.mask |= FM_LEV_EVENT; in fm_rx_reset_rds_cache() 75 intr_flag = fmdev->irq_info.mask; in fm_rx_set_freq() 76 fmdev->irq_info.mask = (FM_FR_EVENT | FM_BL_EVENT); in fm_rx_set_freq() 77 payload = fmdev->irq_info.mask; in fm_rx_set_freq() 118 fmdev->irq_info.mask = intr_flag; in fm_rx_set_freq() 119 payload = fmdev->irq_info.mask; in fm_rx_set_freq() 219 intr_flag = fmdev->irq_info.mask; in fm_rx_seek() 220 fmdev->irq_info.mask = (FM_FR_EVENT | FM_BL_EVENT); in fm_rx_seek() 221 payload = fmdev->irq_info.mask; in fm_rx_seek() 244 int_reason = fmdev->irq_info.flag & (FM_TUNE_COMPLETE | FM_BAND_LIMIT); in fm_rx_seek() [all …]
|
H A D | fmdrv.h | 217 struct fm_irq irq_info; member
|
/openbmc/linux/drivers/misc/cxl/ |
H A D | irq.c | 34 irqreturn_t cxl_irq_psl9(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info) in cxl_irq_psl9() argument 38 dsisr = irq_info->dsisr; in cxl_irq_psl9() 39 dar = irq_info->dar; in cxl_irq_psl9() 52 irq_info->errstat); in cxl_irq_psl9() 54 pr_devel("CXL interrupt: AFU Error 0x%016llx\n", irq_info->afu_err); in cxl_irq_psl9() 65 ctx->pe, irq_info->afu_err); in cxl_irq_psl9() 68 ctx->afu_err = irq_info->afu_err; in cxl_irq_psl9() 85 irqreturn_t cxl_irq_psl8(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info) in cxl_irq_psl8() argument 89 dsisr = irq_info->dsisr; in cxl_irq_psl8() 90 dar = irq_info->dar; in cxl_irq_psl8() [all …]
|
H A D | native.c | 1159 irqreturn_t cxl_fail_irq_psl(struct cxl_afu *afu, struct cxl_irq_info *irq_info) in cxl_fail_irq_psl() argument 1161 if (cxl_is_translation_fault(afu, irq_info->dsisr)) in cxl_fail_irq_psl() 1173 struct cxl_irq_info irq_info; in native_irq_multiplexed() local 1186 if ((res = native_get_irq_info(afu, &irq_info))) { in native_irq_multiplexed() 1189 return afu->adapter->native->sl_ops->fail_irq(afu, &irq_info); in native_irq_multiplexed() 1197 ret = afu->adapter->native->sl_ops->handle_interrupt(irq, ctx, &irq_info); in native_irq_multiplexed() 1205 " with outstanding transactions?)\n", ph, irq_info.dsisr, in native_irq_multiplexed() 1206 irq_info.dar); in native_irq_multiplexed() 1208 ret = afu->adapter->native->sl_ops->fail_irq(afu, &irq_info); in native_irq_multiplexed()
|
H A D | cxl.h | 634 irqreturn_t (*handle_interrupt)(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info); 635 irqreturn_t (*fail_irq)(struct cxl_afu *afu, struct cxl_irq_info *irq_info); 1012 irqreturn_t cxl_irq_psl9(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info); 1013 irqreturn_t cxl_irq_psl8(int irq, struct cxl_context *ctx, struct cxl_irq_info *irq_info); 1014 irqreturn_t cxl_fail_irq_psl(struct cxl_afu *afu, struct cxl_irq_info *irq_info);
|
/openbmc/qemu/hw/mips/ |
H A D | loongson3_bootp.c | 79 struct irq_source_routing_table *irq_info = g_irq_source; in init_irq_source() local 81 irq_info->node_id = cpu_to_le32(0); in init_irq_source() 82 irq_info->PIC_type = cpu_to_le32(0); in init_irq_source() 83 irq_info->dma_mask_bits = cpu_to_le16(64); in init_irq_source() 84 irq_info->pci_mem_start_addr = cpu_to_le64(virt_memmap[VIRT_PCIE_MMIO].base); in init_irq_source() 85 irq_info->pci_mem_end_addr = cpu_to_le64(virt_memmap[VIRT_PCIE_MMIO].base + in init_irq_source() 87 irq_info->pci_io_start_addr = cpu_to_le64(virt_memmap[VIRT_PCIE_PIO].base); in init_irq_source()
|
/openbmc/u-boot/arch/x86/include/asm/ |
H A D | pirq_routing.h | 27 struct __packed irq_info { struct 50 struct irq_info slots[CONFIG_IRQ_SLOT_COUNT]; argument 63 return (rt->size - 32) / sizeof(struct irq_info); in get_irq_slot_count() 126 void pirq_route_irqs(struct udevice *dev, struct irq_info *irq, int num);
|
/openbmc/qemu/hw/vfio/ |
H A D | ap.c | 80 g_autofree struct vfio_irq_info *irq_info = NULL; in vfio_ap_register_irq_notifier() local 99 argsz = sizeof(*irq_info); in vfio_ap_register_irq_notifier() 100 irq_info = g_malloc0(argsz); in vfio_ap_register_irq_notifier() 101 irq_info->index = irq; in vfio_ap_register_irq_notifier() 102 irq_info->argsz = argsz; in vfio_ap_register_irq_notifier() 105 irq_info) < 0 || irq_info->count < 1) { in vfio_ap_register_irq_notifier()
|
H A D | ccw.c | 387 g_autofree struct vfio_irq_info *irq_info = NULL; in vfio_ccw_register_irq_notifier() local 417 argsz = sizeof(*irq_info); in vfio_ccw_register_irq_notifier() 418 irq_info = g_malloc0(argsz); in vfio_ccw_register_irq_notifier() 419 irq_info->index = irq; in vfio_ccw_register_irq_notifier() 420 irq_info->argsz = argsz; in vfio_ccw_register_irq_notifier() 422 irq_info) < 0 || irq_info->count < 1) { in vfio_ccw_register_irq_notifier()
|
H A D | pci.c | 1557 struct vfio_irq_info irq_info = { .argsz = sizeof(irq_info), in vfio_msix_early_setup() local 1595 ret = ioctl(vdev->vbasedev.fd, VFIO_DEVICE_GET_IRQ_INFO, &irq_info); in vfio_msix_early_setup() 1602 msix->noresize = !!(irq_info.flags & VFIO_IRQ_INFO_NORESIZE); in vfio_msix_early_setup() 2735 struct vfio_irq_info irq_info = { .argsz = sizeof(irq_info) }; in vfio_populate_device() local 2796 irq_info.index = VFIO_PCI_ERR_IRQ_INDEX; in vfio_populate_device() 2798 ret = ioctl(vdev->vbasedev.fd, VFIO_DEVICE_GET_IRQ_INFO, &irq_info); in vfio_populate_device() 2802 } else if (irq_info.count == 1) { in vfio_populate_device() 2910 struct vfio_irq_info irq_info = { .argsz = sizeof(irq_info), in vfio_register_req_notifier() local 2920 VFIO_DEVICE_GET_IRQ_INFO, &irq_info) < 0 || irq_info.count < 1) { in vfio_register_req_notifier()
|
/openbmc/linux/drivers/virt/acrn/ |
H A D | hsm.c | 114 struct acrn_ptdev_irq *irq_info; in acrn_dev_ioctl() local 304 irq_info = memdup_user((void __user *)ioctl_param, in acrn_dev_ioctl() 306 if (IS_ERR(irq_info)) in acrn_dev_ioctl() 307 return PTR_ERR(irq_info); in acrn_dev_ioctl() 309 ret = hcall_set_ptdev_intr(vm->vmid, virt_to_phys(irq_info)); in acrn_dev_ioctl() 313 kfree(irq_info); in acrn_dev_ioctl() 316 irq_info = memdup_user((void __user *)ioctl_param, in acrn_dev_ioctl() 318 if (IS_ERR(irq_info)) in acrn_dev_ioctl() 319 return PTR_ERR(irq_info); in acrn_dev_ioctl() 321 ret = hcall_reset_ptdev_intr(vm->vmid, virt_to_phys(irq_info)); in acrn_dev_ioctl() [all...] |
/openbmc/linux/drivers/staging/media/atomisp/pci/hive_isp_css_common/host/ |
H A D | irq.c | 297 virq_get_channel_signals(struct virq_info *irq_info) in virq_get_channel_signals() argument 302 assert(irq_info); in virq_get_channel_signals() 314 irq_info->irq_status_reg[ID] |= irq_data; in virq_get_channel_signals() 326 void virq_clear_info(struct virq_info *irq_info) in virq_clear_info() argument 330 assert(irq_info); in virq_clear_info() 333 irq_info->irq_status_reg[ID] = 0; in virq_clear_info()
|
/openbmc/u-boot/arch/x86/cpu/ |
H A D | irq.c | 121 static struct irq_info *check_dup_entry(struct irq_info *slot_base, in check_dup_entry() 124 struct irq_info *slot = slot_base; in check_dup_entry() 136 static inline void fill_irq_info(struct irq_router *priv, struct irq_info *slot, in fill_irq_info() 154 struct irq_info *slot, *slot_base; in create_pirq_routing_table() 308 rt->size = irq_entries * sizeof(struct irq_info) + 32; in create_pirq_routing_table()
|
/openbmc/linux/drivers/staging/media/atomisp/pci/hive_isp_css_include/host/ |
H A D | irq_public.h | 154 void virq_clear_info(struct virq_info *irq_info); 181 virq_get_channel_signals(struct virq_info *irq_info);
|
/openbmc/linux/drivers/platform/mellanox/ |
H A D | mlxbf-tmfifo.c | 200 struct mlxbf_tmfifo_irq_info irq_info[MLXBF_TM_MAX_IRQ]; member 308 irq = fifo->irq_info[i].irq; in mlxbf_tmfifo_disable_irqs() 309 fifo->irq_info[i].irq = 0; in mlxbf_tmfifo_disable_irqs() 317 struct mlxbf_tmfifo_irq_info *irq_info = arg; in mlxbf_tmfifo_irq_handler() local 319 if (!test_and_set_bit(irq_info->index, &irq_info->fifo->pend_events)) in mlxbf_tmfifo_irq_handler() 320 schedule_work(&irq_info->fifo->work); in mlxbf_tmfifo_irq_handler() 941 !fifo->irq_info[irq_id].irq) in mlxbf_tmfifo_work_rxtx() 1385 fifo->irq_info[i].index = i; in mlxbf_tmfifo_probe() 1386 fifo->irq_info[i].fifo = fifo; in mlxbf_tmfifo_probe() 1387 fifo->irq_info[i].irq = platform_get_irq(pdev, i); in mlxbf_tmfifo_probe() [all …]
|
/openbmc/linux/arch/x86/include/asm/ |
H A D | pci_x86.h | 74 struct irq_info { struct 97 struct irq_info slots[]; argument 106 struct irq_info slots[];
|
/openbmc/linux/drivers/staging/media/atomisp/pci/ |
H A D | isp2400_input_system_public.h | 112 const rx_irq_info_t irq_info); 136 const rx_irq_info_t irq_info);
|
/openbmc/linux/arch/x86/pci/ |
H A D | irq.c | 213 struct irq_info *e; in pirq_peer_trick() 216 for (i = 0; i < (rt->size - sizeof(struct irq_routing_table)) / sizeof(struct irq_info); i++) { in pirq_peer_trick() 1344 static struct irq_info *pirq_get_dev_info(struct pci_dev *dev) in pirq_get_dev_info() 1348 sizeof(struct irq_info); in pirq_get_dev_info() 1349 struct irq_info *slotinfo = NULL; in pirq_get_dev_info() 1350 struct irq_info *info; in pirq_get_dev_info() 1369 static struct irq_info *pirq_get_info(struct pci_dev *dev, u8 *pin) in pirq_get_info() 1372 struct irq_info *info; in pirq_get_info() 1396 struct irq_info *info; in pcibios_lookup_irq()
|
H A D | pcbios.c | 349 struct irq_info *table; 365 opt.table = (struct irq_info *) page; in pcibios_get_irq_routing_table()
|
/openbmc/qemu/util/ |
H A D | vfio-helpers.c | 202 struct vfio_irq_info irq_info = { .argsz = sizeof(irq_info) }; in qemu_vfio_pci_init_irq() local 204 irq_info.index = irq_type; in qemu_vfio_pci_init_irq() 205 if (ioctl(s->device, VFIO_DEVICE_GET_IRQ_INFO, &irq_info)) { in qemu_vfio_pci_init_irq() 209 if (!(irq_info.flags & VFIO_IRQ_INFO_EVENTFD)) { in qemu_vfio_pci_init_irq() 221 .index = irq_info.index, in qemu_vfio_pci_init_irq()
|
/openbmc/linux/samples/vfio-mdev/ |
H A D | mtty.c | 1174 static int mtty_get_irq_info(struct vfio_irq_info *irq_info) in mtty_get_irq_info() argument 1176 if (irq_info->index != VFIO_PCI_INTX_IRQ_INDEX && in mtty_get_irq_info() 1177 irq_info->index != VFIO_PCI_MSI_IRQ_INDEX) in mtty_get_irq_info() 1180 irq_info->flags = VFIO_IRQ_INFO_EVENTFD; in mtty_get_irq_info() 1181 irq_info->count = 1; in mtty_get_irq_info() 1183 if (irq_info->index == VFIO_PCI_INTX_IRQ_INDEX) in mtty_get_irq_info() 1184 irq_info->flags |= VFIO_IRQ_INFO_MASKABLE | in mtty_get_irq_info() 1187 irq_info->flags |= VFIO_IRQ_INFO_NORESIZE; in mtty_get_irq_info()
|
/openbmc/linux/drivers/tty/serial/8250/ |
H A D | 8250_core.c | 84 struct irq_info { struct 111 struct irq_info *i = dev_id; in serial8250_interrupt() argument 153 static void serial_do_unlink(struct irq_info *i, struct uart_8250_port *up) in serial_do_unlink() 176 struct irq_info *i; in serial_link_irq_chain() 188 i = kzalloc(sizeof(struct irq_info), GFP_KERNEL); in serial_link_irq_chain() 221 struct irq_info *i; in serial_unlink_irq_chain()
|
/openbmc/u-boot/arch/x86/lib/ |
H A D | pirq_routing.c | 52 void pirq_route_irqs(struct udevice *dev, struct irq_info *irq, int num) in pirq_route_irqs()
|