mb/emulation/qemu-riscv: Use generic 8250 uart driver
Drop hacked uart code and use the generic 8250 uart driver for ns16550a. Tested on qemu-system-riscv64: * The UART is still working. Change-Id: I6efda913fa39e0cfa466b52c570572aca90dacdf Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/33735 Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-by: Philipp Hug <philipp@hug.cx> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
7be4f30c5a
commit
efc39cbec7
|
@ -37,9 +37,9 @@ config BOARD_SPECIFIC_OPTIONS
|
||||||
def_bool y
|
def_bool y
|
||||||
select SOC_UCB_RISCV
|
select SOC_UCB_RISCV
|
||||||
select BOARD_ROMSIZE_KB_4096
|
select BOARD_ROMSIZE_KB_4096
|
||||||
select HAVE_UART_SPECIAL
|
|
||||||
select BOOT_DEVICE_NOT_SPI_FLASH
|
select BOOT_DEVICE_NOT_SPI_FLASH
|
||||||
select MISSING_BOARD_RESET
|
select MISSING_BOARD_RESET
|
||||||
|
select DRIVERS_UART_8250MEM
|
||||||
|
|
||||||
config MAINBOARD_DIR
|
config MAINBOARD_DIR
|
||||||
string
|
string
|
||||||
|
|
|
@ -15,42 +15,9 @@
|
||||||
|
|
||||||
#include <types.h>
|
#include <types.h>
|
||||||
#include <console/uart.h>
|
#include <console/uart.h>
|
||||||
#include <boot/coreboot_tables.h>
|
|
||||||
#include <mainboard/addressmap.h>
|
#include <mainboard/addressmap.h>
|
||||||
|
|
||||||
static uint8_t *buf = (void *)QEMU_VIRT_UART0;
|
|
||||||
uintptr_t uart_platform_base(int idx)
|
uintptr_t uart_platform_base(int idx)
|
||||||
{
|
{
|
||||||
return (uintptr_t) buf;
|
return (uintptr_t) QEMU_VIRT_UART0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void uart_init(int idx)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned char uart_rx_byte(int idx)
|
|
||||||
{
|
|
||||||
return *buf;
|
|
||||||
}
|
|
||||||
|
|
||||||
void uart_tx_byte(int idx, unsigned char data)
|
|
||||||
{
|
|
||||||
*buf = data;
|
|
||||||
}
|
|
||||||
|
|
||||||
void uart_tx_flush(int idx)
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifndef __PRE_RAM__
|
|
||||||
void uart_fill_lb(void *data)
|
|
||||||
{
|
|
||||||
struct lb_serial serial;
|
|
||||||
serial.type = LB_SERIAL_TYPE_MEMORY_MAPPED;
|
|
||||||
serial.baseaddr = QEMU_VIRT_UART0;
|
|
||||||
serial.baud = 115200;
|
|
||||||
serial.regwidth = 1;
|
|
||||||
lb_add_serial(&serial, data);
|
|
||||||
lb_add_console(LB_TAG_CONSOLE_SERIAL8250MEM, data);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
Loading…
Reference in New Issue