linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions
@ 2024-08-26 21:59 Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support Francesco Dolcini
                   ` (10 more replies)
  0 siblings, 11 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: Francesco Dolcini, devicetree, imx, linux-arm-kernel,
	linux-kernel

From: Francesco Dolcini <francesco.dolcini@toradex.com>

This series improves Toradex Colibri iMX8X support adding:
 - working ethernet
 - correct PMIC thermal zones
 - USB support
 - analogue audio
 - ADC
 - PWM
 - VPU


Emanuele Ghidoli (1):
  arm64: dts: colibri-imx8x: Add usb support

Francesco Dolcini (3):
  arm64: dts: colibri-imx8x: Add fxl6408 gpio expander
  arm64: dts: colibri-imx8x: Add PMIC thermal zone
  arm64: dts: colibri-imx8x: Add USB3803 HUB

João Paulo Gonçalves (5):
  arm64: dts: colibri-imx8x: Add analog inputs
  arm64: dts: colibri-imx8x: Add sound card
  arm64: dts: colibri-imx8x: Add vpu support
  arm64: dts: colibri-imx8x: Add adma_pwm
  arm64: dts: colibri-imx8x: Cleanup comments

Philippe Schenker (1):
  arm64: dts: colibri-imx8x: Add 50mhz clock for eth

 .../boot/dts/freescale/imx8dx-colibri.dtsi    |  11 +
 .../dts/freescale/imx8x-colibri-aster.dtsi    |  36 +++
 .../dts/freescale/imx8x-colibri-eval-v3.dtsi  |  36 +++
 .../dts/freescale/imx8x-colibri-iris.dtsi     |  36 +++
 .../boot/dts/freescale/imx8x-colibri.dtsi     | 212 +++++++++++++++++-
 5 files changed, 322 insertions(+), 9 deletions(-)

-- 
2.39.2



^ permalink raw reply	[flat|nested] 16+ messages in thread

* [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 22:14   ` Frank Li
  2024-08-26 21:59 ` [PATCH v1 02/10] arm64: dts: colibri-imx8x: Add analog inputs Francesco Dolcini
                   ` (9 subsequent siblings)
  10 siblings, 1 reply; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: Emanuele Ghidoli, devicetree, imx, linux-arm-kernel, linux-kernel,
	Francesco Dolcini

From: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>

Add USB HOST and OTG support to Colibri-iMX8X carrier boards.

Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 .../dts/freescale/imx8x-colibri-aster.dtsi    | 26 +++++++++++++
 .../dts/freescale/imx8x-colibri-eval-v3.dtsi  | 26 +++++++++++++
 .../dts/freescale/imx8x-colibri-iris.dtsi     | 26 +++++++++++++
 .../boot/dts/freescale/imx8x-colibri.dtsi     | 37 +++++++++++++++++--
 4 files changed, 111 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
index bc659066e19a..c02dfdd75b60 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
@@ -7,6 +7,10 @@ &colibri_gpio_keys {
 	status = "okay";
 };
 
