mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2026-01-22 01:30:31 -05:00
* Revert "Remove coroutines (#874)"
This reverts commit 569c78fd8c.
* Update freertos Kernel submodule to latest head
* Remove temporary files
* Fix MingW demos and spell check
* Fix manifest version; fix headers
* Add ignore files and paths to core-checker.py
* Fix copyright in remaining files
* Fix PR check build failure
1. Remove defining `inline` in Makefile. This was causing build
warnings.
2. Ensure that the linker removed unused functions from various
compilation units.
3. Update the linker script so that all the functions are correctly
placed in FLASH section.
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
---------
Signed-off-by: Gaurav Aggarwal <aggarg@amazon.com>
Co-authored-by: Gaurav Aggarwal <aggarg@amazon.com>
This commit is contained in:
parent
9ccae851e7
commit
1277ba1661
605 changed files with 11240 additions and 3628 deletions
|
|
@ -68,6 +68,9 @@ assembly files that include this header file. */
|
|||
#define configUSE_APPLICATION_TASK_TAG 0
|
||||
#define configUSE_COUNTING_SEMAPHORES 1
|
||||
|
||||
/* Co-routine definitions. */
|
||||
#define configUSE_CO_ROUTINES 0
|
||||
#define configMAX_CO_ROUTINE_PRIORITIES ( 2 )
|
||||
|
||||
/* Software timer definitions. */
|
||||
#define configUSE_TIMERS 1
|
||||
|
|
@ -101,9 +104,9 @@ to exclude the API function. */
|
|||
/* !!!! configMAX_SYSCALL_INTERRUPT_PRIORITY must not be set to zero !!!!
|
||||
See http://www.FreeRTOS.org/RTOS-Cortex-M3-M4.html. */
|
||||
#define configMAX_SYSCALL_INTERRUPT_PRIORITY ( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY << (8 - configPRIO_BITS) )
|
||||
|
||||
#define configASSERT( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }
|
||||
|
||||
|
||||
#define configASSERT( x ) if( ( x ) == 0 ) { taskDISABLE_INTERRUPTS(); for( ;; ); }
|
||||
|
||||
#define vPortSVCHandler SVC_Handler
|
||||
#define xPortPendSVHandler PendSV_Handler
|
||||
#define vPortSVCHandler SVC_Handler
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ void vParTestInitialise( void )
|
|||
/* Set to output. */
|
||||
FM3_GPIO->DDR1 |= 0xFFFF;
|
||||
FM3_GPIO->DDR3 |= 0xFFFF;
|
||||
|
||||
|
||||
/* Set as GPIO. */
|
||||
FM3_GPIO->PFR1 &= 0x0000;
|
||||
FM3_GPIO->PFR3 &= 0x0000;
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
/*
|
||||
BASIC INTERRUPT DRIVEN SERIAL PORT DRIVER FOR UART0.
|
||||
|
||||
|
||||
***Note*** This example uses queues to send each character into an interrupt
|
||||
service routine and out of an interrupt service routine individually. This
|
||||
is done to demonstrate queues being used in an interrupt, and to deliberately
|
||||
|
|
@ -81,7 +81,7 @@ xComPortHandle xSerialPortInitMinimal( unsigned long ulWantedBaud, unsigned port
|
|||
/* Create the queues used to hold Rx/Tx characters. */
|
||||
xRxedChars = xQueueCreate( uxQueueLength, ( unsigned portBASE_TYPE ) sizeof( signed char ) );
|
||||
xCharsForTx = xQueueCreate( uxQueueLength + 1, ( unsigned portBASE_TYPE ) sizeof( signed char ) );
|
||||
|
||||
|
||||
/* If the queues were created correctly then setup the serial port
|
||||
hardware. */
|
||||
if( ( xRxedChars != serINVALID_QUEUE ) && ( xCharsForTx != serINVALID_QUEUE ) )
|
||||
|
|
@ -89,41 +89,41 @@ xComPortHandle xSerialPortInitMinimal( unsigned long ulWantedBaud, unsigned port
|
|||
/* Ensure interrupts don't fire during the init process. Interrupts
|
||||
will be enabled automatically when the first task start running. */
|
||||
portDISABLE_INTERRUPTS();
|
||||
|
||||
|
||||
/* Configure P21 and P22 for use by the UART. */
|
||||
FM3_GPIO->PFR2 |= ( 1 << 0x01 ) | ( 1 << 0x02 );
|
||||
|
||||
|
||||
/* SIN0_0 and SOT0_0. */
|
||||
FM3_GPIO->EPFR07 |= ( 1 << 6 );
|
||||
|
||||
|
||||
/* Reset. */
|
||||
FM3_MFS0_UART->SCR = 0x80;
|
||||
|
||||
|
||||
/* Enable output in mode 0. */
|
||||
FM3_MFS0_UART->SMR = 0x01;
|
||||
|
||||
|
||||
/* Clear all errors that may already be present. */
|
||||
FM3_MFS0_UART->SSR = 0x00;
|
||||
FM3_MFS0_UART->ESCR = 0x00;
|
||||
|
||||
|
||||
FM3_MFS0_UART->BGR = ( configCPU_CLOCK_HZ / 2UL ) / ( ulWantedBaud - 1UL );
|
||||
|
||||
/* Enable Rx, Tx, and the Rx interrupt. */
|
||||
/* Enable Rx, Tx, and the Rx interrupt. */
|
||||
FM3_MFS0_UART->SCR |= ( serRX_ENABLE | serTX_ENABLE | serRX_INT_ENABLE );
|
||||
|
||||
|
||||
/* Configure the NVIC for UART interrupts. */
|
||||
NVIC_ClearPendingIRQ( MFS0RX_IRQn );
|
||||
NVIC_EnableIRQ( MFS0RX_IRQn );
|
||||
|
||||
|
||||
/* The priority *MUST* be at or below
|
||||
configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY as FreeRTOS API functions
|
||||
are called in the interrupt handler. */
|
||||
NVIC_SetPriority( MFS0RX_IRQn, configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY );
|
||||
|
||||
|
||||
/* Do the same for the Tx interrupts. */
|
||||
NVIC_ClearPendingIRQ( MFS0TX_IRQn );
|
||||
NVIC_EnableIRQ( MFS0TX_IRQn );
|
||||
|
||||
|
||||
/* The priority *MUST* be at or below
|
||||
configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY as FreeRTOS API functions
|
||||
are called in the interrupt handler. */
|
||||
|
|
@ -185,7 +185,7 @@ signed portBASE_TYPE xReturn;
|
|||
if( xQueueSend( xCharsForTx, &cOutChar, xBlockTime ) == pdPASS )
|
||||
{
|
||||
xReturn = pdPASS;
|
||||
|
||||
|
||||
/* Enable the UART Tx interrupt. */
|
||||
FM3_MFS0_UART->SCR |= serTX_INT_ENABLE;
|
||||
}
|
||||
|
|
@ -221,7 +221,7 @@ char cChar;
|
|||
handler task. */
|
||||
cChar = FM3_MFS0_UART->RDR;
|
||||
xQueueSendFromISR( xRxedChars, &cChar, &xHigherPriorityTaskWoken );
|
||||
}
|
||||
}
|
||||
|
||||
/* If sending or receiving from a queue has caused a task to unblock, and
|
||||
the unblocked task has a priority equal to or higher than the currently
|
||||
|
|
@ -252,8 +252,8 @@ char cChar;
|
|||
{
|
||||
/* Disable the Tx interrupt. */
|
||||
FM3_MFS0_UART->SCR &= ~serTX_INT_ENABLE;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* If sending or receiving from a queue has caused a task to unblock, and
|
||||
the unblocked task has a priority equal to or higher than the currently
|
||||
|
|
@ -268,4 +268,4 @@ char cChar;
|
|||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue