From 70342a7f51a0069446966c42db4dbc44f6db16ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ky=C3=B6sti=20M=C3=A4lkki?= Date: Fri, 14 Mar 2014 22:28:29 +0200 Subject: uart: Support multiple ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The port for console remains to be a compile time constant. The Kconfig option is changed to select an UART port with index to avoid putting map of UART base addresses in Kconfigs. With this change it is possible to have other than debug console on different UART port. Change-Id: Ie1845a946f8d3b2604ef5404edb31b2e811f3ccd Signed-off-by: Kyösti Mälkki Reviewed-on: http://review.coreboot.org/5342 Tested-by: build bot (Jenkins) Reviewed-by: David Hendricks Reviewed-by: Paul Menzel --- src/include/console/uart.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/include/console') diff --git a/src/include/console/uart.h b/src/include/console/uart.h index 5866ca4d42..b08cd9b4f1 100644 --- a/src/include/console/uart.h +++ b/src/include/console/uart.h @@ -40,10 +40,10 @@ unsigned int uart_baudrate_divisor(unsigned int baudrate, unsigned int refclk, unsigned int oversample); -void uart_init(void); -void uart_tx_byte(unsigned char data); -void uart_tx_flush(void); -unsigned char uart_rx_byte(void); +void uart_init(int idx); +void uart_tx_byte(int idx, unsigned char data); +void uart_tx_flush(int idx); +unsigned char uart_rx_byte(int idx); unsigned int uart_platform_base(int idx); @@ -60,9 +60,9 @@ void oxford_remap(unsigned int new_base); (ENV_SMM && CONFIG_DEBUG_SMI)) #if __CONSOLE_SERIAL_ENABLE__ -static inline void __uart_init(void) { uart_init(); } -static inline void __uart_tx_byte(u8 data) { uart_tx_byte(data); } -static inline void __uart_tx_flush(void) { uart_tx_flush(); } +static inline void __uart_init(void) { uart_init(CONFIG_UART_FOR_CONSOLE); } +static inline void __uart_tx_byte(u8 data) { uart_tx_byte(CONFIG_UART_FOR_CONSOLE, data); } +static inline void __uart_tx_flush(void) { uart_tx_flush(CONFIG_UART_FOR_CONSOLE); } #else static inline void __uart_init(void) {} static inline void __uart_tx_byte(u8 data) {} -- cgit v1.2.3