Lines Matching defs:opic
140 opic_isu_from_irq(struct openpic_ops *opic, int irq, int *realirq)
144 for (i=0; i < opic->nrofisus; i++) {
145 if (irq < opic->irq_per[i]) {
149 irq -= opic->irq_per[i];
155 distopic_read(struct openpic_ops *opic, int isu, int offset)
157 volatile unsigned char *addr = opic->isu[isu] + offset;
163 distopic_write(struct openpic_ops *opic, int isu, int offset, u_int val)
165 volatile unsigned char *addr = opic->isu[isu] + offset;
173 struct openpic_ops *opic = (struct openpic_ops *)pic;
177 isu = opic_isu_from_irq(opic, irq, &realirq);
195 distopic_write(opic, isu, OPENPIC_DSRC_VECTOR_OFFSET(realirq), x);
204 struct openpic_ops *opic = (struct openpic_ops *)pic;
208 isu = opic_isu_from_irq(opic, irq, &realirq);
210 x = distopic_read(opic, isu, OPENPIC_DSRC_VECTOR_OFFSET(realirq));
212 distopic_write(opic, isu, OPENPIC_DSRC_VECTOR_OFFSET(realirq), x);
218 struct openpic_ops *opic = (struct openpic_ops *)pic;
222 isu = opic_isu_from_irq(opic, irq, &realirq);
224 x = distopic_read(opic, isu, OPENPIC_DSRC_VECTOR_OFFSET(realirq));
226 distopic_write(opic, isu, OPENPIC_DSRC_VECTOR_OFFSET(realirq), x);
232 struct openpic_ops *opic = (struct openpic_ops *)pic;
242 for (i=0; i < opic->nrofisus; i++) {
243 for (irq = 0; irq < opic->irq_per[i]; irq++) {
244 distopic_write(opic, i, OPENPIC_DSRC_IDEST_OFFSET(irq),