+++ /dev/null
-/*
- * Copyright 2012 Freescale Semiconductor, Inc.
- * Copyright 2011 Linaro Ltd.
- *
- * The code contained herein is licensed under the GNU General Public
- * License. You may obtain a copy of the GNU General Public License
- * Version 2 or later at the following locations:
- *
- * http://www.opensource.org/licenses/gpl-license.html
- * http://www.gnu.org/copyleft/gpl.html
- */
-
-/dts-v1/;
-
-#include "imx6q.dtsi"
-#include "imx6qdl-advantech.dtsi"
-
-/ {
- model = "Freescale i.MX6 Quad RSB4411 A1";
- compatible = "fsl,imx6q-sabresd", "fsl,imx6q";
-
- board {
- compatible = "proc-board";
- board-type = "RSB-4411 A1";
- board-cpu = "DualQuad";
- };
-
- regulators {
- reg_usb_otg_vbus: usb_otg_vbus {
- compatible = "regulator-fixed";
- regulator-name = "usb_otg_vbus";
- regulator-min-microvolt = <5000000>;
- regulator-max-microvolt = <5000000>;
- gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>;
- enable-active-high;
- };
- };
- aliases {
- mmc2 = &usdhc1;
- mmc1 = &usdhc3;
- mmc0 = &usdhc4;
- };
-
- gpio-keys {
- compatible = "gpio-keys";
- #address-cells = <1>;
- #size-cells = <0>;
- label = "gpio-keys";
- gpio01 {
- label = "gpio01";
- gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_A>;
- gpio-key,wakeup;
- };
- gpio02 {
- label = "gpio02";
- gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_B>;
- gpio-key,wakeup;
- };
- gpio03 {
- label = "gpio03";
- gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_C>;
- gpio-key,wakeup;
- };
- gpio04 {
- label = "gpio04";
- gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_D>;
- gpio-key,wakeup;
- };
- gpio05 {
- label = "gpio05";
- gpios = <&gpio6 31 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_E>;
- gpio-key,wakeup;
- };
- gpio06 {
- label = "gpio06";
- gpios = <&gpio3 30 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_F>;
- gpio-key,wakeup;
- };
- gpio07 {
- label = "gpio07";
- gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_G>;
- gpio-key,wakeup;
- };
- gpio08 {
- label = "gpio08";
- gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_H>;
- gpio-key,wakeup;
- };
- gpio09 {
- label = "gpio09";
- gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_I>;
- gpio-key,wakeup;
- };
- gpio10 {
- label = "gpio10";
- gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_J>;
- gpio-key,wakeup;
- };
- gpio11 {
- label = "gpio11";
- gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_K>;
- gpio-key,wakeup;
- };
- gpio12 {
- label = "gpio12";
- gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_L>;
- gpio-key,wakeup;
- };
- gpio13 {
- label = "gpio13";
- gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_M>;
- gpio-key,wakeup;
- };
- gpio14 {
- label = "gpio14";
- gpios = <&gpio6 9 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_N>;
- gpio-key,wakeup;
- };
- gpio15 {
- label = "gpio15";
- gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_O>;
- gpio-key,wakeup;
- };
- gpio16 {
- label = "gpio16";
- gpios = <&gpio6 16 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_P>;
- gpio-key,wakeup;
- };
- gpio17 {
- label = "gpio17";
- gpios = <&gpio6 7 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_Q>;
- gpio-key,wakeup;
- };
- gpio18 {
- label = "gpio18";
- gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_R>;
- gpio-key,wakeup;
- };
- gpio19 {
- label = "gpio19";
- gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_S>;
- gpio-key,wakeup;
- };
- gpio20 {
- label = "gpio20";
- gpios = <&gpio6 8 GPIO_ACTIVE_LOW>;
- linux,code = <KEY_T>;
- gpio-key,wakeup;
- };
- };
-
-};
-
-&audio_sgtl5000 {
- audio-codec = <&codec>;
- mux-ext-port = <4>;
- status = "okay";
-};
-
-&bkl {
- lvds-bkl-enable = <&gpio4 6 1>;
- lvds-vcc-enable = <&gpio4 7 1>;
- pwms = <&pwm2 0 5000000>;
- status = "okay";
-};
-
-&ecspi2 {
- fsl,spi-num-chipselects = <1>;
- cs-gpios = <&gpio2 26 0>;
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_ecspi2_cs_0 &pinctrl_ecspi2_1>;
- status = "okay";
-
- m25p80@0 {
- #address-cells = <1>;
- #size-cells = <1>;
- compatible = "micron,n25qba16";
- spi-max-frequency = <20000000>;
- reg = <0>;
- };
-};
-
-
-
-&can1 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_flexcan1_1>;
- status = "okay";
-};
-
-&can2 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_flexcan2_1>;
- status = "okay";
-};
-
-&i2c1 {
-
- codec: sgtl5000@0a {
- compatible = "fsl,sgtl5000";
- reg = <0x0a>;
- clocks = <&clks 201>;
- VDDA-supply = <®_2p5v>;
- VDDIO-supply = <®_3p3v>;
- mclk = <16000000>;
- mclk_source = <0>;
- };
-
- s35390a@30 {
- compatible = "fsl,s35390a";
- reg = <0x30>;
- };
-
- wdt@29 {
- compatible = "fsl,adv-wdt-i2c";
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_wdt_en_1 &pinctrl_wdt_ping_1>;
- status = "okay";
- wdt-en = <&gpio2 5 0>;
- wdt-ping = <&gpio1 9 0>;
- reg = <0x29>;
- };
-
- ov5640_mipi: ov5640_mipi@3c {
- compatible = "ovti,ov564x_mipi";
- reg = <0x3c>;
- clocks = <&clks 201>;
- clock-names = "csi_mclk";
- DOVDD-supply = <®_3p3v>; /* 3.3v, enabled via 2.8 VGEN6 */
- AVDD-supply = <®_3p3v>; /* 1.8v */
- DVDD-supply = <®_3p3v>; /* 1.8v */
- PVDD-supply = <®_3p3v>; /* 1.8v */
- pwn-gpios = <&gpio1 2 1>; /* active low: SD1_CLK */
- rst-gpios = <&gpio1 5 0>; /* active high: SD1_DAT2 */
- csi_id = <1>;
- mclk = <24000000>;
- mclk_source = <0>;
- };
-
- 24c32@51 {
- compatible = "fsl,24c32";
- reg = <0x51>;
- };
-
-
-};
-
-&i2c2 {
-
- hdmi_edid: edid@50 {
- compatible = "fsl,imx6-hdmi-i2c";
- reg = <0x50>;
- };
-};
-
-&i2c3 {
-
- ch7055@76 {
- compatible = "fsl,ch7055";
- reg = <0x76>;
- };
-
- mxc_vga_i2c@50 {
- compatible = "fsl,mxc_vga_i2c";
- reg = <0x50>;
- };
-
- 24c32@51 {
- compatible = "fsl,24c32";
- reg = <0x51>;
- };
-};
-
-&iomuxc {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_hog_1 &pinctrl_hog_2>;
-
- hog {
- pinctrl_hog_1: hoggrp-1 {
- fsl,pins = <
- MX6QDL_PAD_SD3_DAT4__GPIO7_IO01 0x80000000 /* SD3_CD */
- MX6QDL_PAD_SD3_DAT5__GPIO7_IO00 0x80000000 /* SD3_WP */
- MX6QDL_PAD_SD2_CMD__GPIO1_IO11 0x80000000 /* SDIO RST */
- MX6QDL_PAD_SD2_CLK__GPIO1_IO10 0x80000000 /* SDIO WAKE */
- MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x80000000 /* M.2 WLAN OFF */
- MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x80000000 /* M.2 BT OFF */
- MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x80000000 /* UART 5 WAKE */
- MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0 /* AUDIO CLK */
- >;
- };
- pinctrl_hog_2: hoggrp-2 {
- fsl,pins = <
- MX6QDL_PAD_ENET_RXD0__GPIO1_IO27 0x80000000 /* GPIO1 */
- MX6QDL_PAD_ENET_TXD1__GPIO1_IO29 0x80000000 /* GPIO2 */
- MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x80000000 /* GPIO3 */
- MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x80000000 /* GPIO4 */
- MX6QDL_PAD_EIM_BCLK__GPIO6_IO31 0x80000000 /* GPIO5 */
- MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x80000000 /* GPIO6 */
- MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x80000000 /* GPIO7 */
- MX6QDL_PAD_EIM_D21__GPIO3_IO21 0x80000000 /* GPIO8 */
- MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x80000000 /* GPIO9 */
- MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x80000000 /* GPI10 */
- MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x80000000 /* GPI11 */
- MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x80000000 /* GPI12 */
- MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x80000000 /* GPI13 */
- MX6QDL_PAD_NANDF_WP_B__GPIO6_IO09 0x80000000 /* GPI14 */
- MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x80000000 /* GPI15 */
- MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x80000000 /* GPI16 */
- MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x80000000 /* GPI17 */
- MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x80000000 /* GPI18 */
- MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x80000000 /* GPI19 */
- MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x80000000 /* GPI20 */
- >;
- };
- };
-
- mipi-csi {
- pinctrl_mipi_csi_1: mipi_csi1grp-1{
- fsl,pins = <
- MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x80000000 /* GPIO1=MIPICSI_PWN */
- MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x80000000 /* GPIO3=MIPICSI_RST */
- MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x80000000 /* CSI0_MCLK */
- >;
- };
- };
-
- pcie {
- pinctrl_pcie_1: pciegrp-1 {
- fsl,pins = <
- MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x80000000 /* 3G_RF_OFF */
- >;
- };
- };
-
- pwm {
- pinctrl_pwm2_1: pwm2grp-1 {
- fsl,pins = <
- MX6QDL_PAD_GPIO_1__PWM2_OUT 0x1b0b1
- >;
- };
- };
-
- spi1 {
- pinctrl_ecspi1_cs_0: ecspi1_cs_grp-0 {
- fsl,pins = <
- MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x80000000 /* ECSPI1_CS0 */
- >;
- };
- };
-
- spi2 {
- pinctrl_ecspi2_cs_0: ecspi2_cs_grp-0 {
- fsl,pins = <
- MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x80000000 /* ECSPI2_CS0 */
- >;
- };
- pinctrl_ecspi2_1: ecspi2grp-1 {
- fsl,pins = <
- MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x170f1 /* ECSPI2_MISO */
- MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x170f1 /* ECSPI2_CLK */
- MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x1B008 /* ECSPI2_MOSI */
- >;
- };
- };
-
- uart2 {
- pinctrl_uart2_3: uart2grp-3 { /* DCE mode */
- fsl,pins = <
- MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1
- MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1
- MX6QDL_PAD_EIM_D28__UART2_CTS_B 0x1b0b1
- MX6QDL_PAD_EIM_D29__UART2_RTS_B 0x1b0b1
- >;
- };
- };
-
- uart3 {
- pinctrl_uart3_1: uart3grp-1 {
- fsl,pins = <
- MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1
- MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1
- >;
- };
- };
-
- uart4 {
- pinctrl_uart4_1: uart4grp-1 {
- fsl,pins = <
- MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1
- MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1
- >;
- };
- };
-
- uart5 {
- pinctrl_uart5_2: uart5grp-1 {
- fsl,pins = <
- MX6QDL_PAD_CSI0_DAT14__UART5_TX_DATA 0x1b0b1
- MX6QDL_PAD_CSI0_DAT15__UART5_RX_DATA 0x1b0b1
- MX6QDL_PAD_CSI0_DAT18__UART5_CTS_B 0x1b0b1
- MX6QDL_PAD_CSI0_DAT19__UART5_RTS_B 0x1b0b1
- >;
- };
- };
-
- wdt{
- pinctrl_wdt_en_1: wdt_engrp-1 {
- fsl,pins = <
- MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x80000000
- >;
- };
- pinctrl_wdt_ping_1: wdt_pinggrp-1 {
- fsl,pins = <
- MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x80000000
- >;
- };
- };
-
- usbotg {
- pinctrl_usbotg_3: usbh1_grp-3 {
- fsl,pins = <
- MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x80000000 /* USB_OTG_PWR */
- >;
- };
- };
-
-};
-
-&mipi_csi {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_mipi_csi_1>;
- status = "okay";
-};
-
-&audmux {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_audmux_1>;
- status = "okay";
-};
-
-&ldb {
- status = "okay";
- split-mode; /* dual-channel setting */
-
- lvds-channel@0 {
- fsl,data-mapping = "spwg";
- fsl,data-width = <24>;
- crtc = "ipu2-di0";
- primary;
- status = "okay";
-
- display-timings {
- native-mode = <&timingauo>;
-
- timingauo: b101uan021 {
- clock-frequency = <170000000>;
- hactive = <1920>;
- vactive = <1200>;
- hback-porch = <0>;
- hfront-porch = <0>;
- vback-porch = <0>;
- vfront-porch = <0>;
- hsync-len = <138>;
- vsync-len = <12>;
- };
-
- };
- };
-
- lvds-channel@1 {
- fsl,data-mapping = "spwg";
- fsl,data-width = <24>;
- crtc = "ipu1-di1";
- /* crtc = "ipu1-di0"; */ /* dual-channel setting */
- status = "okay";
-/*
- display-timings {
- native-mode = <&timing01>;
- timing01: g070vw01v0 {
- clock-frequency = <29500000>;
- hactive = <800>;
- vactive = <480>;
- hback-porch = <96>;
- hfront-porch = <24>;
- vback-porch = <3>;
- vfront-porch = <10>;
- hsync-len = <72>;
- vsync-len = <7>;
- };
-
- //SI Test panel
- timing11: g150xgel04 {
- clock-frequency = <63500000>;
- hactive = <1024>;
- vactive = <768>;
- hback-porch = <152>;
- hfront-porch = <48>;
- vback-porch = <3>;
- vfront-porch = <23>;
- hsync-len = <104>;
- vsync-len = <4>;
- };
-
- timing21:g150xgel05 {
- clock-frequency = <65000000>;
- hactive = <1024>;
- vactive = <768>;
- hback-porch = <220>;
- hfront-porch = <40>;
- vback-porch = <21>;
- vfront-porch = <7>;
- hsync-len = <60>;
- vsync-len = <10>;
- };
- };
-*/
- };
-};
-
-&mxcfb1 {
- status = "okay";
-};
-
-&mxcfb2 {
- status = "okay";
-};
-
-&mxcfb3 {
- status = "okay";
-};
-
-&mxcfb4 {
- status = "okay";
-};
-
-&pcie {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_pcie_1>;
- disable-gpio = <&gpio6 15 0>;
- status = "okay";
-};
-
-&pwm2 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_pwm2_1>;
- status = "okay";
-};
-
-&uart1 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_uart1_1>;
- status = "okay";
-};
-
-&uart2 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_uart2_3>;
- fsl,uart-has-rtscts;
- status = "okay";
-};
-
-&uart3 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_uart3_1>;
- status = "okay";
-};
-
-&uart4 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_uart4_1>;
- status = "okay";
-};
-
-&uart5 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_uart5_2>;
- status = "okay";
-};
-
-&sata {
- status = "okay";
-};
-
-&usbh1 {
- status = "okay";
-};
-
-&usbotg {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_usbotg_2 &pinctrl_usbotg_3>;
- vbus-supply = <®_usb_otg_vbus>;
- imx6-usb-charger-detection;
- status = "okay";
-};
-
-&usdhc1 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_usdhc1_1>;
- bus-width = <4>;
- status = "okay";
-};
-
-&usdhc3 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_usdhc3_2>;
- bus-width = <4>;
- cd-gpios = <&gpio7 1 0>;
- wp-gpios = <&gpio7 0 0>;
- status = "okay";
-};
-
-&usdhc4 {
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_usdhc4_1>;
- bus-width = <8>;
- non-removable;
- no-1-8-v;
- keep-power-in-suspend;
- status = "okay";
-};
-
-&v4l2_capture_1 {
- status = "okay";
-};
-
-&wdog1 {
- status = "disabled";
-};
--- /dev/null
+diff --git a/arch/arm/boot/dts/imx6q-rsb4411-a1.dts b/arch/arm/boot/dts/imx6q-rsb4411-a1.dts
+index 777c654f4..31e63f5dc 100755
+--- a/arch/arm/boot/dts/imx6q-rsb4411-a1.dts
++++ b/arch/arm/boot/dts/imx6q-rsb4411-a1.dts
+@@ -24,7 +24,7 @@
+ board-type = "RSB-4411 A1";
+ board-cpu = "DualQuad";
+ };
+-
++
+ regulators {
+ reg_usb_otg_vbus: usb_otg_vbus {
+ compatible = "regulator-fixed";
+@@ -41,6 +41,132 @@
+ mmc0 = &usdhc4;
+ };
+
++ gpio-keys {
++ compatible = "gpio-keys";
++ #address-cells = <1>;
++ #size-cells = <0>;
++ label = "gpio-keys";
++ gpio01 {
++ label = "gpio01";
++ gpios = <&gpio1 27 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY1>;
++ gpio-key,wakeup;
++ };
++ gpio02 {
++ label = "gpio02";
++ gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY2>;
++ gpio-key,wakeup;
++ };
++ gpio03 {
++ label = "gpio03";
++ gpios = <&gpio1 25 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY3>;
++ gpio-key,wakeup;
++ };
++ gpio04 {
++ label = "gpio04";
++ gpios = <&gpio1 30 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY4>;
++ gpio-key,wakeup;
++ };
++ gpio05 {
++ label = "gpio05";
++ gpios = <&gpio6 31 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY5>;
++ gpio-key,wakeup;
++ };
++ gpio06 {
++ label = "gpio06";
++ gpios = <&gpio3 30 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY6>;
++ gpio-key,wakeup;
++ };
++ gpio07 {
++ label = "gpio07";
++ gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY7>;
++ gpio-key,wakeup;
++ };
++ gpio08 {
++ label = "gpio08";
++ gpios = <&gpio3 21 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY8>;
++ gpio-key,wakeup;
++ };
++ gpio09 {
++ label = "gpio09";
++ gpios = <&gpio5 2 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY9>;
++ gpio-key,wakeup;
++ };
++ gpio10 {
++ label = "gpio10";
++ gpios = <&gpio3 20 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY10>;
++ gpio-key,wakeup;
++ };
++ gpio11 {
++ label = "gpio11";
++ gpios = <&gpio3 23 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY11>;
++ gpio-key,wakeup;
++ };
++ gpio12 {
++ label = "gpio12";
++ gpios = <&gpio6 11 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY12>;
++ gpio-key,wakeup;
++ };
++ gpio13 {
++ label = "gpio13";
++ gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY13>;
++ gpio-key,wakeup;
++ };
++ gpio14 {
++ label = "gpio14";
++ gpios = <&gpio6 9 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY14>;
++ gpio-key,wakeup;
++ };
++ gpio15 {
++ label = "gpio15";
++ gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY15>;
++ gpio-key,wakeup;
++ };
++ gpio16 {
++ label = "gpio16";
++ gpios = <&gpio6 16 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY16>;
++ gpio-key,wakeup;
++ };
++ gpio17 {
++ label = "gpio17";
++ gpios = <&gpio6 7 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY17>;
++ gpio-key,wakeup;
++ };
++ gpio18 {
++ label = "gpio18";
++ gpios = <&gpio2 4 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY18>;
++ gpio-key,wakeup;
++ };
++ gpio19 {
++ label = "gpio19";
++ gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY19>;
++ gpio-key,wakeup;
++ };
++ gpio20 {
++ label = "gpio20";
++ gpios = <&gpio6 8 GPIO_ACTIVE_LOW>;
++ linux,code = <BTN_TRIGGER_HAPPY20>;
++ gpio-key,wakeup;
++ };
++ };
+
+ };
+
+@@ -113,7 +239,7 @@
+ wdt-ping = <&gpio1 9 0>;
+ reg = <0x29>;
+ };
+-
++
+ ov5640_mipi: ov5640_mipi@3c {
+ compatible = "ovti,ov564x_mipi";
+ reg = <0x3c>;
+@@ -333,6 +459,81 @@
+
+ &ldb {
+ status = "okay";
++ split-mode; /* dual-channel setting */
++
++ lvds-channel@0 {
++ fsl,data-mapping = "spwg";
++ fsl,data-width = <24>;
++ crtc = "ipu2-di0";
++ primary;
++ status = "okay";
++
++ display-timings {
++ native-mode = <&timingauo>;
++
++ timingauo: b101uan021 {
++ clock-frequency = <170000000>;
++ hactive = <1920>;
++ vactive = <1200>;
++ hback-porch = <0>;
++ hfront-porch = <0>;
++ vback-porch = <0>;
++ vfront-porch = <0>;
++ hsync-len = <138>;
++ vsync-len = <12>;
++ };
++
++ };
++ };
++
++ lvds-channel@1 {
++ fsl,data-mapping = "spwg";
++ fsl,data-width = <24>;
++ crtc = "ipu1-di1";
++ /* crtc = "ipu1-di0"; */ /* dual-channel setting */
++ status = "okay";
++/*
++ display-timings {
++ native-mode = <&timing01>;
++ timing01: g070vw01v0 {
++ clock-frequency = <29500000>;
++ hactive = <800>;
++ vactive = <480>;
++ hback-porch = <96>;
++ hfront-porch = <24>;
++ vback-porch = <3>;
++ vfront-porch = <10>;
++ hsync-len = <72>;
++ vsync-len = <7>;
++ };
++
++ //SI Test panel
++ timing11: g150xgel04 {
++ clock-frequency = <63500000>;
++ hactive = <1024>;
++ vactive = <768>;
++ hback-porch = <152>;
++ hfront-porch = <48>;
++ vback-porch = <3>;
++ vfront-porch = <23>;
++ hsync-len = <104>;
++ vsync-len = <4>;
++ };
++
++ timing21:g150xgel05 {
++ clock-frequency = <65000000>;
++ hactive = <1024>;
++ vactive = <768>;
++ hback-porch = <220>;
++ hfront-porch = <40>;
++ vback-porch = <21>;
++ vfront-porch = <7>;
++ hsync-len = <60>;
++ vsync-len = <10>;
++ };
++ };
++*/
++ };
+ };
+
+ &mxcfb1 {