+&extcon_usbc_det {
+	status = "okay";
+};
+
 /* Colibri Ethernet */
 &fec1 {
 	status = "okay";
@@ -38,6 +42,28 @@ &lpuart3 {
 	status = "okay";
 };
 
+/* USB PHY for usbotg3 */
+&usb3_phy {
+	status = "okay";
+};
+
+&usbotg1 {
+	status = "okay";
+};
+
+&usbotg3 {
+	status = "okay";
+};
+
+&usbotg3_cdns3 {
+	status = "okay";
+};
+
+/* USB PHY for usbotg1 */
+&usbphy1 {
+	status = "okay";
+};
+
 /* Colibri SDCard */
 &usdhc2 {
 	status = "okay";
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
index 9af769ab8ceb..91de84772e1c 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
@@ -23,6 +23,10 @@ &colibri_gpio_keys {
 	status = "okay";
 };
 
+&extcon_usbc_det {
+	status = "okay";
+};
+
 &i2c1 {
 	status = "okay";
 
@@ -90,6 +94,28 @@ &fec1 {
 	status = "okay";
 };
 
+/* USB PHY for usbotg3 */
+&usb3_phy {
+	status = "okay";
+};
+
+&usbotg1 {
+	status = "okay";
+};
+
+&usbotg3 {
+	status = "okay";
+};
+
+&usbotg3_cdns3 {
+	status = "okay";
+};
+
+/* USB PHY for usbotg1 */
+&usbphy1 {
+	status = "okay";
+};
+
 /* Colibri SD/MMC Card */
 &usdhc2 {
 	status = "okay";
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
index 8d06925a8ebd..a6b013cc6929 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
@@ -21,6 +21,10 @@ &colibri_gpio_keys {
 	status = "okay";
 };
 
+&extcon_usbc_det {
+	status = "okay";
+};
+
 /* Colibri FastEthernet */
 &fec1 {
 	status = "okay";
@@ -108,6 +112,28 @@ &lsio_pwm2 {
 	status = "okay";
 };
 
+/* USB PHY for usbotg3 */
+&usb3_phy {
+	status = "okay";
+};
+
+&usbotg1 {
+	status = "okay";
+};
+
+&usbotg3 {
+	status = "okay";
+};
+
+&usbotg3_cdns3 {
+	status = "okay";
+};
+
+/* USB PHY for usbotg1 */
+&usbphy1 {
+	status = "okay";
+};
+
 /* Colibri SD/MMC Card */
 &usdhc2 {
 	status = "okay";
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 49d105eb4769..1199e311d6f9 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -23,12 +23,31 @@ key-wakeup {
 		};
 	};
 
+	extcon_usbc_det: usbc-det {
+		compatible = "linux,extcon-usb-gpio";
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_usbc_det>;
+		id-gpio = <&lsio_gpio5 9 GPIO_ACTIVE_HIGH>;
+		status = "disabled";
+	};
+
 	reg_module_3v3: regulator-module-3v3 {
 		compatible = "regulator-fixed";
 		regulator-name = "+V3.3";
 		regulator-min-microvolt = <3300000>;
 		regulator-max-microvolt = <3300000>;
 	};
+
+	reg_usbh_vbus: regulator-usbh-vbus {
+		compatible = "regulator-fixed";
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_usbh1_reg>;
+		gpio = <&lsio_gpio4 3 GPIO_ACTIVE_LOW>;
+		regulator-always-on;
+		regulator-max-microvolt = <5000000>;
+		regulator-min-microvolt = <5000000>;
+		regulator-name = "usbh_vbus";
+	};
 };
 
 /* TODO Analogue Inputs */
@@ -329,6 +348,20 @@ &lsio_pwm2 {
 
 /* TODO On-module i2s / Audio */
 
+&usbotg1 {
+	adp-disable;
+	disable-over-current;
+	extcon = <&extcon_usbc_det &extcon_usbc_det>;
+	hnp-disable;
+	power-active-high;
+	srp-disable;
+	vbus-supply = <&reg_usbh_vbus>;
+};
+
+&usbotg3_cdns3 {
+	dr_mode = "host";
+};
+
 /* On-module eMMC */
 &usdhc1 {
 	bus-width = <8>;
@@ -356,10 +389,6 @@ &usdhc2 {
 	no-1-8-v;
 };
 
-/* TODO USB Client/Host */
-
-/* TODO USB Host */
-
 /* TODO VPU Encoder/Decoder */
 
 &iomuxc {
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 02/10] arm64: dts: colibri-imx8x: Add analog inputs
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 03/10] arm64: dts: colibri-imx8x: Add fxl6408 gpio expander Francesco Dolcini
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: João Paulo Gonçalves, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

From: João Paulo Gonçalves <joao.goncalves@toradex.com>

Add adc nodes for analog inputs support for all Colibri-iMX8X carrier
boards.

Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 .../boot/dts/freescale/imx8x-colibri-aster.dtsi    |  5 +++++
 .../boot/dts/freescale/imx8x-colibri-eval-v3.dtsi  |  5 +++++
 .../boot/dts/freescale/imx8x-colibri-iris.dtsi     |  5 +++++
 arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi   | 14 +++++++++++++-
 4 files changed, 28 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
index c02dfdd75b60..503aa5a90503 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
@@ -3,6 +3,11 @@
  * Copyright 2018-2021 Toradex
  */
 
+/* Colibri Analogue Inputs */
+&adc0 {
+	status = "okay";
+};
+
 &colibri_gpio_keys {
 	status = "okay";
 };
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
index 91de84772e1c..a2b2a0865666 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
@@ -19,6 +19,11 @@ clk16m: clock-16mhz {
 	};
 };
 
+/* Colibri Analogue Inputs */
+&adc0 {
+	status = "okay";
+};
+
 &colibri_gpio_keys {
 	status = "okay";
 };
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
index a6b013cc6929..6d9d54d4e549 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
@@ -17,6 +17,11 @@ reg_3v3: regulator-3v3 {
 	};
 };
 
+/* Colibri Analogue Inputs */
+&adc0 {
+	status = "okay";
+};
+
 &colibri_gpio_keys {
 	status = "okay";
 };
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 1199e311d6f9..c7f0dfe7b162 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -38,6 +38,13 @@ reg_module_3v3: regulator-module-3v3 {
 		regulator-max-microvolt = <3300000>;
 	};
 
+	reg_module_vref_1v8: regulator-module-vref-1v8 {
+		compatible = "regulator-fixed";
+		regulator-max-microvolt = <1800000>;
+		regulator-min-microvolt = <1800000>;
+		regulator-name = "vref-1v8";
+	};
+
 	reg_usbh_vbus: regulator-usbh-vbus {
 		compatible = "regulator-fixed";
 		pinctrl-names = "default";
@@ -50,7 +57,12 @@ reg_usbh_vbus: regulator-usbh-vbus {
 	};
 };
 
-/* TODO Analogue Inputs */
+/* Colibri Analogue Inputs */
+&adc0 {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_adc0>;
+	vref-supply = <&reg_module_vref_1v8>;
+};
 
 /* TODO Cooling maps for DX */
 
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 03/10] arm64: dts: colibri-imx8x: Add fxl6408 gpio expander
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 02/10] arm64: dts: colibri-imx8x: Add analog inputs Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 04/10] arm64: dts: colibri-imx8x: Add sound card Francesco Dolcini
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: Francesco Dolcini, devicetree, imx, linux-arm-kernel,
	linux-kernel

From: Francesco Dolcini <francesco.dolcini@toradex.com>

Add fxl6408 gpio expander, this is required for Wi-Fi, Bluetooth and USB
functionalities.

Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index c7f0dfe7b162..aa9c45c290b9 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -108,6 +108,21 @@ touchscreen@2c {
 		adi,conversion-interval = /bits/ 8 <255>;
 		status = "disabled";
 	};
+
+	gpio_expander_43: gpio@43 {
+		compatible = "fcs,fxl6408";
+		reg = <0x43>;
+		gpio-controller;
+		#gpio-cells = <2>;
+		gpio-line-names = "Wi-Fi_W_DISABLE",
+				  "Wi-Fi_WKUP_WLAN",
+				  "PWR_EN_+V3.3_WiFi_N",
+				  "PCIe_REF_CLK_EN",
+				  "USB_RESET_N",
+				  "USB_BYPASS_N",
+				  "Wi-Fi_PDn",
+				  "Wi-Fi_WKUP_BT";
+	};
 };
 
 /* TODO i2c lvds0 accessible on FFC (X2) */
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 04/10] arm64: dts: colibri-imx8x: Add sound card
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (2 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 03/10] arm64: dts: colibri-imx8x: Add fxl6408 gpio expander Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-09-01  8:54   ` Shawn Guo
  2024-08-26 21:59 ` [PATCH v1 05/10] arm64: dts: colibri-imx8x: Add PMIC thermal zone Francesco Dolcini
                   ` (6 subsequent siblings)
  10 siblings, 1 reply; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: João Paulo Gonçalves, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

From: João Paulo Gonçalves <joao.goncalves@toradex.com>

Add audio support for Colibri-iMX8X sound card.

Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 .../boot/dts/freescale/imx8x-colibri.dtsi     | 47 ++++++++++++++++++-
 1 file changed, 46 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index aa9c45c290b9..1d22002103c4 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -38,6 +38,13 @@ reg_module_3v3: regulator-module-3v3 {
 		regulator-max-microvolt = <3300000>;
 	};
 
+	reg_module_3v3_avdd: regulator-module-3v3-avdd {
+		compatible = "regulator-fixed";
+		regulator-max-microvolt = <3300000>;
+		regulator-min-microvolt = <3300000>;
+		regulator-name = "+V3.3_AVDD_AUDIO";
+	};
+
 	reg_module_vref_1v8: regulator-module-vref-1v8 {
 		compatible = "regulator-fixed";
 		regulator-max-microvolt = <1800000>;
@@ -55,6 +62,23 @@ reg_usbh_vbus: regulator-usbh-vbus {
 		regulator-min-microvolt = <5000000>;
 		regulator-name = "usbh_vbus";
 	};
+
+	sound-card {
+		compatible = "simple-audio-card";
+		simple-audio-card,bitclock-master = <&dailink_master>;
+		simple-audio-card,format = "i2s";
+		simple-audio-card,frame-master = <&dailink_master>;
+		simple-audio-card,name = "colibri-imx8x";
+
+		dailink_master: simple-audio-card,codec {
+			clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
+			sound-dai = <&sgtl5000_a>;
+		};
+
+		simple-audio-card,cpu {
+			sound-dai = <&sai0>;
+		};
+	};
 };
 
 /* Colibri Analogue Inputs */
@@ -109,6 +133,21 @@ touchscreen@2c {
 		status = "disabled";
 	};
 
+	sgtl5000_a: audio-codec@a {
+		compatible = "fsl,sgtl5000";
+		reg = <0xa>;
+		#sound-dai-cells = <0>;
+		assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
+				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
+				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
+				  <&mclkout0_lpcg IMX_LPCG_CLK_0>;
+		assigned-clock-rates = <786432000>, <49152000>, <12000000>, <12000000>;
+		clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
+		VDDA-supply = <&reg_module_3v3_avdd>;
+		VDDD-supply = <&reg_module_vref_1v8>;
+		VDDIO-supply = <&reg_module_3v3>;
+	};
+
 	gpio_expander_43: gpio@43 {
 		compatible = "fcs,fxl6408";
 		reg = <0x43>;
@@ -373,7 +412,13 @@ &lsio_pwm2 {
 
 /* TODO on-module PCIe for Wi-Fi */
 
-/* TODO On-module i2s / Audio */
+/* On-module I2S */
+&sai0 {
+	#sound-dai-cells = <0>;
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_sai0>;
+	status = "okay";
+};
 
 &usbotg1 {
 	adp-disable;
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 05/10] arm64: dts: colibri-imx8x: Add PMIC thermal zone
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (3 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 04/10] arm64: dts: colibri-imx8x: Add sound card Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 06/10] arm64: dts: colibri-imx8x: Add USB3803 HUB Francesco Dolcini
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: Francesco Dolcini, devicetree, imx, linux-arm-kernel,
	linux-kernel

From: Francesco Dolcini <francesco.dolcini@toradex.com>

Add PMIC thermal zones.

Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 .../boot/dts/freescale/imx8dx-colibri.dtsi    | 11 ++++++
 .../boot/dts/freescale/imx8x-colibri.dtsi     | 34 +++++++++++++++++--
 2 files changed, 43 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8dx-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8dx-colibri.dtsi
index 66b0fcc6687d..4d1ad052c5b6 100644
--- a/arch/arm64/boot/dts/freescale/imx8dx-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8dx-colibri.dtsi
@@ -9,3 +9,14 @@
 / {
 	model = "Toradex Colibri iMX8DX Module";
 };
+
+&thermal_zones {
+	pmic-thermal {
+		cooling-maps {
+			map0 {
+				cooling-device = <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+						 <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+			};
+		};
+	};
+};
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 1d22002103c4..f6afce016ff2 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -88,8 +88,6 @@ &adc0 {
 	vref-supply = <&reg_module_vref_1v8>;
 };
 
-/* TODO Cooling maps for DX */
-
 &cpu_alert0 {
 	hysteresis = <2000>;
 	temperature = <90000>;
@@ -420,6 +418,38 @@ &sai0 {
 	status = "okay";
 };
 
+&thermal_zones {
+	pmic-thermal {
+		polling-delay-passive = <250>;
+		polling-delay = <2000>;
+		thermal-sensors = <&tsens IMX_SC_R_PMIC_0>;
+
+		trips {
+			pmic_alert0: trip0 {
+				temperature = <110000>;
+				hysteresis = <2000>;
+				type = "passive";
+			};
+
+			pmic_crit0: trip1 {
+				temperature = <125000>;
+				hysteresis = <2000>;
+				type = "critical";
+			};
+		};
+
+		cooling-maps {
+			pmic_cooling_map0: map0 {
+				trip = <&pmic_alert0>;
+				cooling-device = <&A35_0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+						 <&A35_1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+						 <&A35_2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
+						 <&A35_3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
+			};
+		};
+	};
+};
+
 &usbotg1 {
 	adp-disable;
 	disable-over-current;
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 06/10] arm64: dts: colibri-imx8x: Add USB3803 HUB
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (4 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 05/10] arm64: dts: colibri-imx8x: Add PMIC thermal zone Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 07/10] arm64: dts: colibri-imx8x: Add vpu support Francesco Dolcini
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: Francesco Dolcini, devicetree, imx, linux-arm-kernel,
	linux-kernel

From: Francesco Dolcini <francesco.dolcini@toradex.com>

Add USB3803 HUB, this is required for Bluetooth and USB
functionalities.

Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 .../boot/dts/freescale/imx8x-colibri.dtsi     | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index f6afce016ff2..7c728208f385 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -113,6 +113,26 @@ &i2c0 {
 	pinctrl-0 = <&pinctrl_i2c0>, <&pinctrl_sgtl5000_usb_clk>;
 	status = "okay";
 
+	/* USB HUB USB3803 */
+	usb-hub@8 {
+		compatible = "smsc,usb3803";
+		reg = <0x8>;
+		assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
+				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
+				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
+				  <&mclkout0_lpcg IMX_LPCG_CLK_0>;
+		assigned-clock-rates = <786432000>, <49152000>, <12000000>, <12000000>;
+		pinctrl-names = "default";
+		pinctrl-0 = <&pinctrl_usb3503a>;
+		bypass-gpios = <&gpio_expander_43 5 GPIO_ACTIVE_LOW>;
+		clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
+		clock-names = "refclk";
+		disabled-ports = <2>;
+		initial-mode = <1>;
+		intn-gpios = <&lsio_gpio3 4 GPIO_ACTIVE_LOW>;
+		reset-gpios = <&gpio_expander_43 4 GPIO_ACTIVE_LOW>;
+	};
+
 	/* Touch controller */
 	touchscreen@2c {
 		compatible = "adi,ad7879-1";
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 07/10] arm64: dts: colibri-imx8x: Add vpu support
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (5 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 06/10] arm64: dts: colibri-imx8x: Add USB3803 HUB Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 08/10] arm64: dts: colibri-imx8x: Add adma_pwm Francesco Dolcini
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: João Paulo Gonçalves, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

From: João Paulo Gonçalves <joao.goncalves@toradex.com>

Enable VPU on Colibri-iMX8X.

Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 .../boot/dts/freescale/imx8x-colibri.dtsi     | 28 ++++++++++++++++++-
 1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 7c728208f385..782546a35bf9 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -424,6 +424,15 @@ &lsio_pwm2 {
 	pinctrl-names = "default";
 };
 
+/* VPU Mailboxes */
+&mu_m0 {
+	status="okay";
+};
+
+&mu1_m0 {
+	status="okay";
+};
+
 /* TODO MIPI CSI */
 
 /* TODO MIPI DSI with DSI-to-HDMI bridge lt8912 */
@@ -511,7 +520,24 @@ &usdhc2 {
 	no-1-8-v;
 };
 
-/* TODO VPU Encoder/Decoder */
+&vpu {
+	compatible = "nxp,imx8qxp-vpu";
+	status = "okay";
+};
+
+/* VPU Decoder */
+&vpu_core0 {
+	reg = <0x2d040000 0x10000>;
+	memory-region = <&decoder_boot>, <&decoder_rpc>;
+	status = "okay";
+};
+
+/* VPU Encoder */
+&vpu_core1 {
+	reg = <0x2d050000 0x10000>;
+	memory-region = <&encoder_boot>, <&encoder_rpc>;
+	status = "okay";
+};
 
 &iomuxc {
 	/* On-module touch pen-down interrupt */
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 08/10] arm64: dts: colibri-imx8x: Add adma_pwm
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (6 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 07/10] arm64: dts: colibri-imx8x: Add vpu support Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 09/10] arm64: dts: colibri-imx8x: Add 50mhz clock for eth Francesco Dolcini
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: João Paulo Gonçalves, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

From: João Paulo Gonçalves <joao.goncalves@toradex.com>

Add adma_pwm node for Colibri-iMX8X carrier boards.

Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi   | 5 +++++
 arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi | 5 +++++
 arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi    | 5 +++++
 arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi         | 6 ++++++
 4 files changed, 21 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
index 503aa5a90503..f7bbb2153ae0 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
@@ -8,6 +8,11 @@ &adc0 {
 	status = "okay";
 };
 
+/* Colibri PWM_A */
+&adma_pwm {
+	status = "okay";
+};
+
 &colibri_gpio_keys {
 	status = "okay";
 };
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
index a2b2a0865666..f75499765d85 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
@@ -24,6 +24,11 @@ &adc0 {
 	status = "okay";
 };
 
+/* Colibri PWM_A */
+&adma_pwm {
+	status = "okay";
+};
+
 &colibri_gpio_keys {
 	status = "okay";
 };
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
index 6d9d54d4e549..54393a0c5cbf 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
@@ -22,6 +22,11 @@ &adc0 {
 	status = "okay";
 };
 
+/* Colibri PWM_A */
+&adma_pwm {
+	status = "okay";
+};
+
 &colibri_gpio_keys {
 	status = "okay";
 };
diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 782546a35bf9..9cd4383e9298 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -88,6 +88,12 @@ &adc0 {
 	vref-supply = <&reg_module_vref_1v8>;
 };
 
+/* Colibri PWM_A */
+&adma_pwm {
+	pinctrl-names = "default";
+	pinctrl-0 = <&pinctrl_pwm_a>;
+};
+
 &cpu_alert0 {
 	hysteresis = <2000>;
 	temperature = <90000>;
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 09/10] arm64: dts: colibri-imx8x: Add 50mhz clock for eth
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (7 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 08/10] arm64: dts: colibri-imx8x: Add adma_pwm Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-26 21:59 ` [PATCH v1 10/10] arm64: dts: colibri-imx8x: Cleanup comments Francesco Dolcini
  2024-08-28 13:11 ` [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: Philippe Schenker, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

From: Philippe Schenker <philippe.schenker@toradex.com>

Change enet0_lpcg to get the clock value needed in Colibri-iMX8X for
100mbps ethernet.

Signed-off-by: Philippe Schenker <philippe.schenker@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 9cd4383e9298..75259e8d48a9 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -106,6 +106,21 @@ &cpu_crit0 {
 	type = "critical";
 };
 
+&enet0_lpcg {
+	clocks = <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>,
+		 <&clk IMX_SC_R_ENET_0 IMX_SC_PM_CLK_PER>,
+		 <&conn_axi_clk>,
+		 <&clk IMX_SC_R_ENET_0 IMX_SC_C_DISABLE_50>,
+		 <&conn_ipg_clk>,
+		 <&conn_ipg_clk>;
+	clock-output-names = "enet0_lpcg_timer_clk",
+			     "enet0_lpcg_txc_sampling_clk",
+			     "enet0_lpcg_ahb_clk",
+			     "enet0_lpcg_ref_50mhz_clk",
+			     "enet0_lpcg_ipg_clk",
+			     "enet0_lpcg_ipg_s_clk";
+};
+
 /* TODO flexcan1 - 3 */
 
 /* TODO GPU */
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [PATCH v1 10/10] arm64: dts: colibri-imx8x: Cleanup comments
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (8 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 09/10] arm64: dts: colibri-imx8x: Add 50mhz clock for eth Francesco Dolcini
@ 2024-08-26 21:59 ` Francesco Dolcini
  2024-08-28 13:11 ` [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 21:59 UTC (permalink / raw)
  To: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam
  Cc: João Paulo Gonçalves, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

From: João Paulo Gonçalves <joao.goncalves@toradex.com>

Remove unnecessary comments. The Colibri-iMX8X doesn't support FlexCAN,
and the GPU is already enabled in the SOC dtsi.

Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
---
 arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
index 75259e8d48a9..42326baf878a 100644
--- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
@@ -121,10 +121,6 @@ &enet0_lpcg {
 			     "enet0_lpcg_ipg_s_clk";
 };
 
-/* TODO flexcan1 - 3 */
-
-/* TODO GPU */
-
 /* On-module I2C */
 &i2c0 {
 	#address-cells = <1>;
-- 
2.39.2



^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support
  2024-08-26 21:59 ` [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support Francesco Dolcini
@ 2024-08-26 22:14   ` Frank Li
  2024-08-26 22:28     ` Francesco Dolcini
  0 siblings, 1 reply; 16+ messages in thread
From: Frank Li @ 2024-08-26 22:14 UTC (permalink / raw)
  To: Francesco Dolcini
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	Emanuele Ghidoli, devicetree, imx, linux-arm-kernel, linux-kernel,
	Francesco Dolcini

On Mon, Aug 26, 2024 at 11:59:13PM +0200, Francesco Dolcini wrote:
> From: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
>
> Add USB HOST and OTG support to Colibri-iMX8X carrier boards.
>
> Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
> ---
>  .../dts/freescale/imx8x-colibri-aster.dtsi    | 26 +++++++++++++
>  .../dts/freescale/imx8x-colibri-eval-v3.dtsi  | 26 +++++++++++++
>  .../dts/freescale/imx8x-colibri-iris.dtsi     | 26 +++++++++++++
>  .../boot/dts/freescale/imx8x-colibri.dtsi     | 37 +++++++++++++++++--
>  4 files changed, 111 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
> index bc659066e19a..c02dfdd75b60 100644
> --- a/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-aster.dtsi
> @@ -7,6 +7,10 @@ &colibri_gpio_keys {
>  	status = "okay";
>  };
>
> +&extcon_usbc_det {
> +	status = "okay";
> +};
> +
>  /* Colibri Ethernet */
>  &fec1 {
>  	status = "okay";
> @@ -38,6 +42,28 @@ &lpuart3 {
>  	status = "okay";
>  };
>
> +/* USB PHY for usbotg3 */
> +&usb3_phy {
> +	status = "okay";
> +};
> +
> +&usbotg1 {
> +	status = "okay";
> +};
> +
> +&usbotg3 {
> +	status = "okay";
> +};
> +
> +&usbotg3_cdns3 {
> +	status = "okay";
> +};
> +
> +/* USB PHY for usbotg1 */
> +&usbphy1 {
> +	status = "okay";
> +};
> +
>  /* Colibri SDCard */
>  &usdhc2 {
>  	status = "okay";
> diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
> index 9af769ab8ceb..91de84772e1c 100644
> --- a/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-eval-v3.dtsi
> @@ -23,6 +23,10 @@ &colibri_gpio_keys {
>  	status = "okay";
>  };
>
> +&extcon_usbc_det {
> +	status = "okay";
> +};
> +
>  &i2c1 {
>  	status = "okay";
>
> @@ -90,6 +94,28 @@ &fec1 {
>  	status = "okay";
>  };
>
> +/* USB PHY for usbotg3 */
> +&usb3_phy {
> +	status = "okay";
> +};
> +
> +&usbotg1 {
> +	status = "okay";
> +};
> +
> +&usbotg3 {
> +	status = "okay";
> +};
> +
> +&usbotg3_cdns3 {
> +	status = "okay";
> +};
> +
> +/* USB PHY for usbotg1 */
> +&usbphy1 {
> +	status = "okay";
> +};
> +
>  /* Colibri SD/MMC Card */
>  &usdhc2 {
>  	status = "okay";
> diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
> index 8d06925a8ebd..a6b013cc6929 100644
> --- a/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri-iris.dtsi
> @@ -21,6 +21,10 @@ &colibri_gpio_keys {
>  	status = "okay";
>  };
>
> +&extcon_usbc_det {
> +	status = "okay";
> +};
> +
>  /* Colibri FastEthernet */
>  &fec1 {
>  	status = "okay";
> @@ -108,6 +112,28 @@ &lsio_pwm2 {
>  	status = "okay";
>  };
>
> +/* USB PHY for usbotg3 */
> +&usb3_phy {
> +	status = "okay";
> +};
> +
> +&usbotg1 {
> +	status = "okay";
> +};
> +
> +&usbotg3 {
> +	status = "okay";
> +};
> +
> +&usbotg3_cdns3 {
> +	status = "okay";
> +};
> +
> +/* USB PHY for usbotg1 */
> +&usbphy1 {
> +	status = "okay";
> +};
> +
>  /* Colibri SD/MMC Card */
>  &usdhc2 {
>  	status = "okay";
> diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> index 49d105eb4769..1199e311d6f9 100644
> --- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> @@ -23,12 +23,31 @@ key-wakeup {
>  		};
>  	};
>
> +	extcon_usbc_det: usbc-det {
> +		compatible = "linux,extcon-usb-gpio";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_usbc_det>;
> +		id-gpio = <&lsio_gpio5 9 GPIO_ACTIVE_HIGH>;

Not sure if I missed something, CHECK_DTBS report below warning.

arch/arm64/boot/dts/freescale/imx8qxp-colibri-iris.dtb: usbc-det: 'id-gpio' does not match any of the regexes: 'pinctrl-[0-9]+'
	from schema $id: http://devicetree.org/schemas/extcon/linux,extcon-usb-gpio.yaml

> +		status = "disabled";
> +	};
> +
>  	reg_module_3v3: regulator-module-3v3 {
>  		compatible = "regulator-fixed";
>  		regulator-name = "+V3.3";
>  		regulator-min-microvolt = <3300000>;
>  		regulator-max-microvolt = <3300000>;
>  	};
> +
> +	reg_usbh_vbus: regulator-usbh-vbus {
> +		compatible = "regulator-fixed";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&pinctrl_usbh1_reg>;
> +		gpio = <&lsio_gpio4 3 GPIO_ACTIVE_LOW>;
> +		regulator-always-on;

Needn't regulator-always-on, because reg_usbh_vbus referece by other node.

> +		regulator-max-microvolt = <5000000>;
> +		regulator-min-microvolt = <5000000>;
> +		regulator-name = "usbh_vbus";
> +	};
>  };
>
>  /* TODO Analogue Inputs */
> @@ -329,6 +348,20 @@ &lsio_pwm2 {
>
>  /* TODO On-module i2s / Audio */
>
> +&usbotg1 {
> +	adp-disable;
> +	disable-over-current;
> +	extcon = <&extcon_usbc_det &extcon_usbc_det>;
> +	hnp-disable;
> +	power-active-high;
> +	srp-disable;
> +	vbus-supply = <&reg_usbh_vbus>;
> +};
> +
> +&usbotg3_cdns3 {
> +	dr_mode = "host";
> +};
> +
>  /* On-module eMMC */
>  &usdhc1 {
>  	bus-width = <8>;
> @@ -356,10 +389,6 @@ &usdhc2 {
>  	no-1-8-v;
>  };
>
> -/* TODO USB Client/Host */
> -
> -/* TODO USB Host */
> -
>  /* TODO VPU Encoder/Decoder */
>
>  &iomuxc {
> --
> 2.39.2
>


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support
  2024-08-26 22:14   ` Frank Li
@ 2024-08-26 22:28     ` Francesco Dolcini
  2024-08-27 15:23       ` Frank Li
  0 siblings, 1 reply; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-26 22:28 UTC (permalink / raw)
  To: Frank Li
  Cc: Francesco Dolcini, Rob Herring, Krzysztof Kozlowski, Conor Dooley,
	Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	Emanuele Ghidoli, devicetree, imx, linux-arm-kernel, linux-kernel,
	Francesco Dolcini

On Mon, Aug 26, 2024 at 06:14:58PM -0400, Frank Li wrote:
> On Mon, Aug 26, 2024 at 11:59:13PM +0200, Francesco Dolcini wrote:
> > From: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
> >
> > Add USB HOST and OTG support to Colibri-iMX8X carrier boards.
> >
> > Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
> > Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
> > ---
> >  .../dts/freescale/imx8x-colibri-aster.dtsi    | 26 +++++++++++++
> >  .../dts/freescale/imx8x-colibri-eval-v3.dtsi  | 26 +++++++++++++
> >  .../dts/freescale/imx8x-colibri-iris.dtsi     | 26 +++++++++++++
> >  .../boot/dts/freescale/imx8x-colibri.dtsi     | 37 +++++++++++++++++--
> >  4 files changed, 111 insertions(+), 4 deletions(-)

...

> > diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> > index 49d105eb4769..1199e311d6f9 100644
> > --- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> > +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> > @@ -23,12 +23,31 @@ key-wakeup {
> >  		};
> >  	};
> >
> > +	extcon_usbc_det: usbc-det {
> > +		compatible = "linux,extcon-usb-gpio";
> > +		pinctrl-names = "default";
> > +		pinctrl-0 = <&pinctrl_usbc_det>;
> > +		id-gpio = <&lsio_gpio5 9 GPIO_ACTIVE_HIGH>;
> 
> Not sure if I missed something, CHECK_DTBS report below warning.
> 
> arch/arm64/boot/dts/freescale/imx8qxp-colibri-iris.dtb: usbc-det: 'id-gpio' does not match any of the regexes: 'pinctrl-[0-9]+'
> 	from schema $id: http://devicetree.org/schemas/extcon/linux,extcon-usb-gpio.yaml

This should be `id-gpios`. The binding for "linux,extcon-usb-gpio" was recently
added, and this was not tested on the latest next (my fault), but on shawn imx branch and
the old txt doc documented just `id-gpio`.

We'll fix it. And thanks for catching it.


> > +	reg_usbh_vbus: regulator-usbh-vbus {
> > +		compatible = "regulator-fixed";
> > +		pinctrl-names = "default";
> > +		pinctrl-0 = <&pinctrl_usbh1_reg>;
> > +		gpio = <&lsio_gpio4 3 GPIO_ACTIVE_LOW>;
> > +		regulator-always-on;
> 
> Needn't regulator-always-on, because reg_usbh_vbus referece by other node.

Is this an issue? we expect this regulator to be always on, therefore this is
described this way in the DT.

Francesco



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support
  2024-08-26 22:28     ` Francesco Dolcini
@ 2024-08-27 15:23       ` Frank Li
  0 siblings, 0 replies; 16+ messages in thread
From: Frank Li @ 2024-08-27 15:23 UTC (permalink / raw)
  To: Francesco Dolcini
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	Emanuele Ghidoli, devicetree, imx, linux-arm-kernel, linux-kernel,
	Francesco Dolcini

On Tue, Aug 27, 2024 at 12:28:06AM +0200, Francesco Dolcini wrote:
> On Mon, Aug 26, 2024 at 06:14:58PM -0400, Frank Li wrote:
> > On Mon, Aug 26, 2024 at 11:59:13PM +0200, Francesco Dolcini wrote:
> > > From: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
> > >
> > > Add USB HOST and OTG support to Colibri-iMX8X carrier boards.
> > >
> > > Signed-off-by: Emanuele Ghidoli <emanuele.ghidoli@toradex.com>
> > > Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
> > > ---
> > >  .../dts/freescale/imx8x-colibri-aster.dtsi    | 26 +++++++++++++
> > >  .../dts/freescale/imx8x-colibri-eval-v3.dtsi  | 26 +++++++++++++
> > >  .../dts/freescale/imx8x-colibri-iris.dtsi     | 26 +++++++++++++
> > >  .../boot/dts/freescale/imx8x-colibri.dtsi     | 37 +++++++++++++++++--
> > >  4 files changed, 111 insertions(+), 4 deletions(-)
>
> ...
>
> > > diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> > > index 49d105eb4769..1199e311d6f9 100644
> > > --- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> > > +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> > > @@ -23,12 +23,31 @@ key-wakeup {
> > >  		};
> > >  	};
> > >
> > > +	extcon_usbc_det: usbc-det {
> > > +		compatible = "linux,extcon-usb-gpio";
> > > +		pinctrl-names = "default";
> > > +		pinctrl-0 = <&pinctrl_usbc_det>;
> > > +		id-gpio = <&lsio_gpio5 9 GPIO_ACTIVE_HIGH>;
> >
> > Not sure if I missed something, CHECK_DTBS report below warning.
> >
> > arch/arm64/boot/dts/freescale/imx8qxp-colibri-iris.dtb: usbc-det: 'id-gpio' does not match any of the regexes: 'pinctrl-[0-9]+'
> > 	from schema $id: http://devicetree.org/schemas/extcon/linux,extcon-usb-gpio.yaml
>
> This should be `id-gpios`. The binding for "linux,extcon-usb-gpio" was recently
> added, and this was not tested on the latest next (my fault), but on shawn imx branch and
> the old txt doc documented just `id-gpio`.
>
> We'll fix it. And thanks for catching it.
>
>
> > > +	reg_usbh_vbus: regulator-usbh-vbus {
> > > +		compatible = "regulator-fixed";
> > > +		pinctrl-names = "default";
> > > +		pinctrl-0 = <&pinctrl_usbh1_reg>;
> > > +		gpio = <&lsio_gpio4 3 GPIO_ACTIVE_LOW>;
> > > +		regulator-always-on;
> >
> > Needn't regulator-always-on, because reg_usbh_vbus referece by other node.
>
> Is this an issue? we expect this regulator to be always on, therefore this is
> described this way in the DT.

No a issue. If some device refer this regulator, suppose it only need power
on when this device probe. No sure why need always on.

>
> Francesco
>


^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions
  2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
                   ` (9 preceding siblings ...)
  2024-08-26 21:59 ` [PATCH v1 10/10] arm64: dts: colibri-imx8x: Cleanup comments Francesco Dolcini
@ 2024-08-28 13:11 ` Francesco Dolcini
  10 siblings, 0 replies; 16+ messages in thread
From: Francesco Dolcini @ 2024-08-28 13:11 UTC (permalink / raw)
  To: Shawn Guo
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam, Francesco Dolcini,
	devicetree, imx, linux-arm-kernel, linux-kernel

Hello Shawn,

On Mon, Aug 26, 2024 at 11:59:12PM +0200, Francesco Dolcini wrote:
> This series improves Toradex Colibri iMX8X support adding:
>  - working ethernet
>  - correct PMIC thermal zones
>  - USB support
>  - analogue audio
>  - ADC
>  - PWM
>  - VPU

there is one small fix to be done on this series (id-gpio vs id-gpios)
on patch 1, if you feel like this is the only blocker for this to be
merged I'll send a v2 soon, otherwise I'll wait for more feedback.

I'd love this to be merge for v6.12, but I do not want to spam the
mailing list and people if there are more changes required.

Thanks,
Francesco



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [PATCH v1 04/10] arm64: dts: colibri-imx8x: Add sound card
  2024-08-26 21:59 ` [PATCH v1 04/10] arm64: dts: colibri-imx8x: Add sound card Francesco Dolcini
@ 2024-09-01  8:54   ` Shawn Guo
  0 siblings, 0 replies; 16+ messages in thread
From: Shawn Guo @ 2024-09-01  8:54 UTC (permalink / raw)
  To: Francesco Dolcini
  Cc: Rob Herring, Krzysztof Kozlowski, Conor Dooley, Shawn Guo,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	João Paulo Gonçalves, devicetree, imx, linux-arm-kernel,
	linux-kernel, Francesco Dolcini

On Mon, Aug 26, 2024 at 11:59:16PM +0200, Francesco Dolcini wrote:
> From: João Paulo Gonçalves <joao.goncalves@toradex.com>
> 
> Add audio support for Colibri-iMX8X sound card.
> 
> Signed-off-by: João Paulo Gonçalves <joao.goncalves@toradex.com>
> Signed-off-by: Francesco Dolcini <francesco.dolcini@toradex.com>
> ---
>  .../boot/dts/freescale/imx8x-colibri.dtsi     | 47 ++++++++++++++++++-
>  1 file changed, 46 insertions(+), 1 deletion(-)
> 
> diff --git a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> index aa9c45c290b9..1d22002103c4 100644
> --- a/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> +++ b/arch/arm64/boot/dts/freescale/imx8x-colibri.dtsi
> @@ -38,6 +38,13 @@ reg_module_3v3: regulator-module-3v3 {
>  		regulator-max-microvolt = <3300000>;
>  	};
>  
> +	reg_module_3v3_avdd: regulator-module-3v3-avdd {
> +		compatible = "regulator-fixed";
> +		regulator-max-microvolt = <3300000>;
> +		regulator-min-microvolt = <3300000>;
> +		regulator-name = "+V3.3_AVDD_AUDIO";
> +	};
> +
>  	reg_module_vref_1v8: regulator-module-vref-1v8 {
>  		compatible = "regulator-fixed";
>  		regulator-max-microvolt = <1800000>;
> @@ -55,6 +62,23 @@ reg_usbh_vbus: regulator-usbh-vbus {
>  		regulator-min-microvolt = <5000000>;
>  		regulator-name = "usbh_vbus";
>  	};
> +
> +	sound-card {
> +		compatible = "simple-audio-card";
> +		simple-audio-card,bitclock-master = <&dailink_master>;
> +		simple-audio-card,format = "i2s";
> +		simple-audio-card,frame-master = <&dailink_master>;
> +		simple-audio-card,name = "colibri-imx8x";
> +
> +		dailink_master: simple-audio-card,codec {
> +			clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
> +			sound-dai = <&sgtl5000_a>;
> +		};
> +
> +		simple-audio-card,cpu {
> +			sound-dai = <&sai0>;
> +		};
> +	};
>  };
>  
>  /* Colibri Analogue Inputs */
> @@ -109,6 +133,21 @@ touchscreen@2c {
>  		status = "disabled";
>  	};
>  
> +	sgtl5000_a: audio-codec@a {

Please sort I2C device nodes in slave address.

Shawn

> +		compatible = "fsl,sgtl5000";
> +		reg = <0xa>;
> +		#sound-dai-cells = <0>;
> +		assigned-clocks = <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_PLL>,
> +				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_SLV_BUS>,
> +				  <&clk IMX_SC_R_AUDIO_PLL_0 IMX_SC_PM_CLK_MST_BUS>,
> +				  <&mclkout0_lpcg IMX_LPCG_CLK_0>;
> +		assigned-clock-rates = <786432000>, <49152000>, <12000000>, <12000000>;
> +		clocks = <&mclkout0_lpcg IMX_LPCG_CLK_0>;
> +		VDDA-supply = <&reg_module_3v3_avdd>;
> +		VDDD-supply = <&reg_module_vref_1v8>;
> +		VDDIO-supply = <&reg_module_3v3>;
> +	};
> +
>  	gpio_expander_43: gpio@43 {
>  		compatible = "fcs,fxl6408";
>  		reg = <0x43>;
> @@ -373,7 +412,13 @@ &lsio_pwm2 {
>  
>  /* TODO on-module PCIe for Wi-Fi */
>  
> -/* TODO On-module i2s / Audio */
> +/* On-module I2S */
> +&sai0 {
> +	#sound-dai-cells = <0>;
> +	pinctrl-names = "default";
> +	pinctrl-0 = <&pinctrl_sai0>;
> +	status = "okay";
> +};
>  
>  &usbotg1 {
>  	adp-disable;
> -- 
> 2.39.2
> 



^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2024-09-01  8:56 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-26 21:59 [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 01/10] arm64: dts: colibri-imx8x: Add usb support Francesco Dolcini
2024-08-26 22:14   ` Frank Li
2024-08-26 22:28     ` Francesco Dolcini
2024-08-27 15:23       ` Frank Li
2024-08-26 21:59 ` [PATCH v1 02/10] arm64: dts: colibri-imx8x: Add analog inputs Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 03/10] arm64: dts: colibri-imx8x: Add fxl6408 gpio expander Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 04/10] arm64: dts: colibri-imx8x: Add sound card Francesco Dolcini
2024-09-01  8:54   ` Shawn Guo
2024-08-26 21:59 ` [PATCH v1 05/10] arm64: dts: colibri-imx8x: Add PMIC thermal zone Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 06/10] arm64: dts: colibri-imx8x: Add USB3803 HUB Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 07/10] arm64: dts: colibri-imx8x: Add vpu support Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 08/10] arm64: dts: colibri-imx8x: Add adma_pwm Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 09/10] arm64: dts: colibri-imx8x: Add 50mhz clock for eth Francesco Dolcini
2024-08-26 21:59 ` [PATCH v1 10/10] arm64: dts: colibri-imx8x: Cleanup comments Francesco Dolcini
2024-08-28 13:11 ` [PATCH v1 00/10] arm64: dts: colibri-imx8x: Various improvements and additions Francesco Dolcini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).