List of Restructured BSP Files
When upgrading Sapphire SoC IP using Efinity software v2025.1, the following files are restructured.
Changes in software:
- Obsolete and exclusion of legacy print functions.
- Obsolete of old definition:The 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 is redefined to put the middleware like FatFs and LWIP.
Note: This feature is enabled by default. The BSP files are
restructured when you upgrade using the Efinity software
v2025.1, For backup purpose, the old embedded_sw/SapphireSoc
folder is backed up as embedded_sw/SapphireSoc_backup.
| Directory | Files/Folder | Changes |
|---|---|---|
| embedded_sw | config/ config_linux/ |
Removed. |
| embedded_sw/software | application
|
File Restructure. Note: spiReadFlashDemo,
spiWriteFlashDemo, and coreTimerInterrupt are no longer
supported. |
| embedded_sw/software/ freeRTOS/driver |
apb3_cl.h, clint.h, dmasg.h, asdefx_mmc_driver.h, efx_tse_mac.h, efx_tse_phy.h, gpio.h, i2c.h, io.h, mmc.h, plic.h, prescaler.h, riscv.h, spi.h, spiFlash.h, start.h, timer.h, type.h, uart.h, vexriscv.h | Removed. |
| bsp/efinix/EfxSapphireSoC/app | bootloaderConfig.h, core_portme.h,coremark.h, DDRCali_i2c.h, i2cDemo.h, i2cMcp4725.h, nestedInterruptDemo.h, print.h, print_full.h, sdHostDemo.h, semihosting.h, smpDemo.h, spiDemo.h, tseDemo.h, userTimerDemo.h, freertosHalConfig.h | Reallocated. Refer to Table 2. |
| bsp/efinix/EfxSapphireSoC/include | print.h, print_full.h, semihosting.h
|
Added. |
| bsp/efinix/EfxSapphireSoC/linker | freertos_i.ld freertos.ld |
Added. |
All hardware definitions for demo bsp/efinix/EfxSapphireSoC/app have been removed and replaced with userDef.h in the demo folder. The bsp/efinix/EfxSapphireSoC/app has been redefined to include the middleware such as FatFs and LWIP. Refer to the Table 2 for the location of the old header file.
| Original Path | Original File | Destination Path |
|---|---|---|
| bsp/efinix/ EfxSapphireSoC/app | freertosHalConfig.h | bsp/efinix/EfxSapphireSoc/include/ freertosHalConfig.h |
| print.h | bsp/efinix/EfxSapphireSoc/include/print.h | |
| print_full.h | bsp/efinix/EfxSapphireSoc/include/print_full.h | |
| semihosting.h | bsp/efinix/EfxSapphireSoc/include/ semihosting.h |
|
| bootloaderConfig.h | software/standalone/bootloader/src/ bootloaderConfig.h |
|
| coremark.h | software/standalone/application/coremark/ src/coremark.h
|
|
| core_portme.h | software/standalone/application/coremark/src/ core_portme.h |
|
| i2cDemo.h | software/standalone/i2c/i2cDemo/src/userDef.h | |
| smpDemo.h | software/standalone/smp/smpDemo/ src/userDef.h |
|
| spiDemo.h | software/standalone/smp/spiDemo/src/userDef.h | |
| nestedInterruptDemo.h | software/standalone/timer/ nestedInterruptDemo/src/userDef.h
|
|
| userTimerDemo.h | software/standalone/timer/userTimerDemo/src/ userDef.h |
|
| DDRCali_i2c.h | software/standalone/driver/DDRCali_i2c.h | |
| i2cMcp4725.h | Removed. | |
| sdHostDemo.h | Removed. | |
| tseDemo.h | Removed. |