Commit aae31813 authored by Arnd Bergmann's avatar Arnd Bergmann

Merge tag 'imx-dt-4.6' of...

Merge tag 'imx-dt-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/dt2

Merge "i.MX device tree updates for 4.6" from Shawn Guo:

- New i.MX6 board support: NXP/Freescale imx6qp boards, Advantech/GE,
  Uniwest evi, Engicam IMX6 Q7, Toradex Apalis SoM and Ixora carrier
  boards
- Relicense vf610 dts files under GPLv2/X11
- A patch series from Stefan updating Vybrid Colibri board support with
  PMU, regulators and other devices enabled
- Correct PWM pinmux for Ventana boards and add more pinmux for GW54xx
- Clean up imx6q-tbs2910 dts file and add SATA PHY configuration
- A series from Russell cleaning up hummingboard dts files
- A series from Lothar updating Ka-Ro i.MX28, i.MX53 and i.MX6 boards
  to use better audio codec frequency and display configurations
- Clean up whitespaces in i.MX6UL pinctrl header and add more devices
  support for the SoC
- Other random dts updates to enable various devices

* tag 'imx-dt-4.6' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: (75 commits)
  ARM: dts: imx53-qsb: Fix gpio button polarity
  ARM: dts: vfxxx: Add DAC node for Vybrid SoC
  ARM: dts: imx6q: add missing links between ipu2 and mipi dsi
  ARM: dts: imx: Add support for Advantech/GE B850v3
  ARM: dts: imx: Add support for Advantech/GE B650v3
  ARM: dts: imx: Add support for Advantech/GE B450v3
  ARM: dts: imx: Add support for Advantech/GE Bx50v3
  ARM: dts: imx: Add Advantech BA-16 Qseven module
  of: Add vendor prefix for General Electric Company
  of: Add vendor prefix for Advantech Corporation
  ARM: dts: imx35.dtsi: change the clock information for usb
  ARM: dts: imx25.dtsi: change the clock information for usb
  ARM: dts: imx6ul: add kpp support
  ARM: dts: imx6ul: add gpmi support
  ARM: dts: imx6ul: add lcdif support
  ARM: dts: imx6ul: add sai support
  ARM: dts: imx6ul: add flexcan support
  ARM: dts: imx6ul: add sdma support
  ARM: dts: imx6ul: add pwm[1-4] nodes
  ARM: dts: imx6ul: disable PWMs by default
  ...
parents 388f7b1d 3631c597
...@@ -10,6 +10,7 @@ ad Avionic Design GmbH ...@@ -10,6 +10,7 @@ ad Avionic Design GmbH
adapteva Adapteva, Inc. adapteva Adapteva, Inc.
adh AD Holdings Plc. adh AD Holdings Plc.
adi Analog Devices, Inc. adi Analog Devices, Inc.
advantech Advantech Corporation
aeroflexgaisler Aeroflex Gaisler AB aeroflexgaisler Aeroflex Gaisler AB
al Annapurna Labs al Annapurna Labs
allwinner Allwinner Technology Co., Ltd. allwinner Allwinner Technology Co., Ltd.
...@@ -87,6 +88,7 @@ fcs Fairchild Semiconductor ...@@ -87,6 +88,7 @@ fcs Fairchild Semiconductor
firefly Firefly firefly Firefly
focaltech FocalTech Systems Co.,Ltd focaltech FocalTech Systems Co.,Ltd
fsl Freescale Semiconductor fsl Freescale Semiconductor
ge General Electric Company
GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc. GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc.
gef GE Fanuc Intelligent Platforms Embedded Systems, Inc. gef GE Fanuc Intelligent Platforms Embedded Systems, Inc.
geniatech Geniatech, Inc. geniatech Geniatech, Inc.
......
...@@ -317,12 +317,17 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ ...@@ -317,12 +317,17 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
imx6dl-udoo.dtb \ imx6dl-udoo.dtb \
imx6dl-wandboard.dtb \ imx6dl-wandboard.dtb \
imx6dl-wandboard-revb1.dtb \ imx6dl-wandboard-revb1.dtb \
imx6q-apalis-ixora.dtb \
imx6q-apf6dev.dtb \ imx6q-apf6dev.dtb \
imx6q-arm2.dtb \ imx6q-arm2.dtb \
imx6q-b450v3.dtb \
imx6q-b650v3.dtb \
imx6q-b850v3.dtb \
imx6q-cm-fx6.dtb \ imx6q-cm-fx6.dtb \
imx6q-cubox-i.dtb \ imx6q-cubox-i.dtb \
imx6q-dfi-fs700-m60.dtb \ imx6q-dfi-fs700-m60.dtb \
imx6q-dmo-edmqmx6.dtb \ imx6q-dmo-edmqmx6.dtb \
imx6q-evi.dtb \
imx6q-gk802.dtb \ imx6q-gk802.dtb \
imx6q-gw51xx.dtb \ imx6q-gw51xx.dtb \
imx6q-gw52xx.dtb \ imx6q-gw52xx.dtb \
...@@ -332,6 +337,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ ...@@ -332,6 +337,7 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
imx6q-gw551x.dtb \ imx6q-gw551x.dtb \
imx6q-gw552x.dtb \ imx6q-gw552x.dtb \
imx6q-hummingboard.dtb \ imx6q-hummingboard.dtb \
imx6q-icore-rqs.dtb \
imx6q-nitrogen6x.dtb \ imx6q-nitrogen6x.dtb \
imx6q-nitrogen6_max.dtb \ imx6q-nitrogen6_max.dtb \
imx6q-novena.dtb \ imx6q-novena.dtb \
...@@ -349,7 +355,9 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ ...@@ -349,7 +355,9 @@ dtb-$(CONFIG_SOC_IMX6Q) += \
imx6q-tx6q-1110.dtb \ imx6q-tx6q-1110.dtb \
imx6q-udoo.dtb \ imx6q-udoo.dtb \
imx6q-wandboard.dtb \ imx6q-wandboard.dtb \
imx6q-wandboard-revb1.dtb imx6q-wandboard-revb1.dtb \
imx6qp-sabreauto.dtb \
imx6qp-sabresd.dtb
dtb-$(CONFIG_SOC_IMX6SL) += \ dtb-$(CONFIG_SOC_IMX6SL) += \
imx6sl-evk.dtb \ imx6sl-evk.dtb \
imx6sl-warp.dtb imx6sl-warp.dtb
......
...@@ -30,7 +30,7 @@ bp1 { ...@@ -30,7 +30,7 @@ bp1 {
label = "BP1"; label = "BP1";
gpios = <&gpio3 18 GPIO_ACTIVE_LOW>; gpios = <&gpio3 18 GPIO_ACTIVE_LOW>;
linux,code = <BTN_MISC>; linux,code = <BTN_MISC>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
......
...@@ -269,14 +269,37 @@ uart5: serial@5002c000 { ...@@ -269,14 +269,37 @@ uart5: serial@5002c000 {
status = "disabled"; status = "disabled";
}; };
tsc: tsc@50030000 { tscadc: tscadc@50030000 {
compatible = "fsl,imx25-adc", "fsl,imx21-tsc"; compatible = "fsl,imx25-tsadc";
reg = <0x50030000 0x4000>; reg = <0x50030000 0xc>;
interrupts = <46>; interrupts = <46>;
clocks = <&clks 119>; clocks = <&clks 119>;
clock-names = "ipg"; clock-names = "ipg";
interrupt-controller;
#interrupt-cells = <1>;
#address-cells = <1>;
#size-cells = <1>;
status = "disabled";
adc: adc@50030800 {
compatible = "fsl,imx25-gcq";
reg = <0x50030800 0x60>;
interrupt-parent = <&tscadc>;
interrupts = <1>;
#address-cells = <1>;
#size-cells = <0>;
status = "disabled";
};
tsc: tcq@50030400 {
compatible = "fsl,imx25-tcq";
reg = <0x50030400 0x60>;
interrupt-parent = <&tscadc>;
interrupts = <0>;
fsl,wires = <4>;
status = "disabled"; status = "disabled";
}; };
};
ssi1: ssi@50034000 { ssi1: ssi@50034000 {
#sound-dai-cells = <0>; #sound-dai-cells = <0>;
...@@ -497,7 +520,8 @@ usbotg: usb@53ff4000 { ...@@ -497,7 +520,8 @@ usbotg: usb@53ff4000 {
compatible = "fsl,imx25-usb", "fsl,imx27-usb"; compatible = "fsl,imx25-usb", "fsl,imx27-usb";
reg = <0x53ff4000 0x0200>; reg = <0x53ff4000 0x0200>;
interrupts = <37>; interrupts = <37>;
clocks = <&clks 70>; clocks = <&clks 9>, <&clks 70>, <&clks 8>;
clock-names = "ipg", "ahb", "per";
fsl,usbmisc = <&usbmisc 0>; fsl,usbmisc = <&usbmisc 0>;
fsl,usbphy = <&usbphy0>; fsl,usbphy = <&usbphy0>;
status = "disabled"; status = "disabled";
...@@ -507,7 +531,8 @@ usbhost1: usb@53ff4400 { ...@@ -507,7 +531,8 @@ usbhost1: usb@53ff4400 {
compatible = "fsl,imx25-usb", "fsl,imx27-usb"; compatible = "fsl,imx25-usb", "fsl,imx27-usb";
reg = <0x53ff4400 0x0200>; reg = <0x53ff4400 0x0200>;
interrupts = <35>; interrupts = <35>;
clocks = <&clks 70>; clocks = <&clks 9>, <&clks 70>, <&clks 8>;
clock-names = "ipg", "ahb", "per";
fsl,usbmisc = <&usbmisc 1>; fsl,usbmisc = <&usbmisc 1>;
fsl,usbphy = <&usbphy1>; fsl,usbphy = <&usbphy1>;
status = "disabled"; status = "disabled";
...@@ -516,8 +541,6 @@ usbhost1: usb@53ff4400 { ...@@ -516,8 +541,6 @@ usbhost1: usb@53ff4400 {
usbmisc: usbmisc@53ff4600 { usbmisc: usbmisc@53ff4600 {
#index-cells = <1>; #index-cells = <1>;
compatible = "fsl,imx25-usbmisc"; compatible = "fsl,imx25-usbmisc";
clocks = <&clks 9>, <&clks 70>, <&clks 8>;
clock-names = "ipg", "ahb", "per";
reg = <0x53ff4600 0x00f>; reg = <0x53ff4600 0x00f>;
}; };
......
...@@ -225,7 +225,7 @@ user-button { ...@@ -225,7 +225,7 @@ user-button {
label = "User button"; label = "User button";
gpios = <&gpio0 17 GPIO_ACTIVE_LOW>; gpios = <&gpio0 17 GPIO_ACTIVE_LOW>;
linux,code = <0x100>; linux,code = <0x100>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
}; };
...@@ -36,7 +36,7 @@ sw3 { ...@@ -36,7 +36,7 @@ sw3 {
label = "SW3"; label = "SW3";
gpios = <&gpio1 21 GPIO_ACTIVE_LOW>; gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
linux,code = <BTN_MISC>; linux,code = <BTN_MISC>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
...@@ -49,7 +49,7 @@ sw4 { ...@@ -49,7 +49,7 @@ sw4 {
label = "SW4"; label = "SW4";
gpios = <&gpio1 20 GPIO_ACTIVE_LOW>; gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
linux,code = <BTN_MISC>; linux,code = <BTN_MISC>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
......
...@@ -130,7 +130,7 @@ mclk: clock@0 { ...@@ -130,7 +130,7 @@ mclk: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>; reg = <0>;
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <27000000>; clock-frequency = <26000000>;
}; };
}; };
...@@ -202,7 +202,7 @@ &gpio5 7 GPIO_ACTIVE_HIGH ...@@ -202,7 +202,7 @@ &gpio5 7 GPIO_ACTIVE_HIGH
0x02020049 /* row 2, col 2, KEY_KP9 */ 0x02020049 /* row 2, col 2, KEY_KP9 */
>; >;
gpio-activelow; gpio-activelow;
linux,wakeup; wakeup-source;
debounce-delay-ms = <100>; debounce-delay-ms = <100>;
col-scan-delay-us = <5000>; col-scan-delay-us = <5000>;
linux,no-autorepeat; linux,no-autorepeat;
......
...@@ -30,7 +30,7 @@ bp1 { ...@@ -30,7 +30,7 @@ bp1 {
label = "BP1"; label = "BP1";
gpios = <&gpio3 25 GPIO_ACTIVE_LOW>; gpios = <&gpio3 25 GPIO_ACTIVE_LOW>;
linux,code = <BTN_MISC>; linux,code = <BTN_MISC>;
gpio-key,wakeup; wakeup-source;
linux,input-type = <1>; linux,input-type = <1>;
}; };
}; };
......
...@@ -305,7 +305,8 @@ usbotg: usb@53ff4000 { ...@@ -305,7 +305,8 @@ usbotg: usb@53ff4000 {
compatible = "fsl,imx35-usb", "fsl,imx27-usb"; compatible = "fsl,imx35-usb", "fsl,imx27-usb";
reg = <0x53ff4000 0x0200>; reg = <0x53ff4000 0x0200>;
interrupts = <37>; interrupts = <37>;
clocks = <&clks 73>; clocks = <&clks 9>, <&clks 73>, <&clks 28>;
clock-names = "ipg", "ahb", "per";
fsl,usbmisc = <&usbmisc 0>; fsl,usbmisc = <&usbmisc 0>;
fsl,usbphy = <&usbphy0>; fsl,usbphy = <&usbphy0>;
status = "disabled"; status = "disabled";
...@@ -315,7 +316,8 @@ usbhost1: usb@53ff4400 { ...@@ -315,7 +316,8 @@ usbhost1: usb@53ff4400 {
compatible = "fsl,imx35-usb", "fsl,imx27-usb"; compatible = "fsl,imx35-usb", "fsl,imx27-usb";
reg = <0x53ff4400 0x0200>; reg = <0x53ff4400 0x0200>;
interrupts = <35>; interrupts = <35>;
clocks = <&clks 73>; clocks = <&clks 9>, <&clks 73>, <&clks 28>;
clock-names = "ipg", "ahb", "per";
fsl,usbmisc = <&usbmisc 1>; fsl,usbmisc = <&usbmisc 1>;
fsl,usbphy = <&usbphy1>; fsl,usbphy = <&usbphy1>;
dr_mode = "host"; dr_mode = "host";
...@@ -325,8 +327,6 @@ usbhost1: usb@53ff4400 { ...@@ -325,8 +327,6 @@ usbhost1: usb@53ff4400 {
usbmisc: usbmisc@53ff4600 { usbmisc: usbmisc@53ff4600 {
#index-cells = <1>; #index-cells = <1>;
compatible = "fsl,imx35-usbmisc"; compatible = "fsl,imx35-usbmisc";
clocks = <&clks 9>, <&clks 73>, <&clks 28>;
clock-names = "ipg", "ahb", "per";
reg = <0x53ff4600 0x00f>; reg = <0x53ff4600 0x00f>;
}; };
}; };
......
...@@ -107,7 +107,7 @@ power { ...@@ -107,7 +107,7 @@ power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>; gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
......
...@@ -156,7 +156,7 @@ &esdhc2 { ...@@ -156,7 +156,7 @@ &esdhc2 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_esdhc2>; pinctrl-0 = <&pinctrl_esdhc2>;
cap-sdio-irq; cap-sdio-irq;
enable-sdio-wakeup; wakeup-source;
keep-power-in-suspend; keep-power-in-suspend;
max-frequency = <50000000>; max-frequency = <50000000>;
no-1-8-v; no-1-8-v;
......
...@@ -41,7 +41,7 @@ button-1 { ...@@ -41,7 +41,7 @@ button-1 {
label = "BP1"; label = "BP1";
gpios = <&gpio3 31 GPIO_ACTIVE_LOW>; gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
linux,code = <256>; linux,code = <256>;
gpio-key,wakeup; wakeup-source;
linux,input-type = <1>; linux,input-type = <1>;
}; };
}; };
......
...@@ -536,7 +536,6 @@ ...@@ -536,7 +536,6 @@
#define MX51_PAD_DISPB2_SER_CLK__DISP1_PIN7 0x2c4 0x6c4 0x000 0x3 0x0 #define MX51_PAD_DISPB2_SER_CLK__DISP1_PIN7 0x2c4 0x6c4 0x000 0x3 0x0
#define MX51_PAD_DISPB2_SER_CLK__DISPB2_SER_CLK 0x2c4 0x6c4 0x000 0x0 0x0 #define MX51_PAD_DISPB2_SER_CLK__DISPB2_SER_CLK 0x2c4 0x6c4 0x000 0x0 0x0
#define MX51_PAD_DISPB2_SER_CLK__GPIO3_7 0x2c4 0x6c4 0x990 0x4 0x1 #define MX51_PAD_DISPB2_SER_CLK__GPIO3_7 0x2c4 0x6c4 0x990 0x4 0x1
#define MX51_PAD_DISPB2_SER_RS__DISP1_EXT_CLK 0x2c8 0x6c8 0x000 0x2 0x0
#define MX51_PAD_DISPB2_SER_RS__DISP1_PIN16 0x2c8 0x6c8 0x000 0x2 0x0 #define MX51_PAD_DISPB2_SER_RS__DISP1_PIN16 0x2c8 0x6c8 0x000 0x2 0x0
#define MX51_PAD_DISPB2_SER_RS__DISP1_PIN8 0x2c8 0x6c8 0x000 0x3 0x0 #define MX51_PAD_DISPB2_SER_RS__DISP1_PIN8 0x2c8 0x6c8 0x000 0x3 0x0
#define MX51_PAD_DISPB2_SER_RS__DISPB2_SER_RS 0x2c8 0x6c8 0x000 0x0 0x0 #define MX51_PAD_DISPB2_SER_RS__DISPB2_SER_RS 0x2c8 0x6c8 0x000 0x0 0x0
......
...@@ -69,21 +69,21 @@ home { ...@@ -69,21 +69,21 @@ home {
label = "Home"; label = "Home";
gpios = <&gpio5 10 0>; gpios = <&gpio5 10 0>;
linux,code = <102>; /* KEY_HOME */ linux,code = <102>; /* KEY_HOME */
gpio-key,wakeup; wakeup-source;
}; };
back { back {
label = "Back"; label = "Back";
gpios = <&gpio5 11 0>; gpios = <&gpio5 11 0>;
linux,code = <158>; /* KEY_BACK */ linux,code = <158>; /* KEY_BACK */
gpio-key,wakeup; wakeup-source;
}; };
program { program {
label = "Program"; label = "Program";
gpios = <&gpio5 12 0>; gpios = <&gpio5 12 0>;
linux,code = <362>; /* KEY_PROGRAM */ linux,code = <362>; /* KEY_PROGRAM */
gpio-key,wakeup; wakeup-source;
}; };
volume-up { volume-up {
......
...@@ -59,22 +59,22 @@ gpio-keys { ...@@ -59,22 +59,22 @@ gpio-keys {
power { power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio1 8 0>; gpios = <&gpio1 8 GPIO_ACTIVE_LOW>;
linux,code = <116>; /* KEY_POWER */ linux,code = <KEY_POWER>;
}; };
volume-up { volume-up {
label = "Volume Up"; label = "Volume Up";
gpios = <&gpio2 14 0>; gpios = <&gpio2 14 GPIO_ACTIVE_LOW>;
linux,code = <115>; /* KEY_VOLUMEUP */ linux,code = <KEY_VOLUMEUP>;
gpio-key,wakeup; wakeup-source;
}; };
volume-down { volume-down {
label = "Volume Down"; label = "Volume Down";
gpios = <&gpio2 15 0>; gpios = <&gpio2 15 GPIO_ACTIVE_LOW>;
linux,code = <114>; /* KEY_VOLUMEDOWN */ linux,code = <KEY_VOLUMEDOWN>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
......
...@@ -231,7 +231,7 @@ touchscreen: tsc2007@48 { ...@@ -231,7 +231,7 @@ touchscreen: tsc2007@48 {
interrupts = <26 0>; interrupts = <26 0>;
gpios = <&gpio3 26 GPIO_ACTIVE_LOW>; gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;
ti,x-plate-ohms = <660>; ti,x-plate-ohms = <660>;
linux,wakeup; wakeup-source;
}; };
}; };
......
...@@ -101,7 +101,7 @@ touchscreen2: eeti@04 { ...@@ -101,7 +101,7 @@ touchscreen2: eeti@04 {
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <23 0>; interrupts = <23 0>;
wakeup-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>; wakeup-gpios = <&gpio3 23 GPIO_ACTIVE_HIGH>;
linux,wakeup; wakeup-source;
}; };
}; };
...@@ -126,7 +126,7 @@ touchscreen1: eeti@04 { ...@@ -126,7 +126,7 @@ touchscreen1: eeti@04 {
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <22 0>; interrupts = <22 0>;
wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>; wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
linux,wakeup; wakeup-source;
}; };
}; };
...@@ -183,13 +183,14 @@ &ldb { ...@@ -183,13 +183,14 @@ &ldb {
status = "okay"; status = "okay";
lvds0: lvds-channel@0 { lvds0: lvds-channel@0 {
fsl,data-mapping = "jeida"; fsl,data-mapping = "spwg";
fsl,data-width = <24>; fsl,data-width = <18>;
status = "okay"; status = "okay";
display-timings { display-timings {
native-mode = <&lvds_timing0>; native-mode = <&lvds0_timing0>;
lvds_timing0: hsd100pxn1 {
lvds0_timing0: hsd100pxn1 {
clock-frequency = <65000000>; clock-frequency = <65000000>;
hactive = <1024>; hactive = <1024>;
vactive = <768>; vactive = <768>;
...@@ -202,19 +203,36 @@ lvds_timing0: hsd100pxn1 { ...@@ -202,19 +203,36 @@ lvds_timing0: hsd100pxn1 {
hsync-active = <0>; hsync-active = <0>;
vsync-active = <0>; vsync-active = <0>;
de-active = <1>; de-active = <1>;
pixelclk-active = <0>; pixelclk-active = <1>;
};
lvds0_timing1: nl12880bc20 {
clock-frequency = <71000000>;
hactive = <1280>;
vactive = <800>;
hback-porch = <50>;
hsync-len = <60>;
hfront-porch = <50>;
vback-porch = <5>;
vsync-len = <13>;
vfront-porch = <5>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <1>;
pixelclk-active = <1>;
}; };
}; };
}; };
lvds1: lvds-channel@1 { lvds1: lvds-channel@1 {
fsl,data-mapping = "jeida"; fsl,data-mapping = "spwg";
fsl,data-width = <24>; fsl,data-width = <18>;
status = "okay"; status = "okay";
display-timings { display-timings {
native-mode = <&lvds_timing1>; native-mode = <&lvds1_timing0>;
lvds_timing1: hsd100pxn1 {
lvds1_timing0: hsd100pxn1 {
clock-frequency = <65000000>; clock-frequency = <65000000>;
hactive = <1024>; hactive = <1024>;
vactive = <768>; vactive = <768>;
...@@ -227,7 +245,7 @@ lvds_timing1: hsd100pxn1 { ...@@ -227,7 +245,7 @@ lvds_timing1: hsd100pxn1 {
hsync-active = <0>; hsync-active = <0>;
vsync-active = <0>; vsync-active = <0>;
de-active = <1>; de-active = <1>;
pixelclk-active = <0>; pixelclk-active = <1>;
}; };
}; };
}; };
......
...@@ -37,7 +37,7 @@ mclk: clock@0 { ...@@ -37,7 +37,7 @@ mclk: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>; reg = <0>;
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <27000000>; clock-frequency = <26000000>;
}; };
}; };
...@@ -50,7 +50,7 @@ power { ...@@ -50,7 +50,7 @@ power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>; gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
linux,code = <116>; /* KEY_POWER */ linux,code = <116>; /* KEY_POWER */
gpio-key,wakeup; wakeup-source;
}; };
}; };
......
...@@ -77,7 +77,7 @@ polytouch2: eeti@04 { ...@@ -77,7 +77,7 @@ polytouch2: eeti@04 {
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <22 0>; interrupts = <22 0>;
wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>; wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
linux,wakeup; wakeup-source;
}; };
}; };
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include "imx6qdl-wandboard-revb1.dtsi" #include "imx6qdl-wandboard-revb1.dtsi"
/ { / {
model = "Wandboard i.MX6 Dual Lite Board"; model = "Wandboard i.MX6 Dual Lite Board rev B1";
compatible = "wand,imx6dl-wandboard", "fsl,imx6dl"; compatible = "wand,imx6dl-wandboard", "fsl,imx6dl";
memory { memory {
......
/*
* Copyright 2014-2016 Toradex AG
* Copyright 2012 Freescale Semiconductor, Inc.
* Copyright 2011 Linaro Ltd.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include "imx6q.dtsi"
#include "imx6qdl-apalis.dtsi"
/ {
model = "Toradex Apalis iMX6Q/D Module on Ixora Carrier Board";
compatible = "toradex,apalis_imx6q-ixora", "toradex,apalis_imx6q",
"fsl,imx6q";
aliases {
i2c0 = &i2cddc;
i2c1 = &i2c1;
i2c2 = &i2c2;
i2c3 = &i2c3;
};
aliases {
rtc0 = &rtc_i2c;
rtc1 = &snvs_rtc;
};
gpio-keys {
compatible = "gpio-keys";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_gpio_keys>;
wakeup {
label = "Wake-Up";
gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
linux,code = <KEY_WAKEUP>;
debounce-interval = <10>;
wakeup-source;
};
};
leds {
compatible = "gpio-leds";
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_leds_ixora>;
led4-green {
label = "LED_4_GREEN";
gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
};
led4-red {
label = "LED_4_RED";
gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
};
led5-green {
label = "LED_5_GREEN";
gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
};
led5-red {
label = "LED_5_RED";
gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>;
};
};
pwmleds {
compatible = "pwm-leds";
ledpwm1 {
label = "PWM1";
pwms = <&pwm1 0 50000>;
max-brightness = <255>;
};
ledpwm2 {
label = "PWM2";
pwms = <&pwm2 0 50000>;
max-brightness = <255>;
};
ledpwm3 {
label = "PWM3";
pwms = <&pwm3 0 50000>;
max-brightness = <255>;
};
};
};
&backlight {
brightness-levels = <0 127 191 223 239 247 251 255>;
default-brightness-level = <1>;
status = "okay";
};
&can1 {
status = "okay";
};
&can2 {
status = "okay";
};
&hdmi {
ddc-i2c-bus = <&i2cddc>;
status = "okay";
};
&i2cddc {
status = "okay";
};
/* GEN1_I2C: I2C1_SDA/SCL on MXM3 209/211 (e.g. RTC on carrier board) */
&i2c1 {
status = "okay";
eeprom@50 {
compatible = "atmel,24c02";
reg = <0x50>;
};
/* M41T0M6 real time clock on carrier board */
rtc_i2c: rtc@68 {
compatible = "st,m41t00";
reg = <0x68>;
};
};
&ldb {
status = "okay";
};
&pcie {
/* active-low meaning opposite of regular PERST# active-low polarity */
reset-gpio = <&gpio1 28 GPIO_ACTIVE_LOW>;
status = "okay";
};
&pwm1 {
status = "okay";
};
&pwm2 {
status = "okay";
};
&pwm3 {
status = "okay";
};
&pwm4 {
status = "okay";
};
&reg_usb_otg_vbus {
status = "okay";
};
&reg_usb_host_vbus {
status = "okay";
};
&sata {
status = "okay";
};
&sound_spdif {
status = "okay";
};
&spdif {
status = "okay";
};
&uart1 {
status = "okay";
};
&uart2 {
status = "okay";
};
&uart4 {
status = "okay";
};
&uart5 {
status = "okay";
};
&usbh1 {
vbus-supply = <&reg_usb_host_vbus>;
status = "okay";
};
&usbotg {
vbus-supply = <&reg_usb_otg_vbus>;
status = "okay";
};
/* SD1 */
&usdhc2 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sd_cd>;
cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>;
status = "okay";
};
&iomuxc {
/*
* Mux the Apalis GPIOs
* GPIO5, 6 used by optional fusion_F0710A kernel module
*/
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_apalis_gpio1 &pinctrl_apalis_gpio2
&pinctrl_apalis_gpio3 &pinctrl_apalis_gpio4
&pinctrl_apalis_gpio5 &pinctrl_apalis_gpio6
&pinctrl_apalis_gpio7 &pinctrl_apalis_gpio8
>;
pinctrl_leds_ixora: ledsixoragrp {
fsl,pins = <
MX6QDL_PAD_SD1_DAT1__GPIO1_IO17 0x1b0b0
MX6QDL_PAD_SD1_DAT3__GPIO1_IO21 0x1b0b0
MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x1b0b0
MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x1b0b0
>;
};
};
/*
* Copyright 2015 Timesys Corporation.
* Copyright 2015 General Electric Company
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6q-bx50v3.dtsi"
/ {
model = "General Electric B450v3";
compatible = "ge,imx6q-b450v3", "advantech,imx6q-ba16", "fsl,imx6q";
chosen {
stdout-path = &uart3;
};
panel-lvds0 {
compatible = "innolux,g121x1-l03";
backlight = <&backlight_lvds>;
power-supply = <&reg_lvds>;
port {
panel_in_lvds0: endpoint {
remote-endpoint = <&lvds0_out>;
};
};
};
};
&ldb {
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
status = "okay";
lvds0: lvds-channel@0 {
fsl,data-mapping = "spwg";
fsl,data-width = <24>;
status = "okay";
port@4 {
reg = <4>;
lvds0_out: endpoint {
remote-endpoint = <&panel_in_lvds0>;
};
};
};
};
/*
* Copyright 2015 Timesys Corporation.
* Copyright 2015 General Electric Company
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6q-bx50v3.dtsi"
/ {
model = "General Electric B650v3";
compatible = "ge,imx6q-b650v3", "advantech,imx6q-ba16", "fsl,imx6q";
chosen {
stdout-path = &uart3;
};
panel-lvds0 {
compatible = "innolux,g121x1-l03";
backlight = <&backlight_lvds>;
power-supply = <&reg_lvds>;
port {
panel_in_lvds0: endpoint {
remote-endpoint = <&lvds0_out>;
};
};
};
};
&ldb {
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
status = "okay";
lvds0: lvds-channel@0 {
fsl,data-mapping = "spwg";
fsl,data-width = <24>;
status = "okay";
port@4 {
reg = <4>;
lvds0_out: endpoint {
remote-endpoint = <&panel_in_lvds0>;
};
};
};
};
/*
* Copyright 2015 Timesys Corporation.
* Copyright 2015 General Electric Company
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6q-bx50v3.dtsi"
/ {
model = "General Electric B850v3";
compatible = "ge,imx6q-b850v3", "advantech,imx6q-ba16", "fsl,imx6q";
chosen {
stdout-path = &uart3;
};
panel-lvds0 {
compatible = "auo,b133htn01";
backlight = <&backlight_lvds>;
ddc-i2c-bus = <&mux2_i2c2>;
port {
panel_in_lvds0: endpoint {
remote-endpoint = <&lvds0_out>;
};
};
};
};
&ldb {
assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>,
<&clks IMX6QDL_CLK_LDB_DI1_SEL>;
assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>,
<&clks IMX6QDL_CLK_PLL3_USB_OTG>;
fsl,dual-channel;
status = "okay";
lvds0: lvds-channel@0 {
fsl,data-mapping = "spwg";
fsl,data-width = <24>;
status = "okay";
port@4 {
reg = <4>;
lvds0_out: endpoint {
remote-endpoint = <&panel_in_lvds0>;
};
};
};
};
&i2c2 {
pca9547_ddc: mux@70 {
compatible = "nxp,pca9547";
reg = <0x70>;
#address-cells = <1>;
#size-cells = <0>;
mux2_i2c1: i2c@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x0>;
};
mux2_i2c2: i2c@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x1>;
};
mux2_i2c3: i2c@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x2>;
};
mux2_i2c4: i2c@3 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x3>;
};
mux2_i2c5: i2c@4 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x4>;
};
mux2_i2c6: i2c@5 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x5>;
};
mux2_i2c7: i2c@6 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x6>;
};
mux2_i2c8: i2c@7 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x7>;
};
};
};
&hdmi {
ddc-i2c-bus = <&mux2_i2c1>;
};
&mux1_i2c1 {
ads7830@4a {
compatible = "ti,ads7830";
reg = <0x4a>;
};
};
This diff is collapsed.
/*
* Copyright 2015 Timesys Corporation.
* Copyright 2015 General Electric Company
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include "imx6q-ba16.dtsi"
/ {
clocks {
mclk: clock@0 {
compatible = "fixed-clock";
reg = <0>;
#clock-cells = <0>;
clock-frequency = <22000000>;
};
};
reg_wl18xx_vmmc: regulator-wl18xx {
compatible = "regulator-fixed";
regulator-name = "vwl1807";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&pca9539 3 GPIO_ACTIVE_HIGH>;
startup-delay-us = <70000>;
enable-active-high;
};
reg_wlan: regulator-wlan {
compatible = "regulator-fixed";
regulator-name = "3P3V_wlan";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
gpio = <&gpio6 14 GPIO_ACTIVE_HIGH>;
};
sound {
compatible = "fsl,imx6q-ba16-sgtl5000",
"fsl,imx-audio-sgtl5000";
model = "imx6q-ba16-sgtl5000";
ssi-controller = <&ssi1>;
audio-codec = <&sgtl5000>;
audio-routing =
"MIC_IN", "Mic Jack",
"Mic Jack", "Mic Bias",
"LINE_IN", "Line In Jack",
"Headphone Jack", "HP_OUT";
mux-int-port = <1>;
mux-ext-port = <4>;
};
};
&ecspi5 {
fsl,spi-num-chipselects = <1>;
cs-gpios = <&gpio1 17 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi5>;
status = "okay";
m25_eeprom: m25p80@0 {
compatible = "atmel,at25";
spi-max-frequency = <20000000>;
size = <0x8000>;
pagesize = <64>;
reg = <0>;
address-width = <16>;
};
};
&i2c1 {
pca9547: mux@70 {
compatible = "nxp,pca9547";
reg = <0x70>;
#address-cells = <1>;
#size-cells = <0>;
mux1_i2c1: i2c@0 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x0>;
ads7830: ads7830@48 {
compatible = "ti,ads7830";
reg = <0x48>;
};
mma8453: mma8453@1c {
compatible = "fsl,mma8453";
reg = <0x1c>;
};
};
mux1_i2c2: i2c@1 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x1>;
eeprom: eeprom@50 {
compatible = "atmel,24c08";
reg = <0x50>;
};
mpl3115: mpl3115@60 {
compatible = "fsl,mpl3115";
reg = <0x60>;
};
};
mux1_i2c3: i2c@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x2>;
};
mux1_i2c4: i2c@3 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x3>;
sgtl5000: codec@0a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
clocks = <&mclk>;
VDDA-supply = <&reg_1p8v>;
VDDIO-supply = <&reg_3p3v>;
};
};
mux1_i2c5: i2c@4 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x4>;
pca9539: pca9539@74 {
compatible = "nxp,pca9539";
reg = <0x74>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
interrupt-parent = <&gpio2>;
interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
};
};
mux1_i2c6: i2c@5 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x5>;
};
mux1_i2c7: i2c@6 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x6>;
};
mux1_i2c8: i2c@7 {
#address-cells = <1>;
#size-cells = <0>;
reg = <0x7>;
};
};
};
&usdhc4 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usdhc4>;
bus-width = <4>;
vmmc-supply = <&reg_wl18xx_vmmc>;
no-1-8-v;
non-removable;
wakeup-source;
keep-power-in-suspend;
cap-power-off-card;
max-frequency = <25000000>;
#address-cells = <1>;
#size-cells = <0>;
status = "okay";
wlcore: wlcore@2 {
compatible = "ti,wl1837";
reg = <2>;
interrupt-parent = <&gpio2>;
interrupts = <6 IRQ_TYPE_LEVEL_HIGH>;
tcxo-clock-frequency = <26000000>;
};
};
This diff is collapsed.
...@@ -44,7 +44,7 @@ recovery-button { ...@@ -44,7 +44,7 @@ recovery-button {
label = "recovery"; label = "recovery";
gpios = <&gpio3 16 1>; gpios = <&gpio3 16 1>;
linux,code = <0x198>; /* KEY_RESTART */ linux,code = <0x198>; /* KEY_RESTART */
gpio-key,wakeup; wakeup-source;
}; };
}; };
}; };
......
/*
* Copyright (C) 2015 Amarula Solutions B.V.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* version 2 as published by the Free Software Foundation.
*
* This file is distributed in the hope that it will be useful
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6q.dtsi"
#include "imx6qdl-icore-rqs.dtsi"
/ {
model = "Engicam i.CoreM6 Quad SOM";
compatible = "engicam,imx6-icore-rqs", "fsl,imx6q";
sound {
compatible = "fsl,imx-audio-sgtl5000";
model = "imx-audio-sgtl5000";
ssi-controller = <&ssi1>;
audio-codec = <&codec>;
audio-routing =
"MIC_IN", "Mic Jack",
"Mic Jack", "Mic Bias",
"Headphone Jack", "HP_OUT";
mux-int-port = <1>;
mux-ext-port = <4>;
};
};
&i2c3 {
codec: sgtl5000@0a {
compatible = "fsl,sgtl5000";
reg = <0x0a>;
clocks = <&clks IMX6QDL_CLK_CKO>;
VDDA-supply = <&reg_2p5v>;
VDDIO-supply = <&reg_3p3v>;
VDDD-supply = <&reg_1p8v>;
};
};
&sata {
status = "okay";
};
...@@ -91,35 +91,26 @@ blue { ...@@ -91,35 +91,26 @@ blue {
}; };
}; };
regulators { reg_2p5v: regulator-2p5v {
compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <0>;
reg_2p5v: regulator@0 {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <0>;
regulator-name = "2P5V"; regulator-name = "2P5V";
regulator-min-microvolt = <2500000>; regulator-min-microvolt = <2500000>;
regulator-max-microvolt = <2500000>; regulator-max-microvolt = <2500000>;
}; };
reg_3p3v: regulator@1 { reg_3p3v: regulator-3p3v {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <1>;
regulator-name = "3P3V"; regulator-name = "3P3V";
regulator-min-microvolt = <3300000>; regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
}; };
reg_5p0v: regulator@2 { reg_5p0v: regulator-5p0v {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
reg = <2>;
regulator-name = "5P0V"; regulator-name = "5P0V";
regulator-min-microvolt = <5000000>; regulator-min-microvolt = <5000000>;
regulator-max-microvolt = <5000000>; regulator-max-microvolt = <5000000>;
}; };
};
sound-sgtl5000 { sound-sgtl5000 {
audio-codec = <&sgtl5000>; audio-codec = <&sgtl5000>;
...@@ -205,6 +196,10 @@ &pcie { ...@@ -205,6 +196,10 @@ &pcie {
}; };
&sata { &sata {
fsl,transmit-level-mV = <1104>;
fsl,transmit-boost-mdB = <3330>;
fsl,transmit-atten-16ths = <16>;
fsl,receive-eq-mdB = <3000>;
status = "okay"; status = "okay";
}; };
...@@ -253,6 +248,9 @@ &usdhc2 { ...@@ -253,6 +248,9 @@ &usdhc2 {
bus-width = <4>; bus-width = <4>;
cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>;
vmmc-supply = <&reg_3p3v>; vmmc-supply = <&reg_3p3v>;
vqmmc-supply = <&reg_3p3v>;
voltage-ranges = <3300 3300>;
no-1-8-v;
status = "okay"; status = "okay";
}; };
...@@ -263,6 +261,9 @@ &usdhc3 { ...@@ -263,6 +261,9 @@ &usdhc3 {
cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>;
vmmc-supply = <&reg_3p3v>; vmmc-supply = <&reg_3p3v>;
vqmmc-supply = <&reg_3p3v>;
voltage-ranges = <3300 3300>;
no-1-8-v;
status = "okay"; status = "okay";
}; };
...@@ -270,13 +271,15 @@ &usdhc4 { ...@@ -270,13 +271,15 @@ &usdhc4 {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usdhc4>; pinctrl-0 = <&pinctrl_usdhc4>;
bus-width = <8>; bus-width = <8>;
vmmc-supply = <&reg_3p3v>;
vqmmc-supply = <&reg_3p3v>;
voltage-ranges = <3300 3300>;
non-removable; non-removable;
no-1-8-v; no-1-8-v;
status = "okay"; status = "okay";
}; };
&iomuxc { &iomuxc {
imx6q-tbs2910 {
pinctrl_enet: enetgrp { pinctrl_enet: enetgrp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0
...@@ -299,6 +302,18 @@ MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b059 ...@@ -299,6 +302,18 @@ MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b059
>; >;
}; };
pinctrl_gpio_fan: gpiofangrp {
fsl,pins = <
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x130b1
>;
};
pinctrl_gpio_leds: gpioledsgrp {
fsl,pins = <
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x130b1
>;
};
pinctrl_hdmi: hdmigrp { pinctrl_hdmi: hdmigrp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0 MX6QDL_PAD_KEY_ROW2__HDMI_TX_CEC_LINE 0x1f8b0
...@@ -412,21 +427,4 @@ MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 ...@@ -412,21 +427,4 @@ MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059
MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059
>; >;
}; };
};
gpio_fan {
pinctrl_gpio_fan: gpiofangrp {
fsl,pins = <
MX6QDL_PAD_EIM_D28__GPIO3_IO28 0x130b1
>;
};
};
gpio_leds {
pinctrl_gpio_leds: gpioledsgrp {
fsl,pins = <
MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x130b1
>;
};
};
}; };
...@@ -77,7 +77,7 @@ polytouch1: eeti@04 { ...@@ -77,7 +77,7 @@ polytouch1: eeti@04 {
interrupt-parent = <&gpio3>; interrupt-parent = <&gpio3>;
interrupts = <22 0>; interrupts = <22 0>;
wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>; wakeup-gpios = <&gpio3 22 GPIO_ACTIVE_HIGH>;
linux,wakeup; wakeup-source;
}; };
}; };
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
#include "imx6qdl-wandboard-revb1.dtsi" #include "imx6qdl-wandboard-revb1.dtsi"
/ { / {
model = "Wandboard i.MX6 Quad Board"; model = "Wandboard i.MX6 Quad Board rev B1";
compatible = "wand,imx6q-wandboard", "fsl,imx6q"; compatible = "wand,imx6q-wandboard", "fsl,imx6q";
memory { memory {
......
...@@ -22,7 +22,7 @@ cpus { ...@@ -22,7 +22,7 @@ cpus {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
cpu@0 { cpu0: cpu@0 {
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
device_type = "cpu"; device_type = "cpu";
reg = <0>; reg = <0>;
...@@ -162,6 +162,7 @@ ipu2_di0_hdmi: endpoint@1 { ...@@ -162,6 +162,7 @@ ipu2_di0_hdmi: endpoint@1 {
}; };
ipu2_di0_mipi: endpoint@2 { ipu2_di0_mipi: endpoint@2 {
remote-endpoint = <&mipi_mux_2>;
}; };
ipu2_di0_lvds0: endpoint@3 { ipu2_di0_lvds0: endpoint@3 {
...@@ -183,6 +184,7 @@ ipu2_di1_hdmi: endpoint@1 { ...@@ -183,6 +184,7 @@ ipu2_di1_hdmi: endpoint@1 {
}; };
ipu2_di1_mipi: endpoint@2 { ipu2_di1_mipi: endpoint@2 {
remote-endpoint = <&mipi_mux_3>;
}; };
ipu2_di1_lvds0: endpoint@3 { ipu2_di1_lvds0: endpoint@3 {
......
This diff is collapsed.
...@@ -94,7 +94,7 @@ user-button { ...@@ -94,7 +94,7 @@ user-button {
label = "User button"; label = "User button";
gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; gpios = <&gpio1 9 GPIO_ACTIVE_LOW>;
linux,code = <BTN_MISC>; linux,code = <BTN_MISC>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
......
...@@ -320,13 +320,13 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1 ...@@ -320,13 +320,13 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1
pinctrl_pwm3: pwm3grp { pinctrl_pwm3: pwm3grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
>; >;
}; };
pinctrl_pwm4: pwm4grp { pinctrl_pwm4: pwm4grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_SD4_DAT2__PWM4_OUT 0x1b0b1 MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
>; >;
}; };
......
...@@ -473,7 +473,7 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1 ...@@ -473,7 +473,7 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1
pinctrl_pwm3: pwm3grp { pinctrl_pwm3: pwm3grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
>; >;
}; };
......
...@@ -462,7 +462,7 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1 ...@@ -462,7 +462,7 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1
pinctrl_pwm3: pwm3grp { pinctrl_pwm3: pwm3grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
>; >;
}; };
......
...@@ -397,8 +397,9 @@ &pwm3 { ...@@ -397,8 +397,9 @@ &pwm3 {
}; };
&pwm4 { &pwm4 {
pinctrl-names = "default"; pinctrl-names = "default", "state_dio";
pinctrl-0 = <&pinctrl_pwm4>; pinctrl-0 = <&pinctrl_pwm4_backlight>;
pinctrl-1 = <&pinctrl_pwm4_dio>;
status = "okay"; status = "okay";
}; };
...@@ -573,12 +574,20 @@ MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 ...@@ -573,12 +574,20 @@ MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1
>; >;
}; };
pinctrl_pwm4: pwm4grp { pinctrl_pwm4_backlight: pwm4grpbacklight {
fsl,pins = < fsl,pins = <
/* LVDS_PWM J6.5 */
MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1 MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1
>; >;
}; };
pinctrl_pwm4_dio: pwm4grpdio {
fsl,pins = <
/* DIO3 J16.4 */
MX6QDL_PAD_SD4_DAT2__PWM4_OUT 0x1b0b1
>;
};
pinctrl_uart1: uart1grp { pinctrl_uart1: uart1grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1 MX6QDL_PAD_SD3_DAT7__UART1_TX_DATA 0x1b0b1
......
...@@ -262,7 +262,7 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1 ...@@ -262,7 +262,7 @@ MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1
pinctrl_pwm3: pwm3grp { pinctrl_pwm3: pwm3grp {
fsl,pins = < fsl,pins = <
MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1
>; >;
}; };
......
...@@ -48,7 +48,7 @@ chosen { ...@@ -48,7 +48,7 @@ chosen {
ir_recv: ir-receiver { ir_recv: ir-receiver {
compatible = "gpio-ir-receiver"; compatible = "gpio-ir-receiver";
gpios = <&gpio3 5 1>; gpios = <&gpio3 5 GPIO_ACTIVE_LOW>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hummingboard_gpio3_5>; pinctrl-0 = <&pinctrl_hummingboard_gpio3_5>;
}; };
...@@ -67,7 +67,7 @@ reg_3p3v: 3p3v { ...@@ -67,7 +67,7 @@ reg_3p3v: 3p3v {
reg_usbh1_vbus: usb-h1-vbus { reg_usbh1_vbus: usb-h1-vbus {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
enable-active-high; enable-active-high;
gpio = <&gpio1 0 0>; gpio = <&gpio1 0 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hummingboard_usbh1_vbus>; pinctrl-0 = <&pinctrl_hummingboard_usbh1_vbus>;
regulator-name = "usb_h1_vbus"; regulator-name = "usb_h1_vbus";
...@@ -78,7 +78,7 @@ reg_usbh1_vbus: usb-h1-vbus { ...@@ -78,7 +78,7 @@ reg_usbh1_vbus: usb-h1-vbus {
reg_usbotg_vbus: usb-otg-vbus { reg_usbotg_vbus: usb-otg-vbus {
compatible = "regulator-fixed"; compatible = "regulator-fixed";
enable-active-high; enable-active-high;
gpio = <&gpio3 22 0>; gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hummingboard_usbotg_vbus>; pinctrl-0 = <&pinctrl_hummingboard_usbotg_vbus>;
regulator-name = "usb_otg_vbus"; regulator-name = "usb_otg_vbus";
...@@ -253,7 +253,7 @@ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059 ...@@ -253,7 +253,7 @@ MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x13059
&pcie { &pcie {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_hummingboard_pcie_reset>; pinctrl-0 = <&pinctrl_hummingboard_pcie_reset>;
reset-gpio = <&gpio3 4 0>; reset-gpio = <&gpio3 4 GPIO_ACTIVE_LOW>;
status = "okay"; status = "okay";
}; };
......
This diff is collapsed.
...@@ -154,6 +154,7 @@ &usdhc1 { ...@@ -154,6 +154,7 @@ &usdhc1 {
bus-width = <4>; bus-width = <4>;
mmc-pwrseq = <&usdhc1_pwrseq>; mmc-pwrseq = <&usdhc1_pwrseq>;
keep-power-in-suspend; keep-power-in-suspend;
no-1-8-v;
non-removable; non-removable;
vmmc-supply = <&reg_brcm>; vmmc-supply = <&reg_brcm>;
status = "okay"; status = "okay";
......
...@@ -138,7 +138,7 @@ power { ...@@ -138,7 +138,7 @@ power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio2 3 GPIO_ACTIVE_LOW>; gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
gpio-key,wakeup; wakeup-source;
}; };
menu { menu {
......
...@@ -119,7 +119,7 @@ power { ...@@ -119,7 +119,7 @@ power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio2 3 GPIO_ACTIVE_LOW>; gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
gpio-key,wakeup; wakeup-source;
}; };
menu { menu {
......
...@@ -105,7 +105,7 @@ power { ...@@ -105,7 +105,7 @@ power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio2 3 GPIO_ACTIVE_LOW>; gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
gpio-key,wakeup; wakeup-source;
}; };
menu { menu {
......
...@@ -79,21 +79,21 @@ gpio-keys { ...@@ -79,21 +79,21 @@ gpio-keys {
power { power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio3 29 GPIO_ACTIVE_LOW>; gpios = <&gpio3 29 GPIO_ACTIVE_LOW>;
gpio-key,wakeup; wakeup-source;
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
}; };
volume-up { volume-up {
label = "Volume Up"; label = "Volume Up";
gpios = <&gpio1 4 GPIO_ACTIVE_LOW>; gpios = <&gpio1 4 GPIO_ACTIVE_LOW>;
gpio-key,wakeup; wakeup-source;
linux,code = <KEY_VOLUMEUP>; linux,code = <KEY_VOLUMEUP>;
}; };
volume-down { volume-down {
label = "Volume Down"; label = "Volume Down";
gpios = <&gpio1 5 GPIO_ACTIVE_LOW>; gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
gpio-key,wakeup; wakeup-source;
linux,code = <KEY_VOLUMEDOWN>; linux,code = <KEY_VOLUMEDOWN>;
}; };
}; };
...@@ -238,6 +238,7 @@ sw2_reg: sw2 { ...@@ -238,6 +238,7 @@ sw2_reg: sw2 {
regulator-max-microvolt = <3300000>; regulator-max-microvolt = <3300000>;
regulator-boot-on; regulator-boot-on;
regulator-always-on; regulator-always-on;
regulator-ramp-delay = <6250>;
}; };
sw3a_reg: sw3a { sw3a_reg: sw3a {
......
...@@ -41,7 +41,7 @@ mclk: clock@0 { ...@@ -41,7 +41,7 @@ mclk: clock@0 {
compatible = "fixed-clock"; compatible = "fixed-clock";
reg = <0>; reg = <0>;
#clock-cells = <0>; #clock-cells = <0>;
clock-frequency = <27000000>; clock-frequency = <26000000>;
}; };
}; };
...@@ -52,7 +52,7 @@ power { ...@@ -52,7 +52,7 @@ power {
label = "Power Button"; label = "Power Button";
gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>; gpios = <&gpio5 2 GPIO_ACTIVE_HIGH>;
linux,code = <KEY_POWER>; linux,code = <KEY_POWER>;
gpio-key,wakeup; wakeup-source;
}; };
}; };
...@@ -227,6 +227,11 @@ spidev1: spi@1 { ...@@ -227,6 +227,11 @@ spidev1: spi@1 {
&fec { &fec {
pinctrl-names = "default"; pinctrl-names = "default";
pinctrl-0 = <&pinctrl_enet>; pinctrl-0 = <&pinctrl_enet>;
clocks = <&clks IMX6QDL_CLK_ENET>,
<&clks IMX6QDL_CLK_ENET>,
<&clks IMX6QDL_CLK_ENET_REF>,
<&clks IMX6QDL_CLK_ENET_REF>;
clock-names = "ipg", "ahb", "ptp", "enet_out";
phy-mode = "rmii"; phy-mode = "rmii";
phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_HIGH>; phy-reset-gpios = <&gpio7 6 GPIO_ACTIVE_HIGH>;
phy-supply = <&reg_3v3_etn>; phy-supply = <&reg_3v3_etn>;
...@@ -276,7 +281,7 @@ polytouch: edt-ft5x06@38 { ...@@ -276,7 +281,7 @@ polytouch: edt-ft5x06@38 {
interrupts = <15 IRQ_TYPE_EDGE_FALLING>; interrupts = <15 IRQ_TYPE_EDGE_FALLING>;
reset-gpios = <&gpio2 22 GPIO_ACTIVE_LOW>; reset-gpios = <&gpio2 22 GPIO_ACTIVE_LOW>;
wake-gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>; wake-gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>;
linux,wakeup; wakeup-source;
}; };
touchscreen: tsc2007@48 { touchscreen: tsc2007@48 {
...@@ -288,7 +293,7 @@ touchscreen: tsc2007@48 { ...@@ -288,7 +293,7 @@ touchscreen: tsc2007@48 {
interrupts = <26 0>; interrupts = <26 0>;
gpios = <&gpio3 26 GPIO_ACTIVE_LOW>; gpios = <&gpio3 26 GPIO_ACTIVE_LOW>;
ti,x-plate-ohms = <660>; ti,x-plate-ohms = <660>;
linux,wakeup; wakeup-source;
}; };
}; };
......
...@@ -34,6 +34,18 @@ reg_usb_h1_vbus: regulator@0 { ...@@ -34,6 +34,18 @@ reg_usb_h1_vbus: regulator@0 {
gpio = <&gpio7 12 0>; gpio = <&gpio7 12 0>;
}; };
}; };
sound {
compatible = "fsl,imx6q-udoo-ac97",
"fsl,imx-audio-ac97";
model = "fsl,imx6q-udoo-ac97";
audio-cpu = <&ssi1>;
audio-routing =
"RX", "Mic Jack",
"Headphone Jack", "TX";
mux-int-port = <1>;
mux-ext-port = <6>;
};
}; };
&fec { &fec {
...@@ -109,6 +121,36 @@ MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 ...@@ -109,6 +121,36 @@ MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
>; >;
}; };
pinctrl_ac97_running: ac97running {
fsl,pins = <
MX6QDL_PAD_DI0_PIN2__AUD6_TXD 0x1b0b0
MX6QDL_PAD_DI0_PIN3__AUD6_TXFS 0x1b0b0
MX6QDL_PAD_DI0_PIN4__AUD6_RXD 0x1b0b0
MX6QDL_PAD_DI0_PIN15__AUD6_TXC 0x1b0b0
MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0
>;
};
pinctrl_ac97_warm_reset: ac97warmreset {
fsl,pins = <
MX6QDL_PAD_DI0_PIN2__AUD6_TXD 0x1b0b0
MX6QDL_PAD_DI0_PIN3__GPIO4_IO19 0x1b0b0
MX6QDL_PAD_DI0_PIN4__AUD6_RXD 0x1b0b0
MX6QDL_PAD_DI0_PIN15__AUD6_TXC 0x1b0b0
MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0
>;
};
pinctrl_ac97_reset: ac97reset {
fsl,pins = <
MX6QDL_PAD_DI0_PIN2__GPIO4_IO18 0x1b0b0
MX6QDL_PAD_DI0_PIN3__GPIO4_IO19 0x1b0b0
MX6QDL_PAD_DI0_PIN4__AUD6_RXD 0x1b0b0
MX6QDL_PAD_DI0_PIN15__AUD6_TXC 0x1b0b0
MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0
>;
};
}; };
}; };
...@@ -132,3 +174,18 @@ &usdhc3 { ...@@ -132,3 +174,18 @@ &usdhc3 {
non-removable; non-removable;
status = "okay"; status = "okay";
}; };
&audmux {
status = "okay";
};
&ssi1 {
cell-index = <0>;
fsl,mode = "ac97-slave";
pinctrl-names = "ac97-running", "ac97-reset", "ac97-warm-reset";
pinctrl-0 = <&pinctrl_ac97_running>;
pinctrl-1 = <&pinctrl_ac97_reset>;
pinctrl-2 = <&pinctrl_ac97_warm_reset>;
ac97-gpios = <&gpio4 19 0 &gpio4 18 0 &gpio2 30 0>;
status = "okay";
};
...@@ -261,7 +261,7 @@ ecspi1: ecspi@02008000 { ...@@ -261,7 +261,7 @@ ecspi1: ecspi@02008000 {
clocks = <&clks IMX6QDL_CLK_ECSPI1>, clocks = <&clks IMX6QDL_CLK_ECSPI1>,
<&clks IMX6QDL_CLK_ECSPI1>; <&clks IMX6QDL_CLK_ECSPI1>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
dmas = <&sdma 3 7 1>, <&sdma 4 7 2>; dmas = <&sdma 3 8 1>, <&sdma 4 8 2>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -275,7 +275,7 @@ ecspi2: ecspi@0200c000 { ...@@ -275,7 +275,7 @@ ecspi2: ecspi@0200c000 {
clocks = <&clks IMX6QDL_CLK_ECSPI2>, clocks = <&clks IMX6QDL_CLK_ECSPI2>,
<&clks IMX6QDL_CLK_ECSPI2>; <&clks IMX6QDL_CLK_ECSPI2>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
dmas = <&sdma 5 7 1>, <&sdma 6 7 2>; dmas = <&sdma 5 8 1>, <&sdma 6 8 2>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -289,7 +289,7 @@ ecspi3: ecspi@02010000 { ...@@ -289,7 +289,7 @@ ecspi3: ecspi@02010000 {
clocks = <&clks IMX6QDL_CLK_ECSPI3>, clocks = <&clks IMX6QDL_CLK_ECSPI3>,
<&clks IMX6QDL_CLK_ECSPI3>; <&clks IMX6QDL_CLK_ECSPI3>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
dmas = <&sdma 7 7 1>, <&sdma 8 7 2>; dmas = <&sdma 7 8 1>, <&sdma 8 8 2>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
...@@ -303,7 +303,7 @@ ecspi4: ecspi@02014000 { ...@@ -303,7 +303,7 @@ ecspi4: ecspi@02014000 {
clocks = <&clks IMX6QDL_CLK_ECSPI4>, clocks = <&clks IMX6QDL_CLK_ECSPI4>,
<&clks IMX6QDL_CLK_ECSPI4>; <&clks IMX6QDL_CLK_ECSPI4>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
dmas = <&sdma 9 7 1>, <&sdma 10 7 2>; dmas = <&sdma 9 8 1>, <&sdma 10 8 2>;
dma-names = "rx", "tx"; dma-names = "rx", "tx";
status = "disabled"; status = "disabled";
}; };
......
/*
* Copyright 2016 Freescale Semiconductor, Inc.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6qp.dtsi"
#include "imx6qdl-sabreauto.dtsi"
/ {
model = "Freescale i.MX6 Quad Plus SABRE Automotive Board";
compatible = "fsl,imx6qp-sabreauto", "fsl,imx6qp";
};
&i2c2 {
max7322: gpio@68 {
compatible = "maxim,max7322";
reg = <0x68>;
gpio-controller;
#gpio-cells = <2>;
};
};
&iomuxc {
imx6qdl-sabreauto {
pinctrl_enet: enetgrp {
fsl,pins = <
MX6QDL_PAD_KEY_COL1__ENET_MDIO 0x1b0b0
MX6QDL_PAD_KEY_COL2__ENET_MDC 0x1b0b0
MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b018
MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b018
MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b018
MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b018
MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b018
MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b018
MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b018
MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b018
MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b018
MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b018
MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b018
MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b018
MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8
MX6QDL_PAD_GPIO_6__ENET_IRQ 0x000b1
>;
};
};
};
&pcie {
status = "disabled";
};
&vgen3_reg {
regulator-always-on;
};
/*
* Copyright 2016 Freescale Semiconductor, Inc.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
/dts-v1/;
#include "imx6qp.dtsi"
#include "imx6qdl-sabresd.dtsi"
/ {
model = "Freescale i.MX6 Quad Plus SABRE Smart Device Board";
compatible = "fsl,imx6qp-sabresd", "fsl,imx6qp";
};
&cpu0 {
arm-supply = <&sw2_reg>;
};
&iomuxc {
imx6qdl-sabresd {
pinctrl_usdhc2: usdhc2grp {
fsl,pins = <
MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059
MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10071
MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059
MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059
MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059
MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059
MX6QDL_PAD_NANDF_D4__SD2_DATA4 0x17059
MX6QDL_PAD_NANDF_D5__SD2_DATA5 0x17059
MX6QDL_PAD_NANDF_D6__SD2_DATA6 0x17059
MX6QDL_PAD_NANDF_D7__SD2_DATA7 0x17059
>;
};
pinctrl_usdhc3: usdhc3grp {
fsl,pins = <
MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059
MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10071
MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059
MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059
MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059
MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059
MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059
MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059
MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059
MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059
>;
};
};
};
&pcie {
status = "disabled";
};
/*
* Copyright 2016 Freescale Semiconductor, Inc.
*
* This file is dual-licensed: you can use it either under the terms
* of the GPL or the X11 license, at your option. Note that this dual
* licensing only applies to this file, and not this project as a
* whole.
*
* a) This file is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License as
* published by the Free Software Foundation; either version 2 of the
* License, or (at your option) any later version.
*
* This file is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Or, alternatively,
*
* b) Permission is hereby granted, free of charge, to any person
* obtaining a copy of this software and associated documentation
* files (the "Software"), to deal in the Software without
* restriction, including without limitation the rights to use,
* copy, modify, merge, publish, distribute, sublicense, and/or
* sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following
* conditions:
*
* The above copyright notice and this permission notice shall be
* included in all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
* NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
* WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
* OTHER DEALINGS IN THE SOFTWARE.
*/
#include "imx6q.dtsi"
/ {
soc {
ocram2: sram@00940000 {
compatible = "mmio-sram";
reg = <0x00940000 0x20000>;
clocks = <&clks IMX6QDL_CLK_OCRAM>;
};
ocram3: sram@00960000 {
compatible = "mmio-sram";
reg = <0x00960000 0x20000>;
clocks = <&clks IMX6QDL_CLK_OCRAM>;
};
ipu1: ipu@02400000 {
compatible = "fsl,imx6qp-ipu", "fsl,imx6q-ipu";
clocks = <&clks IMX6QDL_CLK_IPU1>,
<&clks IMX6QDL_CLK_IPU1_DI0>, <&clks IMX6QDL_CLK_IPU1_DI1>,
<&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>,
<&clks IMX6QDL_CLK_LDB_DI0_PODF>, <&clks IMX6QDL_CLK_LDB_DI1_PODF>,
<&clks IMX6QDL_CLK_PRG0_APB>;
clock-names = "bus",
"di0", "di1",
"di0_sel", "di1_sel",
"ldb_di0", "ldb_di1", "prg";
};
ipu2: ipu@02800000 {
compatible = "fsl,imx6qp-ipu", "fsl,imx6q-ipu";
clocks = <&clks IMX6QDL_CLK_IPU2>,
<&clks IMX6QDL_CLK_IPU2_DI0>, <&clks IMX6QDL_CLK_IPU2_DI1>,
<&clks IMX6QDL_CLK_IPU2_DI0_SEL>, <&clks IMX6QDL_CLK_IPU2_DI1_SEL>,
<&clks IMX6QDL_CLK_LDB_DI0_PODF>, <&clks IMX6QDL_CLK_LDB_DI1_PODF>,
<&clks IMX6QDL_CLK_PRG1_APB>;
clock-names = "bus",
"di0", "di1",
"di0_sel", "di1_sel",
"ldb_di0", "ldb_di1", "prg";
};
};
};
...@@ -118,7 +118,7 @@ &usdhc3 { ...@@ -118,7 +118,7 @@ &usdhc3 {
bus-width = <4>; bus-width = <4>;
non-removable; non-removable;
keep-power-in-suspend; keep-power-in-suspend;
enable-sdio-wakeup; wakeup-source;
mmc-pwrseq = <&usdhc3_pwrseq>; mmc-pwrseq = <&usdhc3_pwrseq>;
status = "okay"; status = "okay";
}; };
......
...@@ -52,7 +52,7 @@ &usdhc3 { ...@@ -52,7 +52,7 @@ &usdhc3 {
cd-gpios = <&gpio7 10 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio7 10 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>;
keep-power-in-suspend; keep-power-in-suspend;
enable-sdio-wakeup; wakeup-source;
vmmc-supply = <&vcc_sd3>; vmmc-supply = <&vcc_sd3>;
status = "okay"; status = "okay";
}; };
......
...@@ -184,6 +184,13 @@ &fec2 { ...@@ -184,6 +184,13 @@ &fec2 {
status = "okay"; status = "okay";
}; };
&i2c3 {
clock-frequency = <100000>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_i2c3>;
status = "okay";
};
&i2c4 { &i2c4 {
clock-frequency = <100000>; clock-frequency = <100000>;
pinctrl-names = "default"; pinctrl-names = "default";
...@@ -283,7 +290,7 @@ &usdhc2 { ...@@ -283,7 +290,7 @@ &usdhc2 {
non-removable; non-removable;
no-1-8-v; no-1-8-v;
keep-power-in-suspend; keep-power-in-suspend;
enable-sdio-wakeup; wakeup-source;
status = "okay"; status = "okay";
}; };
...@@ -296,7 +303,7 @@ &usdhc3 { ...@@ -296,7 +303,7 @@ &usdhc3 {
cd-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio2 15 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio2 15 GPIO_ACTIVE_HIGH>;
keep-power-in-suspend; keep-power-in-suspend;
enable-sdio-wakeup; wakeup-source;
vmmc-supply = <&vcc_sd3>; vmmc-supply = <&vcc_sd3>;
status = "okay"; status = "okay";
}; };
...@@ -378,6 +385,13 @@ MX6SX_PAD_GPIO1_IO00__I2C1_SCL 0x4001b8b1 ...@@ -378,6 +385,13 @@ MX6SX_PAD_GPIO1_IO00__I2C1_SCL 0x4001b8b1
>; >;
}; };
pinctrl_i2c3: i2c3grp {
fsl,pins = <
MX6SX_PAD_KEY_ROW4__I2C3_SDA 0x4001b8b1
MX6SX_PAD_KEY_COL4__I2C3_SCL 0x4001b8b1
>;
};
pinctrl_i2c4: i2c4grp { pinctrl_i2c4: i2c4grp {
fsl,pins = < fsl,pins = <
MX6SX_PAD_CSI_DATA07__I2C4_SDA 0x4001b8b1 MX6SX_PAD_CSI_DATA07__I2C4_SDA 0x4001b8b1
......
...@@ -8,7 +8,6 @@ ...@@ -8,7 +8,6 @@
/dts-v1/; /dts-v1/;
#include <dt-bindings/input/input.h>
#include "imx6ul.dtsi" #include "imx6ul.dtsi"
/ { / {
...@@ -131,7 +130,7 @@ &usdhc1 { ...@@ -131,7 +130,7 @@ &usdhc1 {
pinctrl-2 = <&pinctrl_usdhc1_200mhz>; pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
keep-power-in-suspend; keep-power-in-suspend;
enable-sdio-wakeup; wakeup-source;
vmmc-supply = <&reg_sd1_vmmc>; vmmc-supply = <&reg_sd1_vmmc>;
status = "okay"; status = "okay";
}; };
...@@ -141,7 +140,7 @@ &usdhc2 { ...@@ -141,7 +140,7 @@ &usdhc2 {
pinctrl-0 = <&pinctrl_usdhc2>; pinctrl-0 = <&pinctrl_usdhc2>;
no-1-8-v; no-1-8-v;
keep-power-in-suspend; keep-power-in-suspend;
enable-sdio-wakeup; wakeup-source;
status = "okay"; status = "okay";
}; };
......
This diff is collapsed.
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include <dt-bindings/clock/imx6ul-clock.h> #include <dt-bindings/clock/imx6ul-clock.h>
#include <dt-bindings/gpio/gpio.h> #include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
#include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/interrupt-controller/arm-gic.h>
#include "imx6ul-pinfunc.h" #include "imx6ul-pinfunc.h"
#include "skeleton.dtsi" #include "skeleton.dtsi"
...@@ -140,6 +141,39 @@ ocram: sram@00900000 { ...@@ -140,6 +141,39 @@ ocram: sram@00900000 {
reg = <0x00900000 0x20000>; reg = <0x00900000 0x20000>;
}; };
dma_apbh: dma-apbh@01804000 {
compatible = "fsl,imx6q-dma-apbh", "fsl,imx28-dma-apbh";
reg = <0x01804000 0x2000>;
interrupts = <0 13 IRQ_TYPE_LEVEL_HIGH>,
<0 13 IRQ_TYPE_LEVEL_HIGH>,
<0 13 IRQ_TYPE_LEVEL_HIGH>,
<0 13 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "gpmi0", "gpmi1", "gpmi2", "gpmi3";
#dma-cells = <1>;
dma-channels = <4>;
clocks = <&clks IMX6UL_CLK_APBHDMA>;
};
gpmi: gpmi-nand@01806000 {
compatible = "fsl,imx6q-gpmi-nand";
#address-cells = <1>;
#size-cells = <1>;
reg = <0x01806000 0x2000>, <0x01808000 0x2000>;
reg-names = "gpmi-nand", "bch";
interrupts = <0 15 IRQ_TYPE_LEVEL_HIGH>;
interrupt-names = "bch";
clocks = <&clks IMX6UL_CLK_GPMI_IO>,
<&clks IMX6UL_CLK_GPMI_APB>,
<&clks IMX6UL_CLK_GPMI_BCH>,
<&clks IMX6UL_CLK_GPMI_BCH_APB>,
<&clks IMX6UL_CLK_PER_BCH>;
clock-names = "gpmi_io", "gpmi_apb", "gpmi_bch",
"gpmi_bch_apb", "per1_bch";
dmas = <&dma_apbh 0>;
dma-names = "rx-tx";
status = "disabled";
};
aips1: aips-bus@02000000 { aips1: aips-bus@02000000 {
compatible = "fsl,aips-bus", "simple-bus"; compatible = "fsl,aips-bus", "simple-bus";
#address-cells = <1>; #address-cells = <1>;
...@@ -234,6 +268,126 @@ uart8: serial@02024000 { ...@@ -234,6 +268,126 @@ uart8: serial@02024000 {
clock-names = "ipg", "per"; clock-names = "ipg", "per";
status = "disabled"; status = "disabled";
}; };
sai1: sai@02028000 {
#sound-dai-cells = <0>;
compatible = "fsl,imx6ul-sai", "fsl,imx6sx-sai";
reg = <0x02028000 0x4000>;
interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_SAI1_IPG>,
<&clks IMX6UL_CLK_SAI1>,
<&clks IMX6UL_CLK_DUMMY>, <&clks IMX6UL_CLK_DUMMY>;
clock-names = "bus", "mclk1", "mclk2", "mclk3";
dmas = <&sdma 35 24 0>,
<&sdma 36 24 0>;
dma-names = "rx", "tx";
status = "disabled";
};
sai2: sai@0202c000 {
#sound-dai-cells = <0>;
compatible = "fsl,imx6ul-sai", "fsl,imx6sx-sai";
reg = <0x0202c000 0x4000>;
interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_SAI2_IPG>,
<&clks IMX6UL_CLK_SAI2>,
<&clks IMX6UL_CLK_DUMMY>, <&clks IMX6UL_CLK_DUMMY>;
clock-names = "bus", "mclk1", "mclk2", "mclk3";
dmas = <&sdma 37 24 0>,
<&sdma 38 24 0>;
dma-names = "rx", "tx";
status = "disabled";
};
sai3: sai@02030000 {
#sound-dai-cells = <0>;
compatible = "fsl,imx6ul-sai", "fsl,imx6sx-sai";
reg = <0x02030000 0x4000>;
interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_SAI3_IPG>,
<&clks IMX6UL_CLK_SAI3>,
<&clks IMX6UL_CLK_DUMMY>, <&clks IMX6UL_CLK_DUMMY>;
clock-names = "bus", "mclk1", "mclk2", "mclk3";
dmas = <&sdma 39 24 0>,
<&sdma 40 24 0>;
dma-names = "rx", "tx";
status = "disabled";
};
};
tsc: tsc@02040000 {
compatible = "fsl,imx6ul-tsc";
reg = <0x02040000 0x4000>, <0x0219c000 0x4000>;
interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_IPG>,
<&clks IMX6UL_CLK_ADC2>;
clock-names = "tsc", "adc";
status = "disabled";
};
pwm1: pwm@02080000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x02080000 0x4000>;
interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_PWM1>,
<&clks IMX6UL_CLK_PWM1>;
clock-names = "ipg", "per";
#pwm-cells = <2>;
status = "disabled";
};
pwm2: pwm@02084000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x02084000 0x4000>;
interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_PWM2>,
<&clks IMX6UL_CLK_PWM2>;
clock-names = "ipg", "per";
#pwm-cells = <2>;
status = "disabled";
};
pwm3: pwm@02088000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x02088000 0x4000>;
interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_PWM3>,
<&clks IMX6UL_CLK_PWM3>;
clock-names = "ipg", "per";
#pwm-cells = <2>;
status = "disabled";
};
pwm4: pwm@0208c000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x0208c000 0x4000>;
interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_PWM4>,
<&clks IMX6UL_CLK_PWM4>;
clock-names = "ipg", "per";
#pwm-cells = <2>;
status = "disabled";
};
can1: flexcan@02090000 {
compatible = "fsl,imx6ul-flexcan", "fsl,imx6q-flexcan";
reg = <0x02090000 0x4000>;
interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_CAN1_IPG>,
<&clks IMX6UL_CLK_CAN1_SERIAL>;
clock-names = "ipg", "per";
status = "disabled";
};
can2: flexcan@02094000 {
compatible = "fsl,imx6ul-flexcan", "fsl,imx6q-flexcan";
reg = <0x02094000 0x4000>;
interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_CAN2_IPG>,
<&clks IMX6UL_CLK_CAN2_SERIAL>;
clock-names = "ipg", "per";
status = "disabled";
}; };
gpt1: gpt@02098000 { gpt1: gpt@02098000 {
...@@ -317,6 +471,14 @@ fec2: ethernet@020b4000 { ...@@ -317,6 +471,14 @@ fec2: ethernet@020b4000 {
status = "disabled"; status = "disabled";
}; };
kpp: kpp@020b8000 {
compatible = "fsl,imx6ul-kpp", "fsl,imx6q-kpp", "fsl,imx21-kpp";
reg = <0x020b8000 0x4000>;
interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_KPP>;
status = "disabled";
};
wdog1: wdog@020bc000 { wdog1: wdog@020bc000 {
compatible = "fsl,imx6ul-wdt", "fsl,imx21-wdt"; compatible = "fsl,imx6ul-wdt", "fsl,imx21-wdt";
reg = <0x020bc000 0x4000>; reg = <0x020bc000 0x4000>;
...@@ -487,49 +649,65 @@ gpt2: gpt@020e8000 { ...@@ -487,49 +649,65 @@ gpt2: gpt@020e8000 {
compatible = "fsl,imx6ul-gpt", "fsl,imx6sx-gpt"; compatible = "fsl,imx6ul-gpt", "fsl,imx6sx-gpt";
reg = <0x020e8000 0x4000>; reg = <0x020e8000 0x4000>;
interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_DUMMY>, clocks = <&clks IMX6UL_CLK_GPT2_BUS>,
<&clks IMX6UL_CLK_DUMMY>; <&clks IMX6UL_CLK_GPT2_SERIAL>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
}; };
sdma: sdma@020ec000 {
compatible = "fsl,imx6ul-sdma", "fsl,imx6q-sdma",
"fsl,imx35-sdma";
reg = <0x020ec000 0x4000>;
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_SDMA>,
<&clks IMX6UL_CLK_SDMA>;
clock-names = "ipg", "ahb";
#dma-cells = <3>;
fsl,sdma-ram-script-name = "imx/sdma/sdma-imx6q.bin";
};
pwm5: pwm@020f0000 { pwm5: pwm@020f0000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x020f0000 0x4000>; reg = <0x020f0000 0x4000>;
interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_DUMMY>, clocks = <&clks IMX6UL_CLK_PWM5>,
<&clks IMX6UL_CLK_DUMMY>; <&clks IMX6UL_CLK_PWM5>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
#pwm-cells = <2>; #pwm-cells = <2>;
status = "disabled";
}; };
pwm6: pwm@020f4000 { pwm6: pwm@020f4000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x020f4000 0x4000>; reg = <0x020f4000 0x4000>;
interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_DUMMY>, clocks = <&clks IMX6UL_CLK_PWM6>,
<&clks IMX6UL_CLK_DUMMY>; <&clks IMX6UL_CLK_PWM6>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
#pwm-cells = <2>; #pwm-cells = <2>;
status = "disabled";
}; };
pwm7: pwm@020f8000 { pwm7: pwm@020f8000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x020f8000 0x4000>; reg = <0x020f8000 0x4000>;
interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_DUMMY>, clocks = <&clks IMX6UL_CLK_PWM7>,
<&clks IMX6UL_CLK_DUMMY>; <&clks IMX6UL_CLK_PWM7>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
#pwm-cells = <2>; #pwm-cells = <2>;
status = "disabled";
}; };
pwm8: pwm@020fc000 { pwm8: pwm@020fc000 {
compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm"; compatible = "fsl,imx6ul-pwm", "fsl,imx27-pwm";
reg = <0x020fc000 0x4000>; reg = <0x020fc000 0x4000>;
interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>; interrupts = <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_DUMMY>, clocks = <&clks IMX6UL_CLK_PWM8>,
<&clks IMX6UL_CLK_DUMMY>; <&clks IMX6UL_CLK_PWM8>;
clock-names = "ipg", "per"; clock-names = "ipg", "per";
#pwm-cells = <2>; #pwm-cells = <2>;
status = "disabled";
}; };
}; };
...@@ -590,17 +768,6 @@ fec1: ethernet@02188000 { ...@@ -590,17 +768,6 @@ fec1: ethernet@02188000 {
status = "disabled"; status = "disabled";
}; };
tsc: tsc@02040000 {
compatible = "fsl,imx6ul-tsc";
reg = <0x02040000 0x4000>, <0x0219c000 0x4000>;
interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
<GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_IPG>,
<&clks IMX6UL_CLK_ADC2>;
clock-names = "tsc", "adc";
status = "disabled";
};
usdhc1: usdhc@02190000 { usdhc1: usdhc@02190000 {
compatible = "fsl,imx6ul-usdhc", "fsl,imx6sx-usdhc"; compatible = "fsl,imx6ul-usdhc", "fsl,imx6sx-usdhc";
reg = <0x02190000 0x4000>; reg = <0x02190000 0x4000>;
...@@ -672,6 +839,17 @@ mmdc: mmdc@021b0000 { ...@@ -672,6 +839,17 @@ mmdc: mmdc@021b0000 {
reg = <0x021b0000 0x4000>; reg = <0x021b0000 0x4000>;
}; };
lcdif: lcdif@021c8000 {
compatible = "fsl,imx6ul-lcdif", "fsl,imx28-lcdif";
reg = <0x021c8000 0x4000>;
interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clks IMX6UL_CLK_LCDIF_PIX>,
<&clks IMX6UL_CLK_LCDIF_APB>,
<&clks IMX6UL_CLK_DUMMY>;
clock-names = "pix", "axi", "disp_axi";
status = "disabled";
};
qspi: qspi@021e0000 { qspi: qspi@021e0000 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
......
...@@ -22,7 +22,7 @@ &usdhc1 { ...@@ -22,7 +22,7 @@ &usdhc1 {
pinctrl-0 = <&pinctrl_usdhc1>; pinctrl-0 = <&pinctrl_usdhc1>;
cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
enable-sdio-wakeup; wakeup-source;
status = "okay"; status = "okay";
}; };
......
...@@ -296,7 +296,7 @@ &usdhc1 { ...@@ -296,7 +296,7 @@ &usdhc1 {
pinctrl-0 = <&pinctrl_usdhc1>; pinctrl-0 = <&pinctrl_usdhc1>;
cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; cd-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>;
wp-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; wp-gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>;
enable-sdio-wakeup; wakeup-source;
keep-power-in-suspend; keep-power-in-suspend;
status = "okay"; status = "okay";
}; };
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment