Line 53... |
Line 53... |
static void __neorv32_rte_print_true_false(int state) __attribute__((unused));
|
static void __neorv32_rte_print_true_false(int state) __attribute__((unused));
|
static void __neorv32_rte_print_hex_word(uint32_t num);
|
static void __neorv32_rte_print_hex_word(uint32_t num);
|
|
|
|
|
/**********************************************************************//**
|
/**********************************************************************//**
|
|
* Floating-Point extension notifier.
|
|
**************************************************************************/
|
|
#ifdef __riscv_flen
|
|
#warning Floating-point extension <F> is WORK-IN-PROGRESS and NOT FULLY OPERATIONAL yet!
|
|
#endif
|
|
|
|
|
|
/**********************************************************************//**
|
* Setup NEORV32 runtime environment.
|
* Setup NEORV32 runtime environment.
|
*
|
*
|
* @note This function installs a debug handler for ALL exception and interrupt sources, which
|
* @note This function installs a debug handler for ALL exception and interrupt sources, which
|
* gives detailed information about the exception/interrupt. Actual handler can be installed afterwards
|
* gives detailed information about the exception/interrupt. Actual handler can be installed afterwards
|
* via neorv32_rte_exception_install(uint8_t id, void (*handler)(void)).
|
* via neorv32_rte_exception_install(uint8_t id, void (*handler)(void)).
|
Line 461... |
Line 469... |
neorv32_uart_printf("CFS - ");
|
neorv32_uart_printf("CFS - ");
|
__neorv32_rte_print_true_false(tmp & (1 << SYSINFO_FEATURES_IO_CFS));
|
__neorv32_rte_print_true_false(tmp & (1 << SYSINFO_FEATURES_IO_CFS));
|
|
|
neorv32_uart_printf("NCO - ");
|
neorv32_uart_printf("NCO - ");
|
__neorv32_rte_print_true_false(tmp & (1 << SYSINFO_FEATURES_IO_NCO));
|
__neorv32_rte_print_true_false(tmp & (1 << SYSINFO_FEATURES_IO_NCO));
|
|
|
|
neorv32_uart_printf("NEOLED - ");
|
|
__neorv32_rte_print_true_false(tmp & (1 << SYSINFO_FEATURES_IO_NEOLED));
|
}
|
}
|
|
|
|
|
/**********************************************************************//**
|
/**********************************************************************//**
|
* NEORV32 runtime environment: Private function to print yes or no.
|
* NEORV32 runtime environment: Private function to print yes or no.
|
Line 642... |
Line 653... |
|
|
#ifdef __riscv_compressed
|
#ifdef __riscv_compressed
|
misa_cc |= 1 << CSR_MISA_C_EXT;
|
misa_cc |= 1 << CSR_MISA_C_EXT;
|
#endif
|
#endif
|
|
|
|
#if (__riscv_flen == 64)
|
|
misa_cc |= 1 << CSR_MISA_D_EXT;
|
|
#endif
|
|
|
#ifdef __riscv_32e
|
#ifdef __riscv_32e
|
misa_cc |= 1 << CSR_MISA_E_EXT;
|
misa_cc |= 1 << CSR_MISA_E_EXT;
|
#else
|
#else
|
misa_cc |= 1 << CSR_MISA_I_EXT;
|
misa_cc |= 1 << CSR_MISA_I_EXT;
|
#endif
|
#endif
|
|
|
|
#if (__riscv_flen == 32)
|
|
misa_cc |= 1 << CSR_MISA_F_EXT;
|
|
#endif
|
|
|
#ifdef __riscv_mul
|
#ifdef __riscv_mul
|
misa_cc |= 1 << CSR_MISA_M_EXT;
|
misa_cc |= 1 << CSR_MISA_M_EXT;
|
#endif
|
#endif
|
|
|
#if (__riscv_xlen == 32)
|
#if (__riscv_xlen == 32)
|