diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2019-02-28 17:19:54 +0200 |
---|---|---|
committer | Bin Meng <bmeng.cn@gmail.com> | 2019-03-10 08:17:00 +0800 |
commit | edf18a83f8dc993279947cfc7faaba7dedf1ad82 (patch) | |
tree | ebe381cad72bd37ace892f31948e1329ac2c2fc5 /arch | |
parent | c652dd15571e6c7df35ff30eeb8b3e2b7e6300ba (diff) | |
download | u-boot-edf18a83f8dc993279947cfc7faaba7dedf1ad82.tar.gz |
x86: acpi: Not every platform has serial console a first device
We may not do an assumption that current console device is always a first
of UCLASS_SERIAL one.
For example, on properly described Intel Edison board the console UART
is a third one.
Use current serial device as described in global data.
Fixes: a61cbad78e67 ("dm: serial: Adjust serial_getinfo() to use proper API")
Cc: Simon Glass <sjg@chromium.org>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/lib/acpi_table.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/lib/acpi_table.c b/arch/x86/lib/acpi_table.c index 04058a60d7..270274f6b3 100644 --- a/arch/x86/lib/acpi_table.c +++ b/arch/x86/lib/acpi_table.c @@ -347,7 +347,7 @@ static void acpi_create_spcr(struct acpi_spcr *spcr) uint serial_width; int access_size; int space_id; - int ret; + int ret = -ENODEV; /* Fill out header fields */ acpi_fill_header(header, "SPCR"); @@ -355,8 +355,8 @@ static void acpi_create_spcr(struct acpi_spcr *spcr) header->revision = 2; /* Read the device once, here. It is reused below */ - ret = uclass_first_device_err(UCLASS_SERIAL, &dev); - if (!ret) + dev = gd->cur_serial_dev; + if (dev) ret = serial_getinfo(dev, &serial_info); if (ret) serial_info.type = SERIAL_CHIP_UNKNOWN; |