summaryrefslogtreecommitdiff
path: root/drivers/serial
diff options
context:
space:
mode:
authorBin Meng <bmeng.cn@gmail.com>2014-12-31 16:05:13 +0800
committerSimon Glass <sjg@chromium.org>2015-01-13 07:24:57 -0800
commit1eb47efc49f1db8384f62c12f82b27d2bfbbae2e (patch)
treef7f0f7294777198382cd937961bf2ee4e74401dc /drivers/serial
parent3db886a5bf38700b51a1d7a7b00ec8b64c9c2089 (diff)
x86: Use ePAPR defined properties for x86-uart
Use ePAPR defined properties for x86-uart: clock-frequency and current-speed. Assign the value of clock-frequency in device tree to plat->clock of x86-uart instead of using hardcoded number. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'drivers/serial')
-rw-r--r--drivers/serial/serial_x86.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/serial/serial_x86.c b/drivers/serial/serial_x86.c
index e81e035ec2..4bf6062c64 100644
--- a/drivers/serial/serial_x86.c
+++ b/drivers/serial/serial_x86.c
@@ -6,9 +6,12 @@
#include <common.h>
#include <dm.h>
+#include <fdtdec.h>
#include <ns16550.h>
#include <serial.h>
+DECLARE_GLOBAL_DATA_PTR;
+
static const struct udevice_id x86_serial_ids[] = {
{ .compatible = "x86-uart" },
{ }
@@ -22,10 +25,13 @@ static int x86_serial_ofdata_to_platdata(struct udevice *dev)
ret = ns16550_serial_ofdata_to_platdata(dev);
if (ret)
return ret;
- plat->clock = 1843200;
+
+ plat->clock = fdtdec_get_int(gd->fdt_blob, dev->of_offset,
+ "clock-frequency", 1843200);
return 0;
}
+
U_BOOT_DRIVER(serial_ns16550) = {
.name = "serial_x86",
.id = UCLASS_SERIAL,