diff options
Diffstat (limited to 'arch/arm/boot/dts')
19 files changed, 528 insertions, 25 deletions
diff --git a/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts b/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts index 9de45a717356..17a3dbac6695 100644 --- a/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts +++ b/arch/arm/boot/dts/imx6dl-colibri-eval-v3.dts @@ -98,7 +98,6 @@ compatible = "fsl,imx-parallel-display"; #address-cells = <1>; #size-cells = <0>; - interface-pix-fmt = "bgr666"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ipu1_lcdif>; status = "okay"; @@ -120,13 +119,25 @@ }; }; - panel: panel { - /* - * edt,et057090dhu: EDT 5.7" LCD TFT - * edt,et070080dh6: EDT 7.0" LCD TFT - */ - compatible = "edt,et057090dhu"; + panel_dpi: panel-dpi { + compatible = "panel-dpi"; backlight = <&backlight>; + width-mm = <115>; + height-mm = <86>; + + data-mapping = "bgr666"; + + panel-timing { + clock-frequency = <25175000>; + hactive = <640>; + vactive = <480>; + hsync-len = <30>; + hfront-porch = <16>; + hback-porch = <114>; + vsync-len = <3>; + vfront-porch = <10>; + vback-porch = <32>; + }; port { lcd_panel_in: endpoint { diff --git a/arch/arm/boot/dts/imx6q-apalis-eval.dts b/arch/arm/boot/dts/imx6q-apalis-eval.dts index 707ac9a46115..5a6bff6bf458 100644 --- a/arch/arm/boot/dts/imx6q-apalis-eval.dts +++ b/arch/arm/boot/dts/imx6q-apalis-eval.dts @@ -84,7 +84,6 @@ compatible = "fsl,imx-parallel-display"; #address-cells = <1>; #size-cells = <0>; - interface-pix-fmt = "rgb24"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_ipu1_lcdif>; status = "okay"; @@ -106,14 +105,25 @@ }; }; - panel: panel { - /* - * edt,et057090dhu: EDT 5.7" LCD TFT - * edt,et070080dh6: EDT 7.0" LCD TFT - */ - compatible = "edt,et057090dhu"; - backlight = <&backlight>; - power-supply = <®_3v3_sw>; + panel_dpi: panel-dpi { + compatible = "panel-dpi"; + + width-mm = <115>; + height-mm = <86>; + + data-mapping = "rgb24"; + + panel-timing { + clock-frequency = <25175000>; + hactive = <640>; + vactive = <480>; + hsync-len = <30>; + hfront-porch = <16>; + hback-porch = <114>; + vsync-len = <3>; + vfront-porch = <10>; + vback-porch = <32>; + }; port { lcd_panel_in: endpoint { @@ -122,6 +132,36 @@ }; }; + panel_lvds: panel-lvds { + compatible = "panel-lvds"; + + width-mm = <218>; + height-mm = <137>; + + data-mapping = "vesa-24"; + + panel-timing { + clock-frequency = <68930000>; + hactive = <1280>; + vactive = <800>; + hback-porch = <64>; + hfront-porch = <64>; + vback-porch = <5>; + vfront-porch = <5>; + hsync-len = <40>; + vsync-len = <6>; + hsync-active = <0>; + vsync-active = <0>; + pixelclk-active = <0>; + }; + + port { + lvds_panel_in: endpoint { + remote-endpoint = <&lvds_out>; + }; + }; + }; + reg_pcie_switch: regulator-pcie-switch { compatible = "regulator-fixed"; regulator-name = "pcie_switch"; @@ -140,6 +180,16 @@ regulator-max-microvolt = <3300000>; regulator-always-on; }; + + vga { + compatible = "vga-connector"; + + port { + vga_con_in: endpoint { + remote-endpoint = <&vga_bridge_out>; + }; + }; + }; }; &backlight { @@ -159,6 +209,13 @@ status = "okay"; }; +&clks { + assigned-clocks = <&clks IMX6QDL_CLK_IPU1_DI1_PRE_SEL>, + <&clks IMX6QDL_CLK_IPU2_DI0_PRE_SEL>; + assigned-clock-parents = <&clks IMX6QDL_CLK_PLL2_PFD2_396M>, + <&clks IMX6QDL_CLK_PLL2_PFD2_396M>; +}; + &hdmi { status = "okay"; }; @@ -193,9 +250,24 @@ &ldb { status = "okay"; + + lvds-channel@0 { + status = "okay"; + primary; + + port@4 { + reg = <4>; + + lvds_out: endpoint { + remote-endpoint = <&lvds_panel_in>; + }; + }; + }; }; &pcie { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_reset_moci>; /* active-high meaning opposite of regular PERST# active-low polarity */ reset-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>; reset-gpio-active-high; @@ -281,6 +353,24 @@ status = "okay"; }; +&vgabridge { + status = "okay"; + + ports { + port@1 { + reg = <1>; + + vga_bridge_out: endpoint { + remote-endpoint = <&vga_con_in>; + }; + }; + }; +}; + +&vgadisplay { + status = "okay"; +}; + &iomuxc { /* * Mux the Apalis GPIOs diff --git a/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts b/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts index 4e1c8feaef82..b94bb687be6b 100644 --- a/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts +++ b/arch/arm/boot/dts/imx6q-apalis-ixora-v1.1.dts @@ -196,6 +196,8 @@ }; &pcie { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_reset_moci>; /* active-high meaning opposite of regular PERST# active-low polarity */ reset-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>; reset-gpio-active-high; diff --git a/arch/arm/boot/dts/imx6q-apalis-ixora.dts b/arch/arm/boot/dts/imx6q-apalis-ixora.dts index 469e3d0e2827..302fd6adc8a7 100644 --- a/arch/arm/boot/dts/imx6q-apalis-ixora.dts +++ b/arch/arm/boot/dts/imx6q-apalis-ixora.dts @@ -200,6 +200,8 @@ }; &pcie { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_reset_moci>; /* active-high meaning opposite of regular PERST# active-low polarity */ reset-gpio = <&gpio1 28 GPIO_ACTIVE_HIGH>; reset-gpio-active-high; diff --git a/arch/arm/boot/dts/imx6qdl-apalis.dtsi b/arch/arm/boot/dts/imx6qdl-apalis.dtsi index 05f07ea3e8c8..0b47aecf336a 100644 --- a/arch/arm/boot/dts/imx6qdl-apalis.dtsi +++ b/arch/arm/boot/dts/imx6qdl-apalis.dtsi @@ -61,6 +61,18 @@ status = "disabled"; }; + /* DDC_I2C: I2C2_SDA/SCL on MXM3 205/207 */ + i2cddc: i2c@0 { + compatible = "i2c-gpio"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c_ddc>; + gpios = <&gpio3 16 GPIO_ACTIVE_HIGH /* sda */ + &gpio2 30 GPIO_ACTIVE_HIGH /* scl */ + >; + i2c-gpio,delay-us = <2>; /* ~100 kHz */ + status = "disabled"; + }; + reg_module_3v3: regulator-module-3v3 { compatible = "regulator-fixed"; regulator-name = "+V3.3"; @@ -138,6 +150,54 @@ spdif-out; status = "disabled"; }; + + vgabridge: bridge { + compatible = "dumb-vga-dac"; + #address-cells = <1>; + #size-cells = <0>; + de-active = <0>; + status = "disabled"; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + vga_bridge_in: endpoint { + remote-endpoint = <&vga_display_out>; + }; + }; + }; + }; + + vgadisplay: display@di0 { + compatible = "fsl,imx-parallel-display"; + #address-cells = <1>; + #size-cells = <0>; + interface-pix-fmt = "rgb565"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_ipu2_vdac>; + status = "disabled"; + + port@0 { + reg = <0>; + + vga_display_in: endpoint { + remote-endpoint = <&ipu2_di0_disp0>; + }; + }; + + port@1 { + reg = <1>; + + vga_display_out: endpoint { + remote-endpoint = <&vga_bridge_in>; + }; + }; + }; + }; &audmux { @@ -373,6 +433,10 @@ status = "disabled"; }; +&ipu2_di0_disp0 { + remote-endpoint = <&vga_display_in>; +}; + &pwm1 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm1>; @@ -482,10 +546,6 @@ }; &iomuxc { - /* pins used on module */ - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_reset_moci>; - pinctrl_apalis_gpio1: gpio2io04grp { fsl,pins = < MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x130b0 @@ -636,6 +696,14 @@ >; }; + pinctrl_i2c_ddc: gpioi2cddcgrp { + fsl,pins = < + /* DDC bitbang */ + MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0 + MX6QDL_PAD_EIM_D16__GPIO3_IO16 0x1b0b0 + >; + }; + pinctrl_i2c1: i2c1grp { fsl,pins = < MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 diff --git a/arch/arm/boot/dts/imx6ul.dtsi b/arch/arm/boot/dts/imx6ul.dtsi index 6dc0b569acdf..b0193abf7005 100644 --- a/arch/arm/boot/dts/imx6ul.dtsi +++ b/arch/arm/boot/dts/imx6ul.dtsi @@ -227,6 +227,8 @@ clocks = <&clks IMX6UL_CLK_ECSPI1>, <&clks IMX6UL_CLK_ECSPI1>; clock-names = "ipg", "per"; + dmas = <&sdma 3 7 1>, <&sdma 4 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; @@ -239,6 +241,8 @@ clocks = <&clks IMX6UL_CLK_ECSPI2>, <&clks IMX6UL_CLK_ECSPI2>; clock-names = "ipg", "per"; + dmas = <&sdma 5 7 1>, <&sdma 6 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; @@ -251,6 +255,8 @@ clocks = <&clks IMX6UL_CLK_ECSPI3>, <&clks IMX6UL_CLK_ECSPI3>; clock-names = "ipg", "per"; + dmas = <&sdma 7 7 1>, <&sdma 8 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; @@ -263,6 +269,8 @@ clocks = <&clks IMX6UL_CLK_ECSPI4>, <&clks IMX6UL_CLK_ECSPI4>; clock-names = "ipg", "per"; + dmas = <&sdma 9 7 1>, <&sdma 10 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; diff --git a/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi b/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi index 3f2746169181..b6a4cc387695 100644 --- a/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi +++ b/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi @@ -52,13 +52,30 @@ clock-frequency = <16000000>; }; - panel: panel { - compatible = "edt,et057090dhu"; + panel_dpi: panel-dpi { + compatible = "panel-dpi"; backlight = <&bl>; power-supply = <®_3v3>; + width-mm = <115>; + height-mm = <86>; + + data-mapping = "bgr666"; + + panel-timing { + clock-frequency = <25175000>; + hactive = <640>; + vactive = <480>; + hsync-len = <30>; + hfront-porch = <16>; + hback-porch = <114>; + vsync-len = <3>; + vfront-porch = <10>; + vback-porch = <32>; + }; + port { - panel_in: endpoint { + lcd_panel_in: endpoint { remote-endpoint = <&lcdif_out>; }; }; @@ -143,7 +160,7 @@ port { lcdif_out: endpoint { - remote-endpoint = <&panel_in>; + remote-endpoint = <&lcd_panel_in>; }; }; }; diff --git a/arch/arm/boot/dts/imx7-colibri.dtsi b/arch/arm/boot/dts/imx7-colibri.dtsi index 895fbde4d433..37aeba999be3 100644 --- a/arch/arm/boot/dts/imx7-colibri.dtsi +++ b/arch/arm/boot/dts/imx7-colibri.dtsi @@ -319,10 +319,10 @@ assigned-clock-rates = <400000000>; bus-width = <8>; fsl,tuning-step = <2>; - max-frequency = <100000000>; vmmc-supply = <®_module_3v3>; vqmmc-supply = <®_DCDC3>; non-removable; + sdhci-caps-mask = <0x80000000 0x0>; }; &iomuxc { diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi index a052198f6e96..b9330176c3af 100644 --- a/arch/arm/boot/dts/imx7s.dtsi +++ b/arch/arm/boot/dts/imx7s.dtsi @@ -653,6 +653,8 @@ clocks = <&clks IMX7D_ECSPI4_ROOT_CLK>, <&clks IMX7D_ECSPI4_ROOT_CLK>; clock-names = "ipg", "per"; + dmas = <&sdma 6 7 1>, <&sdma 7 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; @@ -734,6 +736,8 @@ clocks = <&clks IMX7D_ECSPI1_ROOT_CLK>, <&clks IMX7D_ECSPI1_ROOT_CLK>; clock-names = "ipg", "per"; + dmas = <&sdma 0 7 1>, <&sdma 1 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; @@ -746,6 +750,8 @@ clocks = <&clks IMX7D_ECSPI2_ROOT_CLK>, <&clks IMX7D_ECSPI2_ROOT_CLK>; clock-names = "ipg", "per"; + dmas = <&sdma 2 7 1>, <&sdma 3 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; @@ -758,6 +764,8 @@ clocks = <&clks IMX7D_ECSPI3_ROOT_CLK>, <&clks IMX7D_ECSPI3_ROOT_CLK>; clock-names = "ipg", "per"; + dmas = <&sdma 4 7 1>, <&sdma 5 7 2>; + dma-names = "rx", "tx"; status = "disabled"; }; diff --git a/arch/arm/boot/dts/overlays/README b/arch/arm/boot/dts/overlays/README new file mode 100644 index 000000000000..737ec4a8e6e9 --- /dev/null +++ b/arch/arm/boot/dts/overlays/README @@ -0,0 +1,33 @@ +Introduction +============ + +This directory contains Device Tree overlays. + +Current avalible and supported overlays +======================================= + +Display +--------------------------------------- +display_EDT5.7_parallel_res_touch.dts -> 5.7 inch display proivded by Toradex https://developer.toradex.com/products/edt-display +display_EDT7_parallel_res_touch.dts -> 7 inch display proivded by Toradex https://developer.toradex.com/products/edt-display +display_10.1_lvds_cap_touch.dts -> 10.1 inch lvds display proivded by Toradex +display_7_parallel_cap_touch.dts -> Display with capacitive touch https://developer.toradex.com/products/capacitive-touch-display-7inch-parallel + +Touch controllers +---------------------------------------- +touch_cap_apalis_evb.dts -> touch controller for capacitive touch displays +touch_cap_colibri_imx6_evb.dts -> touch controller for capaccitive touch display compatible with colibri-imx6 and evaluation board +touch_cap_colibri_imx6_aster.dts -> touch controller for capaccitive touch display compatible with colibri-imx6 and Aster board +touch_cap_colibri_imx7_evb.dts -> touch controller for capaccitive touch display compatible with colibri-imx7 and evaluation board +touch_cap_colibri_imx7_aster.dts -> touch controller for capaccitive touch display compatible with colibri-imx7 and Aster board +======================================= + +touch_cap_apalis_evb.dts + -> Compatible with + - display_10.1_lvds_cap_touch.dts + - display_7_parallel_cap_touch.dts + + +touch_cap_colibri_imx6_evb.dts +touch_cap_colibri_imx7_evb.dts + -> When applying this overlay device has to be powercycled diff --git a/arch/arm/boot/dts/overlays/display_10.1_lvds_cap_touch.dts b/arch/arm/boot/dts/overlays/display_10.1_lvds_cap_touch.dts new file mode 100644 index 000000000000..3aa7df403935 --- /dev/null +++ b/arch/arm/boot/dts/overlays/display_10.1_lvds_cap_touch.dts @@ -0,0 +1,35 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,apalis_imx6q"; + fragment@0 { + target-path = "/panel-dpi"; + __overlay__ { + status = "disabled"; + }; + }; + fragment@1 { + target-path="/panel-lvds"; + __overlay__ { + status="okay"; + data-mapping = "vesa-24"; + width-mm = <1280>; + height-mm = <800>; + panel-timing { + clock-frequency = <68930000>; + hactive = <1280>; + vactive = <800>; + hback-porch = <64>; + hfront-porch = <64>; + vback-porch = <5>; + vfront-porch = <5>; + hsync-len = <40>; + vsync-len = <6>; + hsync-active = <0>; + vsync-active = <0>; + pixelclk-active = <0>; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/display_7_parallel_cap_touch.dts b/arch/arm/boot/dts/overlays/display_7_parallel_cap_touch.dts new file mode 100644 index 000000000000..e82d58dd1ada --- /dev/null +++ b/arch/arm/boot/dts/overlays/display_7_parallel_cap_touch.dts @@ -0,0 +1,25 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex"; + fragment@0 { + target-path = "/panel-dpi"; + __overlay__ { + width-mm = <154>; + height-mm = <86>; + panel-timing { + clock-frequency = <33230769>; + hactive = <800>; + vactive = <480>; + hsync-len = <128>; + hfront-porch = <40>; + hback-porch = <88>; + vsync-len = <1>; + vfront-porch = <10>; + vback-porch = <33>; + pixelclk-active = <1>; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/display_EDT5.7_parallel_res_touch.dts.dts b/arch/arm/boot/dts/overlays/display_EDT5.7_parallel_res_touch.dts.dts new file mode 100644 index 000000000000..da112f34e0c8 --- /dev/null +++ b/arch/arm/boot/dts/overlays/display_EDT5.7_parallel_res_touch.dts.dts @@ -0,0 +1,24 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex"; + fragment@0 { + target-path = "/panel-dpi"; + __overlay__ { + width-mm = <116>; + height-mm = <86>; + panel-timing { + clock-frequency = <25175000>; + hactive = <640>; + vactive = <480>; + hsync-len = <30>; + hfront-porch = <16>; + hback-porch = <114>; + vsync-len = <3>; + vfront-porch = <10>; + vback-porch = <32>; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/display_EDT7_parallel_res_touch.dts b/arch/arm/boot/dts/overlays/display_EDT7_parallel_res_touch.dts new file mode 100644 index 000000000000..85df65a7c2cd --- /dev/null +++ b/arch/arm/boot/dts/overlays/display_EDT7_parallel_res_touch.dts @@ -0,0 +1,24 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex"; + fragment@0 { + target-path = "/panel-dpi"; + __overlay__ { + width-mm = <155>; + height-mm = <91>; + panel-timing { + clock-frequency = <33230769>; + hactive = <800>; + vactive = <480>; + hsync-len = <128>; + hfront-porch = <40>; + hback-porch = <88>; + vsync-len = <1>; + vfront-porch = <10>; + vback-porch = <33>; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/touch_cap_apalis_evb.dts b/arch/arm/boot/dts/overlays/touch_cap_apalis_evb.dts new file mode 100644 index 000000000000..0ecac933b32b --- /dev/null +++ b/arch/arm/boot/dts/overlays/touch_cap_apalis_evb.dts @@ -0,0 +1,20 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,apalis_imx6q"; + fragment@0 { + target-path="/soc/aips-bus@2100000/i2c@21a0000"; + __overlay__ { + status = "okay"; + atmel_mxt_ts: atmel_mxt_ts@4a { + compatible = "atmel,maxtouch"; + reg = <0x4a>; + interrupt-parent = <&gpio6>; + interrupts = <10 2>; + reset-gpios = <&gpio6 9 0>; + status = "okay"; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/touch_cap_colibri_imx6_aster.dts b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx6_aster.dts new file mode 100644 index 000000000000..eec97c28bd89 --- /dev/null +++ b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx6_aster.dts @@ -0,0 +1,37 @@ +/dts-v1/; +/plugin/; +/ { + compatible = "toradex,colibri-imx6dl"; + fragment@0 { + target = <&weim>; + __overlay__{ + status = "disabled"; + }; + }; + fragment@1 { + target = <&iomuxc>; + __overlay__ { + pinctrl_atmel_mxt_ts: atmelmxttsgrp { + fsl,pins = < + 0x300 0x6e8 0x000 0x5 0x0 0x1b0b1 + 0x140 0x510 0x000 0x5 0x0 0x1b0b1 + >; + }; + }; + }; + fragment@2 { + target = <&i2c3>; + __overlay__ { + atmel_mxt_ts: atmel_mxt_ts@4a { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_atmel_mxt_ts>; + compatible = "atmel,maxtouch"; + reg = <0x4a>; + interrupt-parent = <&gpio2>; + interrupts = <24 2>; + reset-gpios = <&gpio1 14 0>; + status = "okay"; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/touch_cap_colibri_imx6_evb.dts b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx6_evb.dts new file mode 100644 index 000000000000..ab0c7daff8b1 --- /dev/null +++ b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx6_evb.dts @@ -0,0 +1,31 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx6dl"; + fragment@0 { + target = <&i2c3>; + __overlay__ { + atmel_mxt_ts: atmel_mxt_ts@4a { + compatible = "atmel,maxtouch"; + reg = <0x4a>; + interrupt-parent = <&gpio1>; + interrupts = <9 2>; + reset-gpios = <&gpio2 10 0>; + status = "okay"; + }; + }; + }; + fragment@1 { + target = <&pwm1>; + __overlay__ { + status = "disabled"; + }; + }; + fragment@2 { + target = <&pwm4>; + __overlay__{ + status = "disabled"; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/touch_cap_colibri_imx7_aster.dts b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx7_aster.dts new file mode 100644 index 000000000000..40120335af38 --- /dev/null +++ b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx7_aster.dts @@ -0,0 +1,18 @@ +/dts-v1/; +/plugin/; +/ { + compatible = "toradex,colibri-imx7s"; + fragment@0 { + target = <&i2c4>; + __overlay__ { + atmel_mxt_ts: atmel_mxt_ts@4a { + compatible = "atmel,maxtouch"; + reg = <0x4a>; + interrupt-parent = <&gpio2>; + interrupts = <15 2>; + reset-gpios = <&gpio2 28 0>; + status = "okay"; + }; + }; + }; +}; diff --git a/arch/arm/boot/dts/overlays/touch_cap_colibri_imx7_evb.dts b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx7_evb.dts new file mode 100644 index 000000000000..8b54505565ad --- /dev/null +++ b/arch/arm/boot/dts/overlays/touch_cap_colibri_imx7_evb.dts @@ -0,0 +1,50 @@ +/dts-v1/; +/plugin/; + +/ { + compatible = "toradex,colibri-imx7s"; + fragment@0 { + target = <&i2c4>; + __overlay__ { + atmel_mxt_ts: atmel_mxt_ts@4a { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_atmel_mxt_ts>; + compatible = "atmel,maxtouch"; + reg = <0x4a>; + interrupt-parent = <&gpio1>; + interrupts = <9 2>; + reset-gpios = <&gpio1 10 0>; + status = "okay"; + }; + }; + }; + fragment@1 { + target = <&pwm2>; + __overlay__ { + status = "disabled"; + }; + }; + fragment@2 { + target = <&pwm3>; + __overlay__{ + status = "disabled"; + }; + }; + fragment@3 { + target = <&iomuxc_lpsr>; + __overlay__ { + pinctrl_atmel_mxt_ts: atmelmxttsgrp { + fsl,pins = < + 0x0018 0x0270 0x0000 0x0 0x0 0x59 + 0x001C 0x0274 0x0000 0x0 0x0 0x59 + >; + }; + }; + }; + fragment@4 { + target = <&uart1>; + __overlay__ { + pinctrl-0 = <&pinctrl_uart1 &pinctrl_uart1_ctrl1>; + }; + }; +}; |