0001 /*
0002 * Copyright 2015 Sutajio Ko-Usagi PTE LTD
0003 *
0004 * This file is dual-licensed: you can use it either under the terms
0005 * of the GPL or the X11 license, at your option. Note that this dual
0006 * licensing only applies to this file, and not this project as a
0007 * whole.
0008 *
0009 * a) This file is free software; you can redistribute it and/or
0010 * modify it under the terms of the GNU General Public License as
0011 * published by the Free Software Foundation; either version 2 of
0012 * the License, or (at your option) any later version.
0013 *
0014 * This file is distributed in the hope that it will be useful,
0015 * but WITHOUT ANY WARRANTY; without even the implied warranty of
0016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
0017 * GNU General Public License for more details.
0018 *
0019 * You should have received a copy of the GNU General Public
0020 * License along with this file; if not, write to the Free
0021 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
0022 * MA 02110-1301 USA
0023 *
0024 * Or, alternatively,
0025 *
0026 * b) Permission is hereby granted, free of charge, to any person
0027 * obtaining a copy of this software and associated documentation
0028 * files (the "Software"), to deal in the Software without
0029 * restriction, including without limitation the rights to use,
0030 * copy, modify, merge, publish, distribute, sublicense, and/or
0031 * sell copies of the Software, and to permit persons to whom the
0032 * Software is furnished to do so, subject to the following
0033 * conditions:
0034 *
0035 * The above copyright notice and this permission notice shall be
0036 * included in all copies or substantial portions of the Software.
0037 *
0038 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
0039 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
0040 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
0041 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
0042 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
0043 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
0044 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
0045 * OTHER DEALINGS IN THE SOFTWARE.
0046 *
0047 */
0048
0049 /dts-v1/;
0050 #include "imx6q.dtsi"
0051 #include <dt-bindings/gpio/gpio.h>
0052 #include <dt-bindings/input/input.h>
0053
0054 / {
0055 model = "Kosagi Novena Dual/Quad";
0056 compatible = "kosagi,imx6q-novena", "fsl,imx6q";
0057
0058 /* Will be filled by the bootloader */
0059 memory@10000000 {
0060 device_type = "memory";
0061 reg = <0x10000000 0>;
0062 };
0063
0064 chosen {
0065 stdout-path = &uart2;
0066 };
0067
0068 backlight: backlight {
0069 compatible = "pwm-backlight";
0070 pwms = <&pwm1 0 10000000>;
0071 pinctrl-names = "default";
0072 pinctrl-0 = <&pinctrl_backlight_novena>;
0073 power-supply = <®_lvds_lcd>;
0074 brightness-levels = <0 3 6 12 16 24 32 48 64 96 128 192 255>;
0075 default-brightness-level = <12>;
0076 };
0077
0078 gpio-keys {
0079 compatible = "gpio-keys";
0080 pinctrl-names = "default";
0081 pinctrl-0 = <&pinctrl_gpio_keys_novena>;
0082
0083 user-button {
0084 label = "User Button";
0085 gpios = <&gpio4 14 GPIO_ACTIVE_LOW>;
0086 linux,code = <KEY_POWER>;
0087 };
0088
0089 lid {
0090 label = "Lid";
0091 gpios = <&gpio4 12 GPIO_ACTIVE_LOW>;
0092 linux,input-type = <5>; /* EV_SW */
0093 linux,code = <0>; /* SW_LID */
0094 };
0095 };
0096
0097 leds {
0098 compatible = "gpio-leds";
0099 pinctrl-names = "default";
0100 pinctrl-0 = <&pinctrl_leds_novena>;
0101
0102 heartbeat {
0103 label = "novena:white:panel";
0104 gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
0105 linux,default-trigger = "default-on";
0106 };
0107 };
0108
0109 panel: panel {
0110 compatible = "innolux,n133hse-ea1";
0111 backlight = <&backlight>;
0112 };
0113
0114 reg_2p5v: regulator-2p5v {
0115 compatible = "regulator-fixed";
0116 regulator-name = "2P5V";
0117 regulator-min-microvolt = <2500000>;
0118 regulator-max-microvolt = <2500000>;
0119 regulator-always-on;
0120 };
0121
0122 reg_3p3v: regulator-3p3v {
0123 compatible = "regulator-fixed";
0124 regulator-name = "3P3V";
0125 regulator-min-microvolt = <3300000>;
0126 regulator-max-microvolt = <3300000>;
0127 regulator-always-on;
0128 };
0129
0130 reg_audio_codec: regulator-audio-codec {
0131 compatible = "regulator-fixed";
0132 regulator-name = "es8328-power";
0133 regulator-boot-on;
0134 regulator-min-microvolt = <5000000>;
0135 regulator-max-microvolt = <5000000>;
0136 startup-delay-us = <400000>;
0137 gpio = <&gpio5 17 GPIO_ACTIVE_HIGH>;
0138 enable-active-high;
0139 };
0140
0141 reg_display: regulator-display {
0142 compatible = "regulator-fixed";
0143 regulator-name = "lcd-display-power";
0144 regulator-min-microvolt = <3300000>;
0145 regulator-max-microvolt = <3300000>;
0146 startup-delay-us = <200000>;
0147 gpio = <&gpio5 28 GPIO_ACTIVE_HIGH>;
0148 enable-active-high;
0149 };
0150
0151 reg_lvds_lcd: regulator-lvds-lcd {
0152 compatible = "regulator-fixed";
0153 regulator-name = "lcd-lvds-power";
0154 regulator-min-microvolt = <3300000>;
0155 regulator-max-microvolt = <3300000>;
0156 gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>;
0157 enable-active-high;
0158 };
0159
0160 reg_pcie: regulator-pcie {
0161 compatible = "regulator-fixed";
0162 regulator-name = "pcie-bus-power";
0163 regulator-min-microvolt = <1500000>;
0164 regulator-max-microvolt = <1500000>;
0165 gpio = <&gpio7 12 GPIO_ACTIVE_HIGH>;
0166 enable-active-high;
0167 };
0168
0169 reg_sata: regulator-sata {
0170 compatible = "regulator-fixed";
0171 regulator-name = "sata-power";
0172 regulator-boot-on;
0173 regulator-min-microvolt = <3300000>;
0174 regulator-max-microvolt = <3300000>;
0175 startup-delay-us = <10000>;
0176 gpio = <&gpio3 30 GPIO_ACTIVE_HIGH>;
0177 enable-active-high;
0178 };
0179
0180 reg_usb_otg_vbus: regulator-usb-otg-vbus {
0181 compatible = "regulator-fixed";
0182 regulator-name = "usb_otg_vbus";
0183 regulator-min-microvolt = <5000000>;
0184 regulator-max-microvolt = <5000000>;
0185 enable-active-high;
0186 };
0187
0188 sound {
0189 compatible = "fsl,imx-audio-es8328";
0190 model = "imx-audio-es8328";
0191 ssi-controller = <&ssi1>;
0192 audio-codec = <&codec>;
0193 audio-amp-supply = <®_audio_codec>;
0194 jack-gpio = <&gpio5 15 GPIO_ACTIVE_HIGH>;
0195 audio-routing =
0196 "Speaker", "LOUT2",
0197 "Speaker", "ROUT2",
0198 "Speaker", "audio-amp",
0199 "Headphone", "ROUT1",
0200 "Headphone", "LOUT1",
0201 "LINPUT1", "Mic Jack",
0202 "RINPUT1", "Mic Jack",
0203 "Mic Jack", "Mic Bias";
0204 mux-int-port = <0x1>;
0205 mux-ext-port = <0x3>;
0206 };
0207 };
0208
0209 &audmux {
0210 pinctrl-names = "default";
0211 pinctrl-0 = <&pinctrl_audmux_novena>;
0212 status = "okay";
0213 };
0214
0215 &ecspi3 {
0216 pinctrl-names = "default";
0217 pinctrl-0 = <&pinctrl_ecspi3_novena>;
0218 status = "okay";
0219 };
0220
0221 &fec {
0222 pinctrl-names = "default";
0223 pinctrl-0 = <&pinctrl_enet_novena>;
0224 phy-mode = "rgmii";
0225 phy-handle = <ðphy>;
0226 phy-reset-gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
0227 status = "okay";
0228
0229 mdio {
0230 #address-cells = <1>;
0231 #size-cells = <0>;
0232
0233 ethphy: ethernet-phy {
0234 compatible = "ethernet-phy-ieee802.3-c22";
0235 rxc-skew-ps = <3000>;
0236 rxdv-skew-ps = <0>;
0237 txc-skew-ps = <3000>;
0238 txen-skew-ps = <0>;
0239 rxd0-skew-ps = <0>;
0240 rxd1-skew-ps = <0>;
0241 rxd2-skew-ps = <0>;
0242 rxd3-skew-ps = <0>;
0243 txd0-skew-ps = <3000>;
0244 txd1-skew-ps = <3000>;
0245 txd2-skew-ps = <3000>;
0246 txd3-skew-ps = <3000>;
0247 };
0248 };
0249 };
0250
0251 &hdmi {
0252 pinctrl-names = "default";
0253 pinctrl-0 = <&pinctrl_hdmi_novena>;
0254 ddc-i2c-bus = <&i2c2>;
0255 status = "okay";
0256 };
0257
0258 &i2c1 {
0259 pinctrl-names = "default";
0260 pinctrl-0 = <&pinctrl_i2c1_novena>;
0261 status = "okay";
0262
0263 accel: mma8452@1c {
0264 compatible = "fsl,mma8452";
0265 reg = <0x1c>;
0266 };
0267
0268 rtc: pcf8523@68 {
0269 compatible = "nxp,pcf8523";
0270 reg = <0x68>;
0271 };
0272
0273 sbs_battery: bq20z75@b {
0274 compatible = "sbs,sbs-battery";
0275 reg = <0x0b>;
0276 sbs,i2c-retry-count = <50>;
0277 };
0278
0279 touch: stmpe811@44 {
0280 compatible = "st,stmpe811";
0281 reg = <0x44>;
0282 irq-gpio = <&gpio5 13 GPIO_ACTIVE_HIGH>;
0283 id = <0>;
0284 blocks = <0x5>;
0285 irq-trigger = <0x1>;
0286 pinctrl-names = "default";
0287 pinctrl-0 = <&pinctrl_stmpe_novena>;
0288 vio-supply = <®_3p3v>;
0289 vcc-supply = <®_3p3v>;
0290
0291 stmpe_touchscreen {
0292 compatible = "st,stmpe-ts";
0293 st,sample-time = <4>;
0294 st,mod-12b = <1>;
0295 st,ref-sel = <0>;
0296 st,adc-freq = <1>;
0297 st,ave-ctrl = <1>;
0298 st,touch-det-delay = <2>;
0299 st,settling = <2>;
0300 st,fraction-z = <7>;
0301 st,i-drive = <1>;
0302 };
0303 };
0304 };
0305
0306 &i2c2 {
0307 pinctrl-names = "default";
0308 pinctrl-0 = <&pinctrl_i2c2_novena>;
0309 status = "okay";
0310
0311 pmic: pfuze100@8 {
0312 compatible = "fsl,pfuze100";
0313 reg = <0x08>;
0314
0315 regulators {
0316 reg_sw1a: sw1a {
0317 regulator-min-microvolt = <300000>;
0318 regulator-max-microvolt = <1875000>;
0319 regulator-boot-on;
0320 regulator-always-on;
0321 regulator-ramp-delay = <6250>;
0322 };
0323
0324 reg_sw1c: sw1c {
0325 regulator-min-microvolt = <300000>;
0326 regulator-max-microvolt = <1875000>;
0327 regulator-boot-on;
0328 regulator-always-on;
0329 };
0330
0331 reg_sw2: sw2 {
0332 regulator-min-microvolt = <800000>;
0333 regulator-max-microvolt = <3300000>;
0334 regulator-boot-on;
0335 regulator-always-on;
0336 };
0337
0338 reg_sw3a: sw3a {
0339 regulator-min-microvolt = <400000>;
0340 regulator-max-microvolt = <1975000>;
0341 regulator-boot-on;
0342 regulator-always-on;
0343 };
0344
0345 reg_sw3b: sw3b {
0346 regulator-min-microvolt = <400000>;
0347 regulator-max-microvolt = <1975000>;
0348 regulator-boot-on;
0349 regulator-always-on;
0350 };
0351
0352 reg_sw4: sw4 {
0353 regulator-min-microvolt = <800000>;
0354 regulator-max-microvolt = <3300000>;
0355 };
0356
0357 reg_swbst: swbst {
0358 regulator-min-microvolt = <5000000>;
0359 regulator-max-microvolt = <5150000>;
0360 regulator-boot-on;
0361 };
0362
0363 reg_snvs: vsnvs {
0364 regulator-min-microvolt = <1000000>;
0365 regulator-max-microvolt = <3000000>;
0366 regulator-boot-on;
0367 regulator-always-on;
0368 };
0369
0370 reg_vref: vrefddr {
0371 regulator-boot-on;
0372 regulator-always-on;
0373 };
0374
0375 reg_vgen1: vgen1 {
0376 regulator-min-microvolt = <800000>;
0377 regulator-max-microvolt = <1550000>;
0378 };
0379
0380 reg_vgen2: vgen2 {
0381 regulator-min-microvolt = <800000>;
0382 regulator-max-microvolt = <1550000>;
0383 };
0384
0385 reg_vgen3: vgen3 {
0386 regulator-min-microvolt = <1800000>;
0387 regulator-max-microvolt = <3300000>;
0388 };
0389
0390 reg_vgen4: vgen4 {
0391 regulator-min-microvolt = <1800000>;
0392 regulator-max-microvolt = <3300000>;
0393 regulator-always-on;
0394 };
0395
0396 reg_vgen5: vgen5 {
0397 regulator-min-microvolt = <1800000>;
0398 regulator-max-microvolt = <3300000>;
0399 regulator-always-on;
0400 };
0401
0402 reg_vgen6: vgen6 {
0403 regulator-min-microvolt = <1800000>;
0404 regulator-max-microvolt = <3300000>;
0405 regulator-always-on;
0406 };
0407 };
0408 };
0409 };
0410
0411 &i2c3 {
0412 pinctrl-names = "default";
0413 pinctrl-0 = <&pinctrl_i2c3_novena>;
0414 status = "okay";
0415
0416 codec: es8328@11 {
0417 compatible = "everest,es8328";
0418 reg = <0x11>;
0419 DVDD-supply = <®_audio_codec>;
0420 AVDD-supply = <®_audio_codec>;
0421 PVDD-supply = <®_audio_codec>;
0422 HPVDD-supply = <®_audio_codec>;
0423 pinctrl-names = "default";
0424 pinctrl-0 = <&pinctrl_sound_novena>;
0425 clocks = <&clks IMX6QDL_CLK_CKO1>;
0426 assigned-clocks = <&clks IMX6QDL_CLK_CKO>,
0427 <&clks IMX6QDL_CLK_CKO1_SEL>,
0428 <&clks IMX6QDL_CLK_PLL4_AUDIO>,
0429 <&clks IMX6QDL_CLK_CKO1>;
0430 assigned-clock-parents = <&clks IMX6QDL_CLK_CKO1>,
0431 <&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>,
0432 <&clks IMX6QDL_CLK_OSC>,
0433 <&clks IMX6QDL_CLK_CKO1_PODF>;
0434 assigned-clock-rates = <0 0 722534400 22579200>;
0435 };
0436 };
0437
0438 &kpp {
0439 pinctrl-names = "default";
0440 pinctrl-0 = <&pinctrl_kpp_novena>;
0441 linux,keymap = <
0442 MATRIX_KEY(1, 1, KEY_CONFIG)
0443 >;
0444 status = "okay";
0445 };
0446
0447 &ldb {
0448 fsl,dual-channel;
0449 status = "okay";
0450
0451 lvds-channel@0 {
0452 fsl,data-mapping = "jeida";
0453 fsl,data-width = <24>;
0454 fsl,panel = <&panel>;
0455 status = "okay";
0456 };
0457 };
0458
0459 &pcie {
0460 pinctrl-names = "default";
0461 pinctrl-0 = <&pinctrl_pcie_novena>;
0462 reset-gpio = <&gpio3 29 GPIO_ACTIVE_LOW>;
0463 vpcie-supply = <®_pcie>;
0464 status = "okay";
0465 };
0466
0467 &pwm1 {
0468 #pwm-cells = <2>;
0469 status = "okay";
0470 };
0471
0472 &sata {
0473 target-supply = <®_sata>;
0474 fsl,transmit-level-mV = <1025>;
0475 fsl,transmit-boost-mdB = <0>;
0476 fsl,transmit-atten-16ths = <8>;
0477 status = "okay";
0478 };
0479
0480 &ssi1 {
0481 status = "okay";
0482 };
0483
0484 &uart2 {
0485 pinctrl-names = "default";
0486 pinctrl-0 = <&pinctrl_uart2_novena>;
0487 status = "okay";
0488 };
0489
0490 &uart3 {
0491 pinctrl-names = "default";
0492 pinctrl-0 = <&pinctrl_uart3_novena>;
0493 status = "okay";
0494 };
0495
0496 &uart4 {
0497 pinctrl-names = "default";
0498 pinctrl-0 = <&pinctrl_uart4_novena>;
0499 status = "okay";
0500 };
0501
0502 &usbotg {
0503 vbus-supply = <®_usb_otg_vbus>;
0504 dr_mode = "otg";
0505 pinctrl-names = "default";
0506 pinctrl-0 = <&pinctrl_usbotg_novena>;
0507 disable-over-current;
0508 status = "okay";
0509 };
0510
0511 &usbh1 {
0512 vbus-supply = <®_swbst>;
0513 status = "okay";
0514 };
0515
0516 &usdhc2 {
0517 pinctrl-names = "default";
0518 pinctrl-0 = <&pinctrl_usdhc2_novena>;
0519 cd-gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
0520 wp-gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
0521 bus-width = <4>;
0522 status = "okay";
0523 };
0524
0525 &usdhc3 {
0526 pinctrl-names = "default";
0527 pinctrl-0 = <&pinctrl_usdhc3_novena>;
0528 bus-width = <4>;
0529 non-removable;
0530 status = "okay";
0531 };
0532
0533 &iomuxc {
0534 pinctrl_audmux_novena: audmuxgrp-novena {
0535 fsl,pins = <
0536 MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0
0537 MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0
0538 MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0
0539 MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0
0540 >;
0541 };
0542
0543 pinctrl_backlight_novena: backlightgrp-novena {
0544 fsl,pins = <
0545 MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0
0546 MX6QDL_PAD_CSI0_DAT10__GPIO5_IO28 0x1b0b1
0547 MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x1b0b1
0548 >;
0549 };
0550
0551 pinctrl_ecspi3_novena: ecspi3grp-novena {
0552 fsl,pins = <
0553 MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1
0554 MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1
0555 MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1
0556 >;
0557 };
0558
0559 pinctrl_enet_novena: enetgrp-novena {
0560 fsl,pins = <
0561 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
0562 MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0
0563 MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b020
0564 MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b028
0565 MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b028
0566 MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b028
0567 MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b028
0568 MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b028
0569 MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0
0570 MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030
0571 MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030
0572 MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030
0573 MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030
0574 MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030
0575 MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030
0576 MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
0577 /* Ethernet reset */
0578 MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x1b0b1
0579 >;
0580 };
0581
0582 pinctrl_fpga_gpio: fpgagpiogrp-novena {
0583 fsl,pins = <
0584 /* FPGA power */
0585 MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b1
0586 /* Reset */
0587 MX6QDL_PAD_DISP0_DAT13__GPIO5_IO07 0x1b0b1
0588 /* FPGA GPIOs */
0589 MX6QDL_PAD_EIM_DA0__GPIO3_IO00 0x1b0b1
0590 MX6QDL_PAD_EIM_DA1__GPIO3_IO01 0x1b0b1
0591 MX6QDL_PAD_EIM_DA2__GPIO3_IO02 0x1b0b1
0592 MX6QDL_PAD_EIM_DA3__GPIO3_IO03 0x1b0b1
0593 MX6QDL_PAD_EIM_DA4__GPIO3_IO04 0x1b0b1
0594 MX6QDL_PAD_EIM_DA5__GPIO3_IO05 0x1b0b1
0595 MX6QDL_PAD_EIM_DA6__GPIO3_IO06 0x1b0b1
0596 MX6QDL_PAD_EIM_DA7__GPIO3_IO07 0x1b0b1
0597 MX6QDL_PAD_EIM_DA8__GPIO3_IO08 0x1b0b1
0598 MX6QDL_PAD_EIM_DA9__GPIO3_IO09 0x1b0b1
0599 MX6QDL_PAD_EIM_DA10__GPIO3_IO10 0x1b0b1
0600 MX6QDL_PAD_EIM_DA11__GPIO3_IO11 0x1b0b1
0601 MX6QDL_PAD_EIM_DA12__GPIO3_IO12 0x1b0b1
0602 MX6QDL_PAD_EIM_DA13__GPIO3_IO13 0x1b0b1
0603 MX6QDL_PAD_EIM_DA14__GPIO3_IO14 0x1b0b1
0604 MX6QDL_PAD_EIM_DA15__GPIO3_IO15 0x1b0b1
0605 MX6QDL_PAD_EIM_A16__GPIO2_IO22 0x1b0b1
0606 MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x1b0b1
0607 MX6QDL_PAD_EIM_A18__GPIO2_IO20 0x1b0b1
0608 MX6QDL_PAD_EIM_CS0__GPIO2_IO23 0x1b0b1
0609 MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x1b0b1
0610 MX6QDL_PAD_EIM_LBA__GPIO2_IO27 0x1b0b1
0611 MX6QDL_PAD_EIM_OE__GPIO2_IO25 0x1b0b1
0612 MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x1b0b1
0613 MX6QDL_PAD_EIM_WAIT__GPIO5_IO00 0x1b0b1
0614 MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0x1b0b1
0615 >;
0616 };
0617
0618 pinctrl_fpga_eim: fpgaeimgrp-novena {
0619 fsl,pins = <
0620 /* FPGA power */
0621 MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b1
0622 /* Reset */
0623 MX6QDL_PAD_DISP0_DAT13__GPIO5_IO07 0x1b0b1
0624 /* FPGA GPIOs */
0625 MX6QDL_PAD_EIM_DA0__EIM_AD00 0xb0f1
0626 MX6QDL_PAD_EIM_DA1__EIM_AD01 0xb0f1
0627 MX6QDL_PAD_EIM_DA2__EIM_AD02 0xb0f1
0628 MX6QDL_PAD_EIM_DA3__EIM_AD03 0xb0f1
0629 MX6QDL_PAD_EIM_DA4__EIM_AD04 0xb0f1
0630 MX6QDL_PAD_EIM_DA5__EIM_AD05 0xb0f1
0631 MX6QDL_PAD_EIM_DA6__EIM_AD06 0xb0f1
0632 MX6QDL_PAD_EIM_DA7__EIM_AD07 0xb0f1
0633 MX6QDL_PAD_EIM_DA8__EIM_AD08 0xb0f1
0634 MX6QDL_PAD_EIM_DA9__EIM_AD09 0xb0f1
0635 MX6QDL_PAD_EIM_DA10__EIM_AD10 0xb0f1
0636 MX6QDL_PAD_EIM_DA11__EIM_AD11 0xb0f1
0637 MX6QDL_PAD_EIM_DA12__EIM_AD12 0xb0f1
0638 MX6QDL_PAD_EIM_DA13__EIM_AD13 0xb0f1
0639 MX6QDL_PAD_EIM_DA14__EIM_AD14 0xb0f1
0640 MX6QDL_PAD_EIM_DA15__EIM_AD15 0xb0f1
0641 MX6QDL_PAD_EIM_A16__EIM_ADDR16 0xb0f1
0642 MX6QDL_PAD_EIM_A17__EIM_ADDR17 0xb0f1
0643 MX6QDL_PAD_EIM_A18__EIM_ADDR18 0xb0f1
0644 MX6QDL_PAD_EIM_CS0__EIM_CS0_B 0xb0f1
0645 MX6QDL_PAD_EIM_CS1__EIM_CS1_B 0xb0f1
0646 MX6QDL_PAD_EIM_LBA__EIM_LBA_B 0xb0f1
0647 MX6QDL_PAD_EIM_OE__EIM_OE_B 0xb0f1
0648 MX6QDL_PAD_EIM_RW__EIM_RW 0xb0f1
0649 MX6QDL_PAD_EIM_WAIT__EIM_WAIT_B 0xb0f1
0650 MX6QDL_PAD_EIM_BCLK__EIM_BCLK 0xb0f1
0651 >;
0652 };
0653
0654 pinctrl_gpio_keys_novena: gpiokeysgrp-novena {
0655 fsl,pins = <
0656 /* User button */
0657 MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0
0658 /* PCIe Wakeup */
0659 MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1f0e0
0660 /* Lid switch */
0661 MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x1b0b0
0662 >;
0663 };
0664
0665 pinctrl_hdmi_novena: hdmigrp-novena {
0666 fsl,pins = <
0667 MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
0668 MX6QDL_PAD_EIM_A24__GPIO5_IO04 0x1b0b1
0669 >;
0670 };
0671
0672 pinctrl_i2c1_novena: i2c1grp-novena {
0673 fsl,pins = <
0674 MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1
0675 MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1
0676 >;
0677 };
0678
0679 pinctrl_i2c2_novena: i2c2grp-novena {
0680 fsl,pins = <
0681 MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
0682 MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001b8b1
0683 >;
0684 };
0685
0686 pinctrl_i2c3_novena: i2c3grp-novena {
0687 fsl,pins = <
0688 MX6QDL_PAD_EIM_D17__I2C3_SCL 0x4001b8b1
0689 MX6QDL_PAD_EIM_D18__I2C3_SDA 0x4001b8b1
0690 >;
0691 };
0692
0693 pinctrl_kpp_novena: kppgrp-novena {
0694 fsl,pins = <
0695 /* Front panel button */
0696 MX6QDL_PAD_KEY_ROW1__KEY_ROW1 0x1b0b1
0697 /* Fake column driver, not connected */
0698 MX6QDL_PAD_KEY_COL1__KEY_COL1 0x1b0b1
0699 >;
0700 };
0701
0702 pinctrl_leds_novena: ledsgrp-novena {
0703 fsl,pins = <
0704 MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x1b0b1
0705 >;
0706 };
0707
0708 pinctrl_pcie_novena: pciegrp-novena {
0709 fsl,pins = <
0710 /* Reset */
0711 MX6QDL_PAD_EIM_D29__GPIO3_IO29 0x1b0b1
0712 /* Power On */
0713 MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b1
0714 /* Wifi kill */
0715 MX6QDL_PAD_EIM_A22__GPIO2_IO16 0x1b0b1
0716 >;
0717 };
0718
0719 pinctrl_sata_novena: satagrp-novena {
0720 fsl,pins = <
0721 MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x1b0b1
0722 >;
0723 };
0724
0725 pinctrl_senoko_novena: senokogrp-novena {
0726 fsl,pins = <
0727 /* Senoko IRQ line */
0728 MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x13048
0729 /* Senoko reset line */
0730 MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x1b0b1
0731 >;
0732 };
0733
0734 pinctrl_sound_novena: soundgrp-novena {
0735 fsl,pins = <
0736 /* Audio power regulator */
0737 MX6QDL_PAD_DISP0_DAT23__GPIO5_IO17 0x1b0b1
0738 /* Headphone plug */
0739 MX6QDL_PAD_DISP0_DAT21__GPIO5_IO15 0x1b0b1
0740 MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x000b0
0741 >;
0742 };
0743
0744 pinctrl_stmpe_novena: stmpegrp-novena {
0745 fsl,pins = <
0746 /* Touchscreen interrupt */
0747 MX6QDL_PAD_DISP0_DAT19__GPIO5_IO13 0x1b0b1
0748 >;
0749 };
0750
0751 pinctrl_uart2_novena: uart2grp-novena {
0752 fsl,pins = <
0753 MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
0754 MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
0755 >;
0756 };
0757
0758 pinctrl_uart3_novena: uart3grp-novena {
0759 fsl,pins = <
0760 MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
0761 MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
0762 >;
0763 };
0764
0765 pinctrl_uart4_novena: uart4grp-novena {
0766 fsl,pins = <
0767 MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1
0768 MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1
0769 >;
0770 };
0771
0772 pinctrl_usbotg_novena: usbotggrp-novena {
0773 fsl,pins = <
0774 MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
0775 >;
0776 };
0777
0778 pinctrl_usdhc2_novena: usdhc2grp-novena {
0779 fsl,pins = <
0780 MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170f9
0781 MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100f9
0782 MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170f9
0783 MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170f9
0784 MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170f9
0785 MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170f9
0786 /* Write protect */
0787 MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b1
0788 /* Card detect */
0789 MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1b0b1
0790 >;
0791 };
0792
0793 pinctrl_usdhc3_novena: usdhc3grp-novena {
0794 fsl,pins = <
0795 MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9
0796 MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9
0797 MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9
0798 MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9
0799 MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9
0800 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9
0801 >;
0802 };
0803 };