URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Subversion Repositories openrisc_2011-10-31
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/trunk/rtos/freertos-6.1.1/Demo/OpenRISC_SIM_GCC/serial
- from Rev 636 to Rev 649
- ↔ Reverse comparison
Rev 636 → Rev 649
/serial.c
105,15 → 105,9
Because FreeRTOS is not supposed to run with nested interrupts, put all OS |
calls in a critical section . */ |
|
/* FIXME, entering, exiting ciritical section around |
xQueueReceiveFromISR is not work */ |
#if 0 |
portENTER_CRITICAL(); |
retstatus = xQueueReceiveFromISR( xCharsForTx, &cChar, &xHigherPriorityTaskWoken ); |
portEXIT_CRITICAL(); |
#else |
/* entering, exiting ciritical section around xQueueReceiveFromISR is not |
required. OpenRISC automaticaly disable interrupt when expection occurs */ |
retstatus = xQueueReceiveFromISR( xCharsForTx, &cChar, &xHigherPriorityTaskWoken ); |
#endif |
|
if (retstatus == pdTRUE) |
{ |
135,10 → 129,9
cChar = uart_getc_noblock(0); |
|
/* Because FreeRTOS is not supposed to run with nested interrupts, put all OS |
calls in a critical section . */ |
portENTER_CRITICAL(); |
xQueueSendFromISR(xRxedChars, &cChar, &xHigherPriorityTaskWoken); |
portEXIT_CRITICAL(); |
calls in a critical section . but in case of OpenRISC, it is not required. Tick |
, External interrupt are automaticaly disabled. */ |
xQueueSendFromISR(xRxedChars, &cChar, &xHigherPriorityTaskWoken); |
} |
|
/* The return value will be used by portEXIT_SWITCHING_ISR() to know if it |