void hal_interrupt_mask(int vector) { #ifdef HAL_EXTENDED_INTERRUPT_MASK // Use platform specific handling, if defined // Note: this macro should do a 'return' for "extended" values of 'vector' // Normal vectors are handled by code subsequent to the macro call. HAL_EXTENDED_INTERRUPT_MASK(vector); #endif if (vector >= CYGNUM_HAL_INTERRUPT_GPIO2) { vector = CYGNUM_HAL_INTERRUPT_GPIO; } *PXA2X0_ICMR &= ~(1 << vector); }
void hal_interrupt_mask(int vector) { #ifdef HAL_EXTENDED_INTERRUPT_MASK // Use platform specific handling, if defined // Note: this macro should do a 'return' for "extended" values of 'vector' // Normal vectors are handled by code subsequent to the macro call. HAL_EXTENDED_INTERRUPT_MASK(vector); #endif #ifdef CYGOPT_HAL_ARM_XSCALE_PXA2X0_VARIANT_PXA27X if (vector >= 32 && vector < CYGNUM_HAL_INTERNAL_IRQS) { *PXA2X0_ICMR2 &= ~(1 << (vector - 32)); return; } #endif if (vector >= CYGNUM_HAL_INTERRUPT_GPIO(2)) { vector = CYGNUM_HAL_INTERRUPT_GPIOX; } *PXA2X0_ICMR &= ~(1 << vector); }