Teach UART to attach Exynos/s3/s5 class driver.

Submitted by:	Ruslan Bukin <br@bsdpad.com>
Reviewed by:	gonzo
This commit is contained in:
Aleksandr Rybalko 2013-06-29 23:48:08 +00:00
parent cbda62170f
commit 5d490515c3
4 changed files with 6 additions and 0 deletions

View File

@ -67,6 +67,7 @@ struct uart_class;
extern struct uart_class uart_imx_class __attribute__((weak));
extern struct uart_class uart_ns8250_class __attribute__((weak));
extern struct uart_class uart_quicc_class __attribute__((weak));
extern struct uart_class uart_s3c2410_class __attribute__((weak));
extern struct uart_class uart_sab82532_class __attribute__((weak));
extern struct uart_class uart_sbbc_class __attribute__((weak));
extern struct uart_class uart_z8530_class __attribute__((weak));

View File

@ -109,6 +109,8 @@ uart_fdt_probe(device_t dev)
sc->sc_class = &uart_imx_class;
else if (ofw_bus_is_compatible(dev, "arm,pl011"))
sc->sc_class = &uart_pl011_class;
else if (ofw_bus_is_compatible(dev, "exynos"))
sc->sc_class = &uart_s3c2410_class;
else if (ofw_bus_is_compatible(dev, "cadence,uart"))
sc->sc_class = &uart_cdnc_class;
else

View File

@ -149,6 +149,8 @@ uart_cpu_getdev(int devtype, struct uart_devinfo *di)
class = &uart_ns8250_class;
if (fdt_is_compatible(node, "arm,pl011"))
class = &uart_pl011_class;
if (fdt_is_compatible(node, "exynos"))
class = &uart_s3c2410_class;
if (fdt_is_compatible(node, "cadence,uart"))
class = &uart_cdnc_class;

View File

@ -54,6 +54,7 @@ static struct uart_class *uart_classes[] = {
&uart_z8530_class,
#if defined(__arm__)
&uart_lpc_class,
&uart_s3c2410_class,
#endif
};
static size_t uart_nclasses = sizeof(uart_classes) / sizeof(uart_classes[0]);