
Hi Aiden,
On Wed, Dec 18, 2019 at 1:56 PM Park, Aiden aiden.park@intel.com wrote:
Slim Bootloader provides serial port info in its HOB to support both IO or MMIO serial ports, but it's controlled by SYS_NS16550_MEM32 or SYS_NS16550_PORT_MAPPED in U-Boot. To support both serial port configurations dynamically at runtime, Slim Bootloader serial driver leverages NS16550_DYNAMIC.
Signed-off-by: Aiden Park aiden.park@intel.com
arch/x86/cpu/slimbootloader/serial.c | 5 +++++ include/configs/slimbootloader.h | 13 ------------- 2 files changed, 5 insertions(+), 13 deletions(-)
diff --git a/arch/x86/cpu/slimbootloader/serial.c b/arch/x86/cpu/slimbootloader/serial.c index 7b44a59bff..0f45b3ba72 100644 --- a/arch/x86/cpu/slimbootloader/serial.c +++ b/arch/x86/cpu/slimbootloader/serial.c @@ -45,7 +45,12 @@ static int slimbootloader_serial_ofdata_to_platdata(struct udevice *dev) plat->base = data->base; /* ns16550 uses reg_shift, then covert stride to shift */ plat->reg_shift = data->stride >> 1;
plat->reg_width = data->stride; plat->clock = data->clk;
plat->fcr = UART_FCR_DEFVAL;
plat->flags = 0;
if (data->type == 1)
plat->flags |= NS16550_FLAG_IO;
nits: the following comments in this function should be removed:
/* * The data->type provides port io or mmio access type info, * but the access type will be controlled by * CONFIG_SYS_NS16550_PORT_MAPPED or CONFIG_SYS_NS16550_MEM32. * * TBD: ns16550 access type configuration in runtime. * ex) plat->access_type = data->type */
return 0;
} diff --git a/include/configs/slimbootloader.h b/include/configs/slimbootloader.h index e0011ed446..b8169072cc 100644 --- a/include/configs/slimbootloader.h +++ b/include/configs/slimbootloader.h @@ -8,19 +8,6 @@
#include <configs/x86-common.h>
-/*
- By default, CONFIG_SYS_NS16550_PORT_MAPPED is enabled for port io serial.
- To use mmio base serial, enable CONFIG_SYS_NS16550_MEM32 and disable
- CONFIG_SYS_NS16550_PORT_MAPPED until ns16550 driver supports serial port
- configuration in run-time.
- #define CONFIG_SYS_NS16550_MEM32
- #undef CONFIG_SYS_NS16550_PORT_MAPPED
- */
-#ifdef CONFIG_SYS_NS16550_MEM32 -#undef CONFIG_SYS_NS16550_PORT_MAPPED -#endif
#define CONFIG_STD_DEVICES_SETTINGS \ "stdin=serial,i8042-kbd,usbkbd\0" \ "stdout=serial\0" \ --
Reviewed-by: Bin Meng bmeng.cn@gmail.com
Regards, Bin