diff --git a/headers/private/kernel/arch/arm/board/rpi1/board_config.h b/headers/private/kernel/arch/arm/board/rpi1/board_config.h index 21a96bb8e9..607c71cc21 100644 --- a/headers/private/kernel/arch/arm/board/rpi1/board_config.h +++ b/headers/private/kernel/arch/arm/board/rpi1/board_config.h @@ -17,7 +17,7 @@ #include // UART Settings -#define BOARD_UART_AMBA_PL011 1 +#define BOARD_UART_PL011 1 #define BOARD_UART1_BASE UART0_BASE // PL011 UART @@ -26,7 +26,7 @@ #define BOARD_UART3_BASE 0 // N/A -#define BOARD_UART_DEBUG BOARD_UART1_BASE +#define BOARD_UART_DEBUG DEVICE_BASE + BOARD_UART1_BASE #define BOARD_UART_CLOCK 3000000 /* 3Mhz */ diff --git a/headers/private/kernel/arch/arm/board/rpi2/board_config.h b/headers/private/kernel/arch/arm/board/rpi2/board_config.h index a0f79e1c5c..31f83011b6 100644 --- a/headers/private/kernel/arch/arm/board/rpi2/board_config.h +++ b/headers/private/kernel/arch/arm/board/rpi2/board_config.h @@ -17,7 +17,7 @@ #include // UART Settings -#define BOARD_UART_AMBA_PL011 1 +#define BOARD_UART_PL011 1 #define BOARD_UART1_BASE UART0_BASE // PL011 UART @@ -26,7 +26,7 @@ #define BOARD_UART3_BASE 0 // N/A -#define BOARD_UART_DEBUG BOARD_UART1_BASE +#define BOARD_UART_DEBUG DEVICE_BASE + BOARD_UART1_BASE #define BOARD_UART_CLOCK 3000000 /* 3Mhz */ diff --git a/src/system/boot/platform/raspberrypi_arm/serial.cpp b/src/system/boot/platform/raspberrypi_arm/serial.cpp index 24fdc63f9c..bfe35b1b23 100644 --- a/src/system/boot/platform/raspberrypi_arm/serial.cpp +++ b/src/system/boot/platform/raspberrypi_arm/serial.cpp @@ -88,8 +88,7 @@ serial_cleanup(void) extern "C" void serial_init(void) { - gUART = arch_get_uart_pl011(gPeripheralBase + BOARD_UART_DEBUG, - BOARD_UART_CLOCK); + gUART = arch_get_uart_pl011(BOARD_UART_DEBUG, BOARD_UART_CLOCK); gUART->InitEarly(); gUART->InitPort(9600); diff --git a/src/system/boot/platform/u-boot/serial.cpp b/src/system/boot/platform/u-boot/serial.cpp index d0a1592673..7fcee372a8 100644 --- a/src/system/boot/platform/u-boot/serial.cpp +++ b/src/system/boot/platform/u-boot/serial.cpp @@ -10,6 +10,7 @@ #include "serial.h" #include +#include #include #include #include @@ -83,10 +84,8 @@ extern "C" void serial_enable(void) { /* should already be initialized by U-Boot */ - /* gUART->InitEarly(); - gUART->InitPort(9600); - */ + gUART->InitPort(115200); sSerialEnabled++; } @@ -113,8 +112,13 @@ serial_init(const void *fdt) #ifdef BOARD_UART_DEBUG // fallback to hardcoded board UART - if (gUART == NULL) + if (gUART == NULL) { + #if defined(BOARD_UART_PL011) + gUART = arch_get_uart_pl011(BOARD_UART_DEBUG, BOARD_UART_CLOCK); + #else gUART = arch_get_uart_8250(BOARD_UART_DEBUG, BOARD_UART_CLOCK); + #endif + } #endif if (gUART == NULL) diff --git a/src/system/kernel/arch/arm/arch_debug_console.cpp b/src/system/kernel/arch/arm/arch_debug_console.cpp index bce88e10ee..195b68b632 100644 --- a/src/system/kernel/arch/arm/arch_debug_console.cpp +++ b/src/system/kernel/arch/arm/arch_debug_console.cpp @@ -95,7 +95,7 @@ arch_debug_serial_early_boot_message(const char *string) status_t arch_debug_console_init(kernel_args *args) { - #if defined(BOARD_UART_AMBA_PL011) + #if defined(BOARD_UART_PL011) gArchDebugUART = arch_get_uart_pl011(BOARD_UART_DEBUG, BOARD_UART_CLOCK); #else // More Generic 8250