serial: 8250_omap: workaround module disable errata on dra7x SoCs
authorSekhar Nori <nsekhar@ti.com>
Tue, 14 Jul 2015 08:02:08 +0000 (13:32 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 23 Jul 2015 22:24:11 +0000 (15:24 -0700)
Due to Advisory 21 as documented in AM437x errata document,
UART module cannot be disabled once DMA is used. The only
workaround is to softreset the module before disabling it.

DRA7x UARTs are compatible to AM437x UARTs in terms of
this errata and prescribed workaround.

Enable usage of workaround for this errata on DRA7x SoCs.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Reviewed-by: Peter Hurley <peter@hurleysoftware.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Documentation/devicetree/bindings/serial/omap_serial.txt
drivers/tty/serial/8250/8250_omap.c

index 0ee88209b3417e55d8c54eed1648777bd263f73c..7a71b5de77d69b12f58a4d0d26b559fe7fa078fc 100644 (file)
@@ -6,6 +6,7 @@ Required properties:
 - compatible : should be "ti,omap4-uart" for OMAP4 controllers
 - compatible : should be "ti,am4372-uart" for AM437x controllers
 - compatible : should be "ti,am3352-uart" for AM335x controllers
+- compatible : should be "ti,dra742-uart" for DRA7x controllers
 - reg : address and length of the register space
 - interrupts or interrupts-extended : Should contain the uart interrupt
                                       specifier or both the interrupt
index a2ee75dee070db70384e3e6dda40ac6e6a698462..d9a37191a1ae0f1c573c942acfd2bd4c9882cb0e 100644 (file)
@@ -1082,6 +1082,7 @@ static const struct of_device_id omap8250_dt_ids[] = {
        { .compatible = "ti,omap4-uart" },
        { .compatible = "ti,am3352-uart", .data = &am3352_habit, },
        { .compatible = "ti,am4372-uart", .data = &am4372_habit, },
+       { .compatible = "ti,dra742-uart", .data = &am4372_habit, },
        {},
 };
 MODULE_DEVICE_TABLE(of, omap8250_dt_ids);