Lines Matching refs:irq

183 s3c24x0_enable_ext_intr(unsigned int irq)
188 if (irq <= 7) {
190 offset = irq * 2;
191 } else if (irq <= 23) {
193 offset = (irq - 8) * 2;
211 int error, irq;
218 for (irq = rman_get_start(ires); irq <= rman_get_end(ires); irq++) {
219 if (irq >= S3C24X0_EXTIRQ_MIN && irq <= S3C24X0_EXTIRQ_MAX) {
221 s3c24x0_enable_ext_intr(irq - S3C24X0_EXTIRQ_MIN);
223 arm_unmask_irq(irq);
236 s3c24x0_config_intr(device_t dev, int irq, enum intr_trigger trig,
243 if (irq < S3C24X0_EXTIRQ_MIN || irq > S3C24X0_EXTIRQ_MAX)
250 irq -= S3C24X0_EXTIRQ_MIN;
264 if (irq <= 7) {
266 offset = irq * 4;
267 } else if (irq <= 15) {
269 offset = (irq - 8) * 4;
270 } else if (irq <= 23) {
272 offset = (irq - 16) * 4;
313 * When allocating an irq with children irq's really
665 int irq, subirq;
667 if ((irq = bus_space_read_4(&s3c2xx0_bs_tag,
678 switch (irq) {
690 return (irq);
694 /* Clear the sub irq pending bit */
704 return (irq);
713 return S3C24X0_INT_EXT(irq);
724 return (irq);
728 /* Clear the external irq pending bit */
736 return (irq);
742 arm_mask_irq(uintptr_t irq)
746 if (irq >= S3C24X0_INT_EXT(0) && irq <= S3C24X0_INT_EXT(3)) {
747 /* External interrupt 0..3 are directly mapped to irq 0..3 */
748 irq -= S3C24X0_EXTIRQ_MIN;
750 if (irq < S3C24X0_SUBIRQ_MIN) {
753 mask |= (1 << irq);
756 } else if (irq < S3C24X0_EXTIRQ_MIN) {
759 mask |= (1 << (irq - S3C24X0_SUBIRQ_MIN));
765 mask |= (1 << (irq - S3C24X0_EXTIRQ_MIN));
772 arm_unmask_irq(uintptr_t irq)
776 if (irq >= S3C24X0_INT_EXT(0) && irq <= S3C24X0_INT_EXT(3)) {
777 /* External interrupt 0..3 are directly mapped to irq 0..3 */
778 irq -= S3C24X0_EXTIRQ_MIN;
780 if (irq < S3C24X0_SUBIRQ_MIN) {
783 mask &= ~(1 << irq);
786 } else if (irq < S3C24X0_EXTIRQ_MIN) {
789 mask &= ~(1 << (irq - S3C24X0_SUBIRQ_MIN));
795 mask &= ~(1 << (irq - S3C24X0_EXTIRQ_MIN));