URL
https://opencores.org/ocsvn/neorv32/neorv32/trunk
Subversion Repositories neorv32
Compare Revisions
- This comparison shows the changes necessary to convert path
/neorv32/trunk/sw/bootloader
- from Rev 64 to Rev 65
- ↔ Reverse comparison
Rev 64 → Rev 65
/bootloader.c
288,7 → 288,7
// setup UART0 (primary UART, no parity bit, no hardware flow control) |
neorv32_uart0_setup(UART_BAUD, PARITY_NONE, FLOW_CONTROL_NONE); |
// SPI setup |
neorv32_spi_setup(SPI_FLASH_CLK_PRSC, 0, 0); |
neorv32_spi_setup(SPI_FLASH_CLK_PRSC, 0, 0, 0); |
|
PRINT_TEXT("\nNEORV32 bootloader\nLoading from SPI flash at "); |
PRINT_XNUM((uint32_t)SPI_BOOT_BASE_ADDR); |
316,7 → 316,7
|
#if (SPI_EN != 0) |
// setup SPI for 8-bit, clock-mode 0 |
neorv32_spi_setup(SPI_FLASH_CLK_PRSC, 0, 0); |
neorv32_spi_setup(SPI_FLASH_CLK_PRSC, 0, 0, 0); |
#endif |
|
#if (STATUS_LED_EN != 0) |
333,7 → 333,7
|
// Configure machine system timer interrupt for ~2Hz |
if (neorv32_mtime_available()) { |
neorv32_mtime_set_timecmp(neorv32_mtime_get_time() + (NEORV32_SYSINFO.CLK/4)); |
neorv32_mtime_set_timecmp(neorv32_cpu_get_systime() + (NEORV32_SYSINFO.CLK/4)); |
// active timer IRQ |
neorv32_cpu_csr_write(CSR_MIE, 1 << CSR_MIE_MTIE); // activate MTIME IRQ source only! |
neorv32_cpu_eint(); // enable global interrupts |
372,7 → 372,7
if (neorv32_mtime_available()) { |
|
PRINT_TEXT("\n\nAutoboot in "xstr(AUTO_BOOT_TIMEOUT)"s. Press key to abort.\n"); |
uint64_t timeout_time = neorv32_mtime_get_time() + (uint64_t)(AUTO_BOOT_TIMEOUT * NEORV32_SYSINFO.CLK); |
uint64_t timeout_time = neorv32_cpu_get_systime() + (uint64_t)(AUTO_BOOT_TIMEOUT * NEORV32_SYSINFO.CLK); |
|
while(1){ |
|
382,7 → 382,7
} |
} |
|
if (neorv32_mtime_get_time() >= timeout_time) { // timeout? start auto boot sequence |
if (neorv32_cpu_get_systime() >= timeout_time) { // timeout? start auto boot sequence |
get_exe(EXE_STREAM_FLASH); // try booting from flash |
PRINT_TEXT("\n"); |
start_app(); |
503,7 → 503,7
#endif |
// set time for next IRQ |
if (neorv32_mtime_available()) { |
neorv32_mtime_set_timecmp(neorv32_mtime_get_time() + (NEORV32_SYSINFO.CLK/4)); |
neorv32_mtime_set_timecmp(neorv32_cpu_get_systime() + (NEORV32_SYSINFO.CLK/4)); |
} |
} |
|