Replace NVIC APIs with vIRQ ones

Alessandro Angelino 2016-04-06 16:15:16 +01:00 committed by Milosch Meriac
parent 3ad0f0a430
commit 057bc9a98a
4 changed files with 19 additions and 19 deletions

View File

@ -89,7 +89,7 @@ static inline void INT_SYS_EnableIRQ(IRQn_Type irqNumber)
assert(irqNumber <= FSL_FEATURE_INTERRUPT_IRQ_MAX); assert(irqNumber <= FSL_FEATURE_INTERRUPT_IRQ_MAX);
/* call core API to enable the IRQ*/ /* call core API to enable the IRQ*/
NVIC_EnableIRQ(irqNumber); vIRQ_EnableIRQ(irqNumber);
} }
/*! /*!
@ -108,7 +108,7 @@ static inline void INT_SYS_DisableIRQ(IRQn_Type irqNumber)
assert(irqNumber <= FSL_FEATURE_INTERRUPT_IRQ_MAX); assert(irqNumber <= FSL_FEATURE_INTERRUPT_IRQ_MAX);
/* call core API to disable the IRQ*/ /* call core API to disable the IRQ*/
NVIC_DisableIRQ(irqNumber); vIRQ_DisableIRQ(irqNumber);
} }
/*! /*!

View File

@ -118,8 +118,8 @@ int gpio_irq_init(gpio_irq_t *obj, PinName pin, gpio_irq_handler handler, uint32
error("gpio_irq only supported on port A-E."); error("gpio_irq only supported on port A-E.");
break; break;
} }
NVIC_SetVector(irq_n, vector); vIRQ_SetVector(irq_n, vector);
NVIC_EnableIRQ(irq_n); vIRQ_EnableIRQ(irq_n);
obj->ch = ch_base + obj->pin; obj->ch = ch_base + obj->pin;
channel_ids[obj->ch] = id; channel_ids[obj->ch] = id;
@ -175,19 +175,19 @@ void gpio_irq_set(gpio_irq_t *obj, gpio_irq_event event, uint32_t enable) {
void gpio_irq_enable(gpio_irq_t *obj) { void gpio_irq_enable(gpio_irq_t *obj) {
switch (obj->port) { switch (obj->port) {
case PortA: case PortA:
NVIC_EnableIRQ(PORTA_IRQn); vIRQ_EnableIRQ(PORTA_IRQn);
break; break;
case PortB: case PortB:
NVIC_EnableIRQ(PORTB_IRQn); vIRQ_EnableIRQ(PORTB_IRQn);
break; break;
case PortC: case PortC:
NVIC_EnableIRQ(PORTC_IRQn); vIRQ_EnableIRQ(PORTC_IRQn);
break; break;
case PortD: case PortD:
NVIC_EnableIRQ(PORTD_IRQn); vIRQ_EnableIRQ(PORTD_IRQn);
break; break;
case PortE: case PortE:
NVIC_EnableIRQ(PORTE_IRQn); vIRQ_EnableIRQ(PORTE_IRQn);
break; break;
} }
} }
@ -195,19 +195,19 @@ void gpio_irq_enable(gpio_irq_t *obj) {
void gpio_irq_disable(gpio_irq_t *obj) { void gpio_irq_disable(gpio_irq_t *obj) {
switch (obj->port) { switch (obj->port) {
case PortA: case PortA:
NVIC_DisableIRQ(PORTA_IRQn); vIRQ_DisableIRQ(PORTA_IRQn);
break; break;
case PortB: case PortB:
NVIC_DisableIRQ(PORTB_IRQn); vIRQ_DisableIRQ(PORTB_IRQn);
break; break;
case PortC: case PortC:
NVIC_DisableIRQ(PORTC_IRQn); vIRQ_DisableIRQ(PORTC_IRQn);
break; break;
case PortD: case PortD:
NVIC_DisableIRQ(PORTD_IRQn); vIRQ_DisableIRQ(PORTD_IRQn);
break; break;
case PortE: case PortE:
NVIC_DisableIRQ(PORTE_IRQn); vIRQ_DisableIRQ(PORTE_IRQn);
break; break;
} }
} }

View File

@ -164,8 +164,8 @@ void serial_irq_set(serial_t *obj, SerialIrq irq, uint32_t enable) {
case RxIrq: UART_HAL_SetRxDataRegFullIntCmd(uart_addrs[obj->index], true); break; case RxIrq: UART_HAL_SetRxDataRegFullIntCmd(uart_addrs[obj->index], true); break;
case TxIrq: UART_HAL_SetTxDataRegEmptyIntCmd(uart_addrs[obj->index], true); break; case TxIrq: UART_HAL_SetTxDataRegEmptyIntCmd(uart_addrs[obj->index], true); break;
} }
NVIC_SetVector(irq_n, vector); vIRQ_SetVector(irq_n, vector);
NVIC_EnableIRQ(irq_n); vIRQ_EnableIRQ(irq_n);
} else { // disable } else { // disable
int all_disabled = 0; int all_disabled = 0;
@ -179,7 +179,7 @@ void serial_irq_set(serial_t *obj, SerialIrq irq, uint32_t enable) {
case TxIrq: all_disabled = UART_HAL_GetTxDataRegEmptyIntCmd(uart_addrs[obj->index]) == 0; break; case TxIrq: all_disabled = UART_HAL_GetTxDataRegEmptyIntCmd(uart_addrs[obj->index]) == 0; break;
} }
if (all_disabled) if (all_disabled)
NVIC_DisableIRQ(irq_n); vIRQ_DisableIRQ(irq_n);
} }
} }

View File

@ -44,8 +44,8 @@ void us_ticker_init(void) {
//Ticker //Ticker
PIT_HAL_SetTimerPeriodByCount(PIT_BASE, 2, busClock / 1000000 - 1); PIT_HAL_SetTimerPeriodByCount(PIT_BASE, 2, busClock / 1000000 - 1);
PIT_HAL_SetTimerChainCmd(PIT_BASE, 3, true); PIT_HAL_SetTimerChainCmd(PIT_BASE, 3, true);
NVIC_SetVector(PIT3_IRQn, (uint32_t)us_ticker_irq_handler); vIRQ_SetVector(PIT3_IRQn, (uint32_t)us_ticker_irq_handler);
NVIC_EnableIRQ(PIT3_IRQn); vIRQ_EnableIRQ(PIT3_IRQn);
} }