Add GCC ARM Cortex-M4F MPU port.

Add RVDS ARM Cortex-M4F MPU port.
Increase the size of each buffer allocated to pbufs in the Microblaze lwIP demo to prevent pbufs chaining.
Use _start as the top of the stack for each Microblaze task, rather than NULL, as NULL was causing the Xilinx SDK to try and unwind the stack too far.
This commit is contained in:
Richard Barry 2016-05-18 10:41:28 +00:00
parent fedb98c5f6
commit ee9cd40b6d
10 changed files with 2365 additions and 2671 deletions

View file

@ -384,7 +384,17 @@ BaseType_t xPortStartScheduler( void )
uxCriticalNesting = 0;
/* Start the first task. */
__asm volatile( " svc %0 \n"
__asm volatile(
" ldr r0, =0xE000ED08 \n" /* Use the NVIC offset register to locate the stack. */
" ldr r0, [r0] \n"
" ldr r0, [r0] \n"
" msr msp, r0 \n" /* Set the msp back to the start of the stack. */
" cpsie i \n" /* Globally enable interrupts. */
" cpsie f \n"
" dsb \n"
" isb \n"
" svc %0 \n" /* System call to start first task. */
" nop \n"
:: "i" (portSVC_START_SCHEDULER) );
/* Should not get here! */