Lines Matching refs:intrs

49 typedef struct intrs {  struct
87 add_interrupt(intrs_t *intrs, int irq) in add_interrupt() argument
90 for (uint_t i = 0; i < intrs->i_num; i++) { in add_interrupt()
91 if (intrs->i_intrs[i] == irq) in add_interrupt()
106 if (intrs->i_num == intrs->i_alloc) { in add_interrupt()
107 uint_t newlen = intrs->i_alloc + ACPI_ISA_LIMIT; in add_interrupt()
109 size_t oldsz = intrs->i_alloc * sizeof (int); in add_interrupt()
112 if (intrs->i_num > 0) { in add_interrupt()
113 bcopy(intrs->i_intrs, newar, oldsz); in add_interrupt()
114 kmem_free(intrs->i_intrs, oldsz); in add_interrupt()
117 intrs->i_intrs = newar; in add_interrupt()
118 intrs->i_alloc = newlen; in add_interrupt()
121 intrs->i_intrs[intrs->i_num++] = irq; in add_interrupt()
177 parse_resources_irq(ACPI_RESOURCE *resource_ptr, intrs_t *intrs) in parse_resources_irq() argument
184 add_interrupt(intrs, irq); in parse_resources_irq()
195 parse_resources_extended_irq(ACPI_RESOURCE *resource_ptr, intrs_t *intrs) in parse_resources_extended_irq() argument
217 add_interrupt(intrs, irq); in parse_resources_extended_irq()
530 intrs_t intrs = { 0 }; in parse_resources() local
594 parse_resources_irq(resource_ptr, &intrs); in parse_resources()
624 parse_resources_extended_irq(resource_ptr, &intrs); in parse_resources()
645 intrs.i_num = 0; in parse_resources()
646 add_interrupt(&intrs, 0x1); in parse_resources()
647 add_interrupt(&intrs, 0xc); in parse_resources()
658 if (intrs.i_num > 0) { in parse_resources()
661 "interrupts", intrs.i_intrs, intrs.i_num); in parse_resources()
663 kmem_free(intrs.i_intrs, intrs.i_alloc * sizeof (int)); in parse_resources()