Software
The software, which normally refers to the application and driver source code, is compatible with the Sapphire SoC and the Sapphire high-performance SoC. However, you should know the discrepancies between the file structure and content.
- Obsolete and exclude legacy print functions.In Sapphire SoC, there are some legacy codes inherited from the very first version of SoC like Jade, Ruby, and Opal. These codes are excluded to keep cleaner and manageable code structures that deliver to customers. You should update your legacy UART print function to unified
bsp_printffunction. These functions include:bsp_printHex bsp_printHex_lower bsp_printHexDigit bsp_printHexByte bsp_printReg bsp_print - Obsolete old definitionThe old definition from legacy SoC like
BSP_MACHINE_TIMER,BSP_MACHINE_TIMER_HZ,machineTimer_setmp,machineTimer_getTime,machineTimer_uDelay,bsp_putString,configMTIME_BASE_ADDRESS,configMTIMECMP_BASE_ADDRESS,configCPU_CLOCK_HZ,BSP_LED_GPIO,BSP_LED_MASKhave been removed. - soc.h, freertosHalConfig.h, print.h, print_full.h, and semihosting.h moved from bsp/efinix/EfxSapphireSoc/app to bsp/efinix/EfxSapphireSoc/include folder.
- Every hardware definition for demo bsp/efinix/EfxSapphireSoc/app has been removed and replaced with userDef.h in the demo folder. The bsp/efinix/EfxSapphireSoc/app folder redefined to put the middleware like FATfs and LWIP.
- Demo folders are restructured and rearranged according to functionality. More demos are added to the folder compared to Sapphire SoC.
- The size region of the linker script that targets external memory is defaulted to 324KB.
- The JTAG clock frequency for debugging is defaulted to 6MHz.
- SoC on-chip RAM is not loaded with SPI flash bootloader by default, you need to compile the bootloader and configure the IP Manager with bootloader hex/bin you compiled.