0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003 * Support for Variscite DART-MX6 Carrier-board
0004 *
0005 * Copyright 2017 BayLibre, SAS
0006 * Author: Neil Armstrong <narmstrong@baylibre.com>
0007 */
0008
0009 /dts-v1/;
0010
0011 #include "imx6q.dtsi"
0012 #include "imx6qdl-var-dart.dtsi"
0013 #include <dt-bindings/input/linux-event-codes.h>
0014
0015 / {
0016 model = "Variscite DART-MX6 Carrier-board";
0017 compatible = "variscite,dt6customboard", "fsl,imx6q";
0018
0019 backlight_lvds: backlight {
0020 compatible = "pwm-backlight";
0021 pwms = <&pwm2 0 50000>;
0022 brightness-levels = <0 4 8 16 32 64 128 248>;
0023 default-brightness-level = <7>;
0024 status = "okay";
0025 };
0026
0027 gpio-keys {
0028 compatible = "gpio-keys";
0029 autorepeat;
0030
0031 back {
0032 gpios = <&gpio4 26 GPIO_ACTIVE_LOW>;
0033 linux,code = <KEY_BACK>;
0034 label = "Key Back";
0035 linux,input-type = <1>;
0036 debounce-interval = <100>;
0037 wakeup-source;
0038 };
0039
0040 home {
0041 gpios = <&gpio5 11 GPIO_ACTIVE_LOW>;
0042 linux,code = <KEY_HOME>;
0043 label = "Key Home";
0044 linux,input-type = <1>;
0045 debounce-interval = <100>;
0046 wakeup-source;
0047 };
0048
0049 menu {
0050 gpios = <&gpio4 25 GPIO_ACTIVE_LOW>;
0051 linux,code = <KEY_MENU>;
0052 label = "Key Menu";
0053 linux,input-type = <1>;
0054 debounce-interval = <100>;
0055 wakeup-source;
0056 };
0057 };
0058
0059 gpio-leds {
0060 compatible = "gpio-leds";
0061
0062 led1 {
0063 gpios = <&gpio4 27 GPIO_ACTIVE_HIGH>;
0064 linux,default-trigger = "heartbeat";
0065 };
0066
0067 led2 {
0068 gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>;
0069 linux,default-trigger = "default-on";
0070 };
0071 };
0072
0073 panel1: lvds-panel {
0074 compatible = "sgd,gktw70sdae4se", "panel-lvds";
0075 backlight = <&backlight_lvds>;
0076 width-mm = <153>;
0077 height-mm = <86>;
0078 label = "gktw70sdae4se";
0079 data-mapping = "jeida-18";
0080
0081 panel-timing {
0082 clock-frequency = <32000000>;
0083 hactive = <800>;
0084 vactive = <480>;
0085 hback-porch = <39>;
0086 hfront-porch = <39>;
0087 vback-porch = <29>;
0088 vfront-porch = <13>;
0089 hsync-len = <47>;
0090 vsync-len = <2>;
0091 };
0092
0093 port {
0094 panel_in: endpoint {
0095 remote-endpoint = <&lvds1_out>;
0096 };
0097 };
0098 };
0099
0100 reg_usb_h1_vbus: regulator-usbh1vbus {
0101 compatible = "regulator-fixed";
0102 regulator-name = "usb_h1_vbus";
0103 regulator-min-microvolt = <5000000>;
0104 regulator-max-microvolt = <5000000>;
0105 gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
0106 enable-active-high;
0107 };
0108
0109 reg_usb_otg_vbus: regulator-usbotgvbus {
0110 compatible = "regulator-fixed";
0111 regulator-name = "usb_otg_vbus";
0112 regulator-min-microvolt = <5000000>;
0113 regulator-max-microvolt = <5000000>;
0114 gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
0115 enable-active-high;
0116 };
0117
0118 sound {
0119 compatible = "simple-audio-card";
0120 simple-audio-card,name = "dt6-customboard-audio";
0121 simple-audio-card,format = "i2s";
0122 simple-audio-card,bitclock-master = <&sound_codec>;
0123 simple-audio-card,frame-master = <&sound_codec>;
0124 simple-audio-card,widgets = "Headphone", "Headphone Jack",
0125 "Line", "Line In";
0126 simple-audio-card,routing = "Headphone Jack", "HPLOUT",
0127 "Headphone Jack", "HPROUT",
0128 "LINE1L", "Line In",
0129 "LINE1R", "Line In";
0130
0131 sound_cpu: simple-audio-card,cpu {
0132 sound-dai = <&ssi2>;
0133 };
0134
0135 sound_codec: simple-audio-card,codec {
0136 sound-dai = <&tlv320aic3106>;
0137 clocks = <&clks IMX6QDL_CLK_CKO>;
0138 };
0139 };
0140 };
0141
0142 &can1 {
0143 status = "okay";
0144 };
0145
0146 &ecspi1 {
0147 cs-gpios = <&gpio4 9 GPIO_ACTIVE_LOW>,
0148 <&gpio4 10 GPIO_ACTIVE_LOW>;
0149 status = "okay";
0150 };
0151
0152 &fec {
0153 status = "okay";
0154 phy-mode = "rgmii";
0155 phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
0156 };
0157
0158 &hdmi {
0159 status = "okay";
0160 };
0161
0162 &i2c1 {
0163 clock-frequency = <100000>;
0164 status = "okay";
0165 };
0166
0167 &i2c3 {
0168 clock-frequency = <100000>;
0169 status = "okay";
0170
0171 touchscreen@38 {
0172 compatible = "edt,edt-ft5x06";
0173 reg = <0x38>;
0174 interrupt-parent = <&gpio1>;
0175 interrupts = <4 IRQ_TYPE_EDGE_FALLING>;
0176 touchscreen-size-x = <800>;
0177 touchscreen-size-y = <480>;
0178 touchscreen-inverted-x;
0179 touchscreen-inverted-y;
0180 wakeup-source;
0181 };
0182
0183 rtc@68 {
0184 compatible = "isil,isl12057";
0185 reg = <0x68>;
0186 };
0187 };
0188
0189 &ldb {
0190 status = "okay";
0191
0192 lvds-channel@1 {
0193 status = "okay";
0194
0195 port@4 {
0196 reg = <4>;
0197
0198 lvds1_out: endpoint {
0199 remote-endpoint = <&panel_in>;
0200 };
0201 };
0202 };
0203 };
0204
0205 &pwm2 {
0206 #pwm-cells = <2>;
0207 status = "okay";
0208 };
0209
0210 &uart1 {
0211 status = "okay";
0212 };
0213
0214 &uart3 {
0215 status = "okay";
0216 };
0217
0218 &usbh1 {
0219 vbus-supply = <®_usb_h1_vbus>;
0220 status = "okay";
0221 };
0222
0223 &usbotg {
0224 vbus-supply = <®_usb_otg_vbus>;
0225 dr_mode = "otg";
0226 srp-disable;
0227 hnp-disable;
0228 adp-disable;
0229 status = "okay";
0230 };
0231
0232 &usdhc2 {
0233 cd-gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
0234 status = "okay";
0235 };