From owner-svn-src-head@FreeBSD.ORG Sat Jun 29 23:48:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A376EA19; Sat, 29 Jun 2013 23:48:09 +0000 (UTC) (envelope-from ray@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7C22C1A0A; Sat, 29 Jun 2013 23:48:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5TNm9uK059270; Sat, 29 Jun 2013 23:48:09 GMT (envelope-from ray@svn.freebsd.org) Received: (from ray@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5TNm8xs059266; Sat, 29 Jun 2013 23:48:08 GMT (envelope-from ray@svn.freebsd.org) Message-Id: <201306292348.r5TNm8xs059266@svn.freebsd.org> From: Aleksandr Rybalko Date: Sat, 29 Jun 2013 23:48:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252394 - head/sys/dev/uart X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 29 Jun 2013 23:48:09 -0000 Author: ray Date: Sat Jun 29 23:48:08 2013 New Revision: 252394 URL: http://svnweb.freebsd.org/changeset/base/252394 Log: Teach UART to attach Exynos/s3/s5 class driver. Submitted by: Ruslan Bukin Reviewed by: gonzo Modified: head/sys/dev/uart/uart.h head/sys/dev/uart/uart_bus_fdt.c head/sys/dev/uart/uart_cpu_fdt.c head/sys/dev/uart/uart_subr.c Modified: head/sys/dev/uart/uart.h ============================================================================== --- head/sys/dev/uart/uart.h Sat Jun 29 23:40:44 2013 (r252393) +++ head/sys/dev/uart/uart.h Sat Jun 29 23:48:08 2013 (r252394) @@ -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)); Modified: head/sys/dev/uart/uart_bus_fdt.c ============================================================================== --- head/sys/dev/uart/uart_bus_fdt.c Sat Jun 29 23:40:44 2013 (r252393) +++ head/sys/dev/uart/uart_bus_fdt.c Sat Jun 29 23:48:08 2013 (r252394) @@ -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 Modified: head/sys/dev/uart/uart_cpu_fdt.c ============================================================================== --- head/sys/dev/uart/uart_cpu_fdt.c Sat Jun 29 23:40:44 2013 (r252393) +++ head/sys/dev/uart/uart_cpu_fdt.c Sat Jun 29 23:48:08 2013 (r252394) @@ -149,6 +149,8 @@ uart_cpu_getdev(int devtype, struct uart 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; Modified: head/sys/dev/uart/uart_subr.c ============================================================================== --- head/sys/dev/uart/uart_subr.c Sat Jun 29 23:40:44 2013 (r252393) +++ head/sys/dev/uart/uart_subr.c Sat Jun 29 23:48:08 2013 (r252394) @@ -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]);