vint_desc 107 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_vint_desc *vint_desc; vint_desc 113 drivers/irqchip/irq-ti-sci-inta.c vint_desc = irq_desc_get_handler_data(desc); vint_desc 114 drivers/irqchip/irq-ti-sci-inta.c domain = vint_desc->domain; vint_desc 119 drivers/irqchip/irq-ti-sci-inta.c val = readq_relaxed(inta->base + vint_desc->vint_id * 0x1000 + vint_desc 123 drivers/irqchip/irq-ti-sci-inta.c virq = irq_find_mapping(domain, vint_desc->events[bit].hwirq); vint_desc 140 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_vint_desc *vint_desc; vint_desc 149 drivers/irqchip/irq-ti-sci-inta.c vint_desc = kzalloc(sizeof(*vint_desc), GFP_KERNEL); vint_desc 150 drivers/irqchip/irq-ti-sci-inta.c if (!vint_desc) vint_desc 153 drivers/irqchip/irq-ti-sci-inta.c vint_desc->domain = domain; vint_desc 154 drivers/irqchip/irq-ti-sci-inta.c vint_desc->vint_id = vint_id; vint_desc 155 drivers/irqchip/irq-ti-sci-inta.c INIT_LIST_HEAD(&vint_desc->list); vint_desc 160 drivers/irqchip/irq-ti-sci-inta.c parent_fwspec.param[1] = vint_desc->vint_id; vint_desc 164 drivers/irqchip/irq-ti-sci-inta.c kfree(vint_desc); vint_desc 167 drivers/irqchip/irq-ti-sci-inta.c vint_desc->parent_virq = parent_virq; vint_desc 169 drivers/irqchip/irq-ti-sci-inta.c list_add_tail(&vint_desc->list, &inta->vint_list); vint_desc 170 drivers/irqchip/irq-ti-sci-inta.c irq_set_chained_handler_and_data(vint_desc->parent_virq, vint_desc 171 drivers/irqchip/irq-ti-sci-inta.c ti_sci_inta_irq_handler, vint_desc); vint_desc 173 drivers/irqchip/irq-ti-sci-inta.c return vint_desc; vint_desc 184 drivers/irqchip/irq-ti-sci-inta.c static struct ti_sci_inta_event_desc *ti_sci_inta_alloc_event(struct ti_sci_inta_vint_desc *vint_desc, vint_desc 188 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_irq_domain *inta = vint_desc->domain->host_data; vint_desc 196 drivers/irqchip/irq-ti-sci-inta.c event_desc = &vint_desc->events[free_bit]; vint_desc 206 drivers/irqchip/irq-ti-sci-inta.c vint_desc->vint_id, vint_desc 233 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_vint_desc *vint_desc = NULL; vint_desc 238 drivers/irqchip/irq-ti-sci-inta.c list_for_each_entry(vint_desc, &inta->vint_list, list) { vint_desc 239 drivers/irqchip/irq-ti-sci-inta.c free_bit = find_first_zero_bit(vint_desc->event_map, vint_desc 242 drivers/irqchip/irq-ti-sci-inta.c set_bit(free_bit, vint_desc->event_map); vint_desc 248 drivers/irqchip/irq-ti-sci-inta.c vint_desc = ti_sci_inta_alloc_parent_irq(domain); vint_desc 249 drivers/irqchip/irq-ti-sci-inta.c if (IS_ERR(vint_desc)) { vint_desc 251 drivers/irqchip/irq-ti-sci-inta.c return ERR_PTR(PTR_ERR(vint_desc)); vint_desc 254 drivers/irqchip/irq-ti-sci-inta.c free_bit = find_first_zero_bit(vint_desc->event_map, vint_desc 256 drivers/irqchip/irq-ti-sci-inta.c set_bit(free_bit, vint_desc->event_map); vint_desc 259 drivers/irqchip/irq-ti-sci-inta.c event_desc = ti_sci_inta_alloc_event(vint_desc, free_bit, hwirq); vint_desc 261 drivers/irqchip/irq-ti-sci-inta.c clear_bit(free_bit, vint_desc->event_map); vint_desc 273 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_vint_desc *vint_desc) vint_desc 275 drivers/irqchip/irq-ti-sci-inta.c if (find_first_bit(vint_desc->event_map, MAX_EVENTS_PER_VINT) == MAX_EVENTS_PER_VINT) { vint_desc 276 drivers/irqchip/irq-ti-sci-inta.c list_del(&vint_desc->list); vint_desc 277 drivers/irqchip/irq-ti-sci-inta.c ti_sci_release_resource(inta->vint, vint_desc->vint_id); vint_desc 278 drivers/irqchip/irq-ti-sci-inta.c irq_dispose_mapping(vint_desc->parent_virq); vint_desc 279 drivers/irqchip/irq-ti-sci-inta.c kfree(vint_desc); vint_desc 291 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_vint_desc *vint_desc; vint_desc 294 drivers/irqchip/irq-ti-sci-inta.c vint_desc = to_vint_desc(event_desc, event_desc->vint_bit); vint_desc 295 drivers/irqchip/irq-ti-sci-inta.c inta = vint_desc->domain->host_data; vint_desc 302 drivers/irqchip/irq-ti-sci-inta.c vint_desc->vint_id, vint_desc 306 drivers/irqchip/irq-ti-sci-inta.c clear_bit(event_desc->vint_bit, vint_desc->event_map); vint_desc 311 drivers/irqchip/irq-ti-sci-inta.c ti_sci_inta_free_parent_irq(inta, vint_desc); vint_desc 362 drivers/irqchip/irq-ti-sci-inta.c struct ti_sci_inta_vint_desc *vint_desc; vint_desc 366 drivers/irqchip/irq-ti-sci-inta.c vint_desc = to_vint_desc(event_desc, event_desc->vint_bit); vint_desc 370 drivers/irqchip/irq-ti-sci-inta.c inta->base + vint_desc->vint_id * 0x1000 + offset);