MIPS PIC32MZ

Detailed Description

Files

file  mips_pic32mz/include/cpu.h
 main CPU definitions for pic32mz devices.
 
file  cpu/mips_pic32mz/include/cpu_conf.h
 CPU definitions for pic32mz devices.
 

Macros

#define FLASH_XIP   (1)
 We run from flash on PIC32.
 

Functions

static void cpu_print_last_instruction (void)
 Print the last instruction's address. More...
 
#define THREAD_EXTRA_STACKSIZE_PRINTF   (1024)
 Configuration of default stack sizes. More...
 
#define THREAD_STACKSIZE_DEFAULT   (2048)
 
#define THREAD_STACKSIZE_IDLE   (512 + THREAD_EXTRA_STACKSIZE_PRINTF)
 

Macro Definition Documentation

◆ THREAD_EXTRA_STACKSIZE_PRINTF

#define THREAD_EXTRA_STACKSIZE_PRINTF   (1024)

printf takes a pretty tortured route through the C lib then via UHI syscall exception to end up at the UART driver.

When debugging timer code we get printfs on the idle threads stack which can easily blow its limits.

Note code must be compiled at -Os with these values, using -O0 you'll overflow these stacks.

NO ISR stack is in use yet, interrupt use the current running stack hence the big-ish default stack size.

Definition at line 48 of file cpu/mips_pic32mz/include/cpu_conf.h.

Function Documentation

◆ cpu_print_last_instruction()

static void cpu_print_last_instruction ( void  )
inlinestatic
Todo:
: Not supported

Definition at line 44 of file mips_pic32mz/include/cpu.h.