Lines Matching refs:ipi
134 intr_ipi_lookup(u_int ipi)
137 if (ipi >= INTR_IPI_COUNT)
138 panic("%s: no such IPI %u", __func__, ipi);
140 return (&ipi_sources[ipi]);
144 intr_ipi_dispatch(u_int ipi, struct trapframe *tf)
149 ii = intr_ipi_lookup(ipi);
151 panic("%s: not setup IPI %u", __func__, ipi);
156 * Supply ipi filter with trapframe argument
164 intr_ipi_send(cpuset_t cpus, u_int ipi)
168 ii = intr_ipi_lookup(ipi);
170 panic("%s: not setup IPI %u", __func__, ipi);
172 ii->ii_send(ii->ii_send_arg, cpus, ipi);
176 intr_ipi_setup(u_int ipi, const char *name, intr_ipi_handler_t *hand,
181 ii = intr_ipi_lookup(ipi);
183 KASSERT(hand != NULL, ("%s: ipi %u no handler", __func__, ipi));
184 KASSERT(send != NULL, ("%s: ipi %u no sender", __func__, ipi));
185 KASSERT(ii->ii_count == NULL, ("%s: ipi %u reused", __func__, ipi));
199 pic_ipi_send(void *arg, cpuset_t cpus, u_int ipi)
203 PIC_IPI_SEND(intr_irq_root_dev, arg, cpus, ipi);
212 intr_pic_ipi_setup(u_int ipi, const char *name, intr_ipi_handler_t *hand,
220 error = PIC_IPI_SETUP(intr_irq_root_dev, ipi, &isrc);
225 intr_ipi_setup(ipi, name, hand, arg, pic_ipi_send, isrc);