From c56e8ca71ceb88918ebaf24703c1b821f5bdbe68 Mon Sep 17 00:00:00 2001 From: Antony Pavlov Date: Tue, 25 Mar 2014 20:50:56 +0400 Subject: serial: ns16550: add compatible entry for "ingenic,jz4740-uart" Signed-off-by: Antony Pavlov Signed-off-by: Sascha Hauer --- drivers/serial/serial_ns16550.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'drivers/serial') diff --git a/drivers/serial/serial_ns16550.c b/drivers/serial/serial_ns16550.c index 635c2b7e1e..0c00eb182c 100644 --- a/drivers/serial/serial_ns16550.c +++ b/drivers/serial/serial_ns16550.c @@ -200,6 +200,16 @@ static void ns16550_omap_init_port(struct console_device *cdev) ns16550_write(cdev, 0x00, omap_mdr1); } +#define JZ_FCR_UME 0x10 /* Uart Module Enable */ + +static void ns16550_jz_init_port(struct console_device *cdev) +{ + struct ns16550_priv *priv = to_ns16550_priv(cdev); + + priv->fcrval |= JZ_FCR_UME; + ns16550_serial_init_port(cdev); +} + /*********** Exposed Functions **********************************/ /** @@ -264,6 +274,10 @@ static __maybe_unused struct ns16550_drvdata omap_drvdata = { .linux_console_name = "ttyO", }; +static __maybe_unused struct ns16550_drvdata jz_drvdata = { + .init_port = ns16550_jz_init_port, +}; + /** * @brief Probe entry point -called on the first match for device * @@ -362,6 +376,12 @@ static struct of_device_id ns16550_serial_dt_ids[] = { .compatible = "ti,omap4-uart", .data = (unsigned long)&omap_drvdata, }, +#endif +#if IS_ENABLED(CONFIG_MACH_MIPS_XBURST) + { + .compatible = "ingenic,jz4740-uart", + .data = (unsigned long)&jz_drvdata, + }, #endif { /* sentinel */ -- cgit v1.2.3