#include "boards/rv64_platform.h"#include "clint/clint.h"#include "uart/uart.h"#include "debug.h"#include "soc.h"Go to the source code of this file.
Board Support Package API definitions.
This file provides default hardware mappings and initialization for the EfxSapphireSoC platform. It includes configurations for the primary UART, CLINT timer, and PLIC interrupt controller.
Definition in file bsp.h.
Macros | |
| #define | BSP_PLIC SYSTEM_PLIC_CTRL |
| Primary PLIC controller base address. | |
| #define | BSP_PLIC_CPU_0 SYSTEM_PLIC_CPU_0_MEI |
| Primary PLIC CPU 0 External Interrupt base address. | |
| #define | BSP_CLINT SYSTEM_CLINT_CTRL |
| Primary CLINT controller base address. | |
| #define | BSP_CLINT_HZ SYSTEM_CLINT_HZ |
| Primary CLINT controller clock frequency. | |
| #define | BSP_UART_BAUDRATE 115200 |
| Default UART baudrate. | |
| #define | BSP_UART_DATA_LEN 8 |
| Default UART data length (bits). | |
| #define | ENABLE_SEMIHOSTING_PRINT 0 |
| Enable printing with semihosting, Disabled by default. | |
| #define | BSP_UART_TERMINAL SYSTEM_UART_0_IO_CTRL |
| Physical UART base address for standard I/O mapping. | |
| #define | bsp_uDelay(usec) |
| Microsecond delay function using CLINT timer. | |
| #define | bsp_putChar(c) |
| Map standard character output to the physical UART. | |
| #define | bsp_getChar() |
| Map standard character input to the physical UART. | |
Printf Module Selection | |
Printf Wrapper Helper, ignore it. Toggle between the Lite and Full printf implementations. | |
| #define | ENABLE_BSP_PRINTF 1 |
| (Lite) Supports char, string, decimal, hex, floats. Moderate memory footprint. | |
| #define | ENABLE_BSP_PRINTF_FULL 1 |
| (Full) Full support including flags and precisions. Larger memory footprint. | |
| #define | ENABLE_BRIDGE_FULL_TO_LITE 1 |
| Enable function sharing between 'full' and 'lite' printing modules. | |
| #define | ENABLE_PRINTF_WARNING 1 |
| Print a warning message when a format specifier is not supported. | |
Extended Format Specifier Support | |
Enable specific data types (Costs extra memory). | |
| #define | ENABLE_FLOATING_POINT_SUPPORT 0 |
| Support for f (Printing only). | |
| #define | ENABLE_FP_EXPONENTIAL_SUPPORT 0 |
| Support for e / E. | |
| #define | ENABLE_PTRDIFF_SUPPORT 0 |
| Support for t (Pointer differences). | |
| #define | ENABLE_LONG_LONG_SUPPORT 1 |
| Support for lld / llu. | |
Functions | |
| void | bsp_init () |
| Initialize Board Support Package Peripherals. | |
Variables | |
| uart_instance_t | uart0 |
| Primary UART instance for standard I/O mapping. | |