From 79fb5bfff92362dc560b4e1938a2db3dcb6dcd14 Mon Sep 17 00:00:00 2001 From: Philippe Schenker Date: Wed, 5 Oct 2022 15:47:44 +0200 Subject: linux-toradex-mainline: ull default peripherals This commit adds two relevant patches that do enable default peripherals for NAND modules. Related-to: ELB-4809 Signed-off-by: Philippe Schenker (cherry picked from commit 3fd01b00dc972f26a6df31619f2c2985148a1270) --- ...colibri-imx6ull-keep-peripherals-disabled.patch | 70 ++++ ...olibri-imx6ull-enable-default-peripherals.patch | 359 +++++++++++++++++++++ recipes-kernel/linux/linux-toradex-mainline_git.bb | 2 + 3 files changed, 431 insertions(+) create mode 100644 recipes-kernel/linux/linux-toradex-mainline-git/0001-arm-dts-colibri-imx6ull-keep-peripherals-disabled.patch create mode 100644 recipes-kernel/linux/linux-toradex-mainline-git/0002-arm-dts-colibri-imx6ull-enable-default-peripherals.patch (limited to 'recipes-kernel') diff --git a/recipes-kernel/linux/linux-toradex-mainline-git/0001-arm-dts-colibri-imx6ull-keep-peripherals-disabled.patch b/recipes-kernel/linux/linux-toradex-mainline-git/0001-arm-dts-colibri-imx6ull-keep-peripherals-disabled.patch new file mode 100644 index 0000000..409b768 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-mainline-git/0001-arm-dts-colibri-imx6ull-keep-peripherals-disabled.patch @@ -0,0 +1,70 @@ +From f1f97a6ad5ecf8bae7e84bee4641f0d91dc9d074 Mon Sep 17 00:00:00 2001 +From: Philippe Schenker +Date: Tue, 4 Oct 2022 16:29:34 +0200 +Subject: [PATCH 1/4] arm: dts: colibri-imx6ull: keep peripherals disabled + +Toradex does provide device-tree overlays to enable certain evaluation +hardware. Keep the buses disabled by default to be enabled again with +overlays. + +For customers including this device-tree this has also the advantage +that the hardware we want by default running does not automatically +enable signals on their end. + +Upstream-Status: Submitted [https://lore.kernel.org/all/20221005133929.1243443-1-dev@pschenker.ch/] +Signed-off-by: Philippe Schenker +--- + + arch/arm/boot/dts/imx6ull-colibri.dtsi | 8 +++++--- + 1 file changed, 5 insertions(+), 3 deletions(-) + +diff --git a/arch/arm/boot/dts/imx6ull-colibri.dtsi b/arch/arm/boot/dts/imx6ull-colibri.dtsi +index 577a424b0e1d..a4429ba1f2ae 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri.dtsi ++++ b/arch/arm/boot/dts/imx6ull-colibri.dtsi +@@ -21,7 +21,7 @@ backlight: backlight { + pinctrl-0 = <&pinctrl_gpio_bl_on>; + power-supply = <®_3v3>; + pwms = <&pwm4 0 5000000 1>; +- status = "okay"; ++ status = "disabled"; + }; + + gpio-keys { +@@ -42,7 +42,7 @@ panel_dpi: panel-dpi { + compatible = "edt,et057090dhu"; + backlight = <&backlight>; + power-supply = <®_3v3>; +- status = "okay"; ++ status = "disabled"; + + port { + lcd_panel_in: endpoint { +@@ -159,7 +159,7 @@ &i2c1 { + pinctrl-1 = <&pinctrl_i2c1_gpio>; + sda-gpios = <&gpio1 29 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; + scl-gpios = <&gpio1 28 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; +- status = "okay"; ++ status = "disabled"; + + /* Atmel maxtouch controller */ + atmel_mxt_ts: touchscreen@4a { +@@ -202,6 +202,7 @@ ad7879_ts: touchscreen@2c { + adi,median-filter-size = /bits/ 8 <2>; + adi,averaging = /bits/ 8 <1>; + adi,conversion-interval = /bits/ 8 <255>; ++ status = "disabled"; + }; + }; + +@@ -209,6 +210,7 @@ &lcdif { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_lcdif_dat + &pinctrl_lcdif_ctrl>; ++ status = "disabled"; + + port { + lcdif_out: endpoint { +-- +2.37.3 + diff --git a/recipes-kernel/linux/linux-toradex-mainline-git/0002-arm-dts-colibri-imx6ull-enable-default-peripherals.patch b/recipes-kernel/linux/linux-toradex-mainline-git/0002-arm-dts-colibri-imx6ull-enable-default-peripherals.patch new file mode 100644 index 0000000..dda0d03 --- /dev/null +++ b/recipes-kernel/linux/linux-toradex-mainline-git/0002-arm-dts-colibri-imx6ull-enable-default-peripherals.patch @@ -0,0 +1,359 @@ +From 6bc6d39f79b3e2a0cfaf3eb9e6abf432cc09666e Mon Sep 17 00:00:00 2001 +From: Philippe Schenker +Date: Mon, 3 Oct 2022 18:07:37 +0200 +Subject: [PATCH 2/4] arm: dts: colibri-imx6ull: enable default peripherals + +For NAND modules Toradex does not provide any device-tree overlays. But +we always had a default display output enabled on NAND modules as well +as touchscreens that are placed on displays which can easily be plugged +into those carrier boards. Do reenable these displays and touchscreen +output on all device-trees that are used on NAND modules. + +Upstream-Status: Submitted [https://lore.kernel.org/all/20221005133929.1243443-2-dev@pschenker.ch/] +Signed-off-by: Philippe Schenker +--- + + arch/arm/boot/dts/imx6ull-colibri-aster.dts | 40 +++++++++++++++++++ + arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts | 24 +++++++++++ + arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts | 40 +++++++++++++++++++ + arch/arm/boot/dts/imx6ull-colibri-iris.dts | 22 +++++++++- + .../boot/dts/imx6ull-colibri-wifi-aster.dts | 40 +++++++++++++++++++ + .../boot/dts/imx6ull-colibri-wifi-eval-v3.dts | 24 +++++++++++ + .../boot/dts/imx6ull-colibri-wifi-iris-v2.dts | 24 +++++++++++ + .../boot/dts/imx6ull-colibri-wifi-iris.dts | 20 ++++++++++ + 8 files changed, 233 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/boot/dts/imx6ull-colibri-aster.dts b/arch/arm/boot/dts/imx6ull-colibri-aster.dts +index d3f2fb7c6c1e..3e0897c3a296 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-aster.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-aster.dts +@@ -15,6 +15,46 @@ / { + "fsl,imx6ull"; + }; + ++&ad7879_ts { ++ status = "okay"; ++}; ++ + &atmel_mxt_ts { + status = "okay"; + }; ++ ++&backlight { ++ status = "okay"; ++}; ++ ++&i2c1 { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { ++ status = "okay"; ++}; ++ ++/* PWM */ ++&pwm5 { ++ /* Pin already used by atmel_mxt_ts touchscreen */ ++ status = "disabled"; ++}; ++ ++/* PWM */ ++&pwm6 { ++ /* Pin already used by atmel_mxt_ts touchscreen */ ++ status = "disabled"; ++}; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts b/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts +index 9bf7111d7b00..d6da984e518d 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-eval-v3.dts +@@ -12,3 +12,27 @@ / { + model = "Toradex Colibri iMX6ULL 256/512MB on Colibri Evaluation Board V3"; + compatible = "toradex,colibri-imx6ull-eval", "fsl,imx6ull"; + }; ++ ++&ad7879_ts { ++ status = "okay"; ++}; ++ ++&backlight { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { ++ status = "okay"; ++}; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts b/arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts +index afc1e0119783..fac7428685b4 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-iris-v2.dts +@@ -15,10 +15,18 @@ / { + "fsl,imx6ull"; + }; + ++&ad7879_ts { ++ status = "okay"; ++}; ++ + &atmel_mxt_ts { + status = "okay"; + }; + ++&backlight { ++ status = "okay"; ++}; ++ + &gpio1 { + /* This turns the LVDS transceiver on */ + lvds-power-on { +@@ -63,3 +71,35 @@ lvds-color-map { + output-low; + }; + }; ++ ++&i2c1 { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { ++ status = "okay"; ++}; ++ ++/* PWM */ ++&pwm5 { ++ /* Pin already used by atmel_mxt_ts touchscreen */ ++ status = "disabled"; ++}; ++ ++/* PWM */ ++&pwm6 { ++ /* Pin already used by atmel_mxt_ts touchscreen */ ++ status = "disabled"; ++}; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-iris.dts b/arch/arm/boot/dts/imx6ull-colibri-iris.dts +index 4fb97b0fe30b..2a0d0fc3b9d6 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-iris.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-iris.dts +@@ -15,6 +15,26 @@ / { + "fsl,imx6ull"; + }; + +-&atmel_mxt_ts { ++&ad7879_ts { ++ status = "okay"; ++}; ++ ++&backlight { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { + status = "okay"; + }; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-wifi-aster.dts b/arch/arm/boot/dts/imx6ull-colibri-wifi-aster.dts +index b4f65e8c5857..c7da5b41966f 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-wifi-aster.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-wifi-aster.dts +@@ -15,6 +15,46 @@ / { + "fsl,imx6ull"; + }; + ++&ad7879_ts { ++ status = "okay"; ++}; ++ + &atmel_mxt_ts { + status = "okay"; + }; ++ ++&backlight { ++ status = "okay"; ++}; ++ ++&i2c1 { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { ++ status = "okay"; ++}; ++ ++/* PWM */ ++&pwm5 { ++ /* Pin already used by atmel_mxt_ts touchscreen */ ++ status = "disabled"; ++}; ++ ++/* PWM */ ++&pwm6 { ++ /* Pin already used by atmel_mxt_ts touchscreen */ ++ status = "disabled"; ++}; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-wifi-eval-v3.dts b/arch/arm/boot/dts/imx6ull-colibri-wifi-eval-v3.dts +index 1d64d1a5d8a7..917f5dbe64ba 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-wifi-eval-v3.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-wifi-eval-v3.dts +@@ -12,3 +12,27 @@ / { + model = "Toradex Colibri iMX6ULL 512MB on Colibri Evaluation Board V3"; + compatible = "toradex,colibri-imx6ull-wifi-eval", "fsl,imx6ull"; + }; ++ ++&ad7879_ts { ++ status = "okay"; ++}; ++ ++&backlight { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { ++ status = "okay"; ++}; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-wifi-iris-v2.dts b/arch/arm/boot/dts/imx6ull-colibri-wifi-iris-v2.dts +index ce02f8a9ddd3..ed89d07beae5 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-wifi-iris-v2.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-wifi-iris-v2.dts +@@ -15,10 +15,18 @@ / { + "fsl,imx6ull"; + }; + ++&ad7879_ts { ++ status = "okay"; ++}; ++ + &atmel_mxt_ts { + status = "okay"; + }; + ++&backlight { ++ status = "okay"; ++}; ++ + &gpio1 { + /* This turns the LVDS transceiver on */ + lvds-power-on { +@@ -63,3 +71,19 @@ lvds-color-map { + output-low; + }; + }; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; ++ ++&pwm4 { ++ status = "okay"; ++}; +diff --git a/arch/arm/boot/dts/imx6ull-colibri-wifi-iris.dts b/arch/arm/boot/dts/imx6ull-colibri-wifi-iris.dts +index 5ac1aa298ce7..e63253254754 100644 +--- a/arch/arm/boot/dts/imx6ull-colibri-wifi-iris.dts ++++ b/arch/arm/boot/dts/imx6ull-colibri-wifi-iris.dts +@@ -15,6 +15,26 @@ / { + "fsl,imx6ull"; + }; + ++&ad7879_ts { ++ status = "okay"; ++}; ++ + &atmel_mxt_ts { + status = "okay"; + }; ++ ++&backlight { ++ status = "okay"; ++}; ++ ++&i2c2 { ++ status = "okay"; ++}; ++ ++&lcdif { ++ status = "okay"; ++}; ++ ++&panel_dpi { ++ status = "okay"; ++}; +-- +2.37.3 + diff --git a/recipes-kernel/linux/linux-toradex-mainline_git.bb b/recipes-kernel/linux/linux-toradex-mainline_git.bb index 878bc08..088666c 100644 --- a/recipes-kernel/linux/linux-toradex-mainline_git.bb +++ b/recipes-kernel/linux/linux-toradex-mainline_git.bb @@ -32,6 +32,8 @@ SRC_URI:append = " \ file://0001-arm-dts-colibri-imx6-usb-dual-role-switching.patch \ file://0002-arm-dts-colibri-imx6-move-vbus-supply-to-module-leve.patch \ file://0003-arm-dts-colibri-imx6-specify-usbh_pen-gpio-being-act.patch \ + file://0001-arm-dts-colibri-imx6ull-keep-peripherals-disabled.patch \ + file://0002-arm-dts-colibri-imx6ull-enable-default-peripherals.patch \ " LINUX_VERSION ?= "6.0.0" -- cgit v1.2.3