summaryrefslogtreecommitdiffstats
path: root/sys/boot
diff options
context:
space:
mode:
authorian <ian@FreeBSD.org>2015-05-24 18:59:45 +0000
committerian <ian@FreeBSD.org>2015-05-24 18:59:45 +0000
commitd6c6dd582ec07f8d5dde27d8a20ed71556337f2e (patch)
treee1fd50574d37a63e47f9c8661d1a55cc5c4af984 /sys/boot
parent83a17cbb7769e0ba41c229f622376f58e37187f4 (diff)
downloadFreeBSD-src-d6c6dd582ec07f8d5dde27d8a20ed71556337f2e.zip
FreeBSD-src-d6c6dd582ec07f8d5dde27d8a20ed71556337f2e.tar.gz
MFC r268838, r277644:
Add support for Toradex Apalis i.MX6 development board. Add support for imx6 audio transmitting, include drivers for: o Digital Audio Multiplexer (AUDMUX) o Smart Direct Memory Access Controller (SDMA) o Synchronous Serial Interface (SSI)
Diffstat (limited to 'sys/boot')
-rw-r--r--sys/boot/fdt/dts/arm/apalis-imx6.dts102
-rw-r--r--sys/boot/fdt/dts/arm/imx6.dtsi8
2 files changed, 108 insertions, 2 deletions
diff --git a/sys/boot/fdt/dts/arm/apalis-imx6.dts b/sys/boot/fdt/dts/arm/apalis-imx6.dts
new file mode 100644
index 0000000..b644060
--- /dev/null
+++ b/sys/boot/fdt/dts/arm/apalis-imx6.dts
@@ -0,0 +1,102 @@
+/*
+ * Copyright (c) 2014-2015 Ruslan Bukin <br@bsdpad.com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * $FreeBSD$
+ */
+
+#include "imx6q-pinfunc.h"
+
+/dts-v1/;
+/include/ "imx6.dtsi"
+
+/ {
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ model = "Toradex Apalis i.MX6";
+ compatible = "toradex,imx6q-apalis", "fsl,imx6q";
+
+ memory {
+ reg = <0x10000000 0x40000000>; /* RAM 1GB */
+ };
+
+ SOC: soc@00000000 {
+ aips@02000000 { /* AIPS1 */
+ iomux@020e0000 {
+ status = "okay";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pins_ssi>;
+ pins_ssi: ssi {
+ fsl,pins = <
+ MX6QDL_PAD_DISP0_DAT16__AUD5_TXC 0x130b0
+ MX6QDL_PAD_DISP0_DAT17__AUD5_TXD 0x110b0
+ MX6QDL_PAD_DISP0_DAT18__AUD5_TXFS 0x130b0
+ MX6QDL_PAD_DISP0_DAT19__AUD5_RXD 0x130b0
+ MX6QDL_PAD_GPIO_19__CCM_CLKO1 0x130b0
+ >;
+ };
+ };
+ gpio@0209c000 { status = "okay"; };
+ gpio@020a0000 { status = "okay"; };
+ gpio@020a4000 { status = "okay"; };
+ gpio@020a8000 { status = "okay"; };
+ gpio@020ac000 { status = "okay"; };
+ gpio@020b0000 { status = "okay"; };
+ gpio@020b4000 { status = "okay"; };
+ console:serial@02020000 { status = "okay"; };
+ serial@021e8000 { status = "disabled"; };
+ serial@021ec000 { status = "disabled"; };
+ serial@021f0000 { status = "disabled"; };
+ serial@021f4000 { status = "disabled"; };
+ usbphy@020c9000 { status = "okay"; };
+ usbphy@020ca000 { status = "okay"; };
+ ecspi@02008000 { status = "okay"; };
+ ssi@02028000 { status = "okay"; };
+ sdma@020ec000 { status = "okay"; };
+ };
+ aips@02100000 { /* AIPS2 */
+ ethernet@02188000 {
+ status = "okay";
+ phy-mode = "rgmii";
+ phy-disable-preamble;
+ };
+ usb@02184000 { status = "okay"; };
+ usb@02184200 { status = "okay"; };
+ usb@02184400 { status = "disabled"; };
+ usb@02184600 { status = "disabled"; };
+ usdhc@02190000 { status = "disabled"; };
+ usdhc@02194000 { status = "okay"; };
+ usdhc@02198000 { status = "disabled"; };
+ usdhc@0219c000 { status = "disabled"; };
+ audmux@021d8000 { status = "okay"; };
+ i2c@021a0000 { status = "okay"; };
+ };
+ };
+
+ chosen {
+ stdin = &console;
+ stdout = &console;
+ };
+};
diff --git a/sys/boot/fdt/dts/arm/imx6.dtsi b/sys/boot/fdt/dts/arm/imx6.dtsi
index c24bb81..db8b44e 100644
--- a/sys/boot/fdt/dts/arm/imx6.dtsi
+++ b/sys/boot/fdt/dts/arm/imx6.dtsi
@@ -126,11 +126,12 @@
gpt: timer@02098000 {
compatible = "fsl,imx6q-gpt", "fsl,imx51-gpt";
reg = <0x02098000 0x4000>;
- interrupt-parent = <&gic>; interrupts = <87>;
+ interrupt-parent = <&gic>;
+ interrupts = <87>;
};
iomux@020e0000 {
- compatible = "fsl,imx6q-iomux";
+ compatible = "fsl,imx6q-iomuxc";
reg = <0x020e0000 0x4000>;
interrupt-parent = <&gic>;
interrupts = <32>;
@@ -311,6 +312,9 @@
compatible = "fsl,imx6q-ssi";
reg = <0x02028000 0x4000>;
interrupts = < 78 >;
+ dmas = <&sdma 37 1 0>,
+ <&sdma 38 1 0>;
+ dma-names = "rx", "tx";
status = "disabled";
};
OpenPOWER on IntegriCloud