All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 13:59 ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: devicetree, linux-arm-kernel; +Cc: Alexandre Belloni

Addresses for graph ports and endpoints are not necessary when
there's only a single child. Fix the following warnings removing
unnecessary addresses on OF graph nodes:

Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller/port@0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
Warning (graph_child_address): /ahb/apb/isi@f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
Warning (graph_child_address): /panel/port@0: graph node has single child node 'endpoint@0', #address-cells/#size-cells are not necessary

Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts | 15 ++++-----------
 arch/arm/boot/dts/at91sam9g45.dtsi          |  2 --
 arch/arm/boot/dts/at91sam9n12.dtsi          |  8 +-------
 arch/arm/boot/dts/at91sam9n12ek.dts         | 14 ++++----------
 arch/arm/boot/dts/at91sam9x5_lcd.dtsi       |  7 +------
 arch/arm/boot/dts/at91sam9x5dm.dtsi         | 13 ++++---------
 arch/arm/boot/dts/sama5d3.dtsi              |  2 --
 arch/arm/boot/dts/sama5d3_lcd.dtsi          |  8 +-------
 arch/arm/boot/dts/sama5d4.dtsi              |  8 +-------
 9 files changed, 16 insertions(+), 61 deletions(-)

diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
index fe05aaa7ac87..72c3b077fb46 100644
--- a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
+++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
@@ -49,9 +49,8 @@
 					pinctrl-names = "default";
 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
 
-					port@0 {
-						hlcdc_panel_output: endpoint@0 {
-							reg = <0>;
+					port {
+						hlcdc_panel_output: endpoint {
 							remote-endpoint = <&panel_input>;
 						};
 					};
@@ -144,16 +143,10 @@
 		/* Actually Ampire 800480R2 */
 		compatible = "foxlink,fl500wvr00-a0t", "simple-panel";
 		backlight = <&backlight>;
-		#address-cells = <1>;
-		#size-cells = <0>;
 		status = "okay";
 
-		port@0 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			panel_input: endpoint@0 {
-				reg = <0>;
+		port {
+			panel_input: endpoint {
 				remote-endpoint = <&hlcdc_panel_output>;
 			};
 		};
diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi
index 1ee25a475be8..36729e3f2899 100644
--- a/arch/arm/boot/dts/at91sam9g45.dtsi
+++ b/arch/arm/boot/dts/at91sam9g45.dtsi
@@ -1114,8 +1114,6 @@
 				clock-names = "isi_clk";
 				status = "disabled";
 				port {
-					#address-cells = <1>;
-					#size-cells = <0>;
 				};
 			};
 
diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi
index 37cb81f457b5..a071fccb729b 100644
--- a/arch/arm/boot/dts/at91sam9n12.dtsi
+++ b/arch/arm/boot/dts/at91sam9n12.dtsi
@@ -475,13 +475,7 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
-
-					port@0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts
index c43095c5cb5c..eb0c1e11fa4d 100644
--- a/arch/arm/boot/dts/at91sam9n12ek.dts
+++ b/arch/arm/boot/dts/at91sam9n12ek.dts
@@ -134,9 +134,8 @@
 					pinctrl-names = "default";
 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
 
-					port@0 {
-						hlcdc_panel_output: endpoint@0 {
-							reg = <0>;
+					port {
+						hlcdc_panel_output: endpoint {
 							remote-endpoint = <&panel_input>;
 						};
 					};
@@ -246,13 +245,8 @@
 		#size-cells = <0>;
 		status = "okay";
 
-		port@0 {
-			reg = <0>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			panel_input: endpoint@0 {
-				reg = <0>;
+		port {
+			panel_input: endpoint {
 				remote-endpoint = <&hlcdc_panel_output>;
 			};
 		};
diff --git a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
index 1629db9dd563..e243dff67a67 100644
--- a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
+++ b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
@@ -23,13 +23,8 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
 
-					port@0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
diff --git a/arch/arm/boot/dts/at91sam9x5dm.dtsi b/arch/arm/boot/dts/at91sam9x5dm.dtsi
index 34c089fe0bc0..5aea8fd09ad6 100644
--- a/arch/arm/boot/dts/at91sam9x5dm.dtsi
+++ b/arch/arm/boot/dts/at91sam9x5dm.dtsi
@@ -29,9 +29,8 @@
 					pinctrl-names = "default";
 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
 
-					port@0 {
-						hlcdc_panel_output: endpoint@0 {
-							reg = <0>;
+					port {
+						hlcdc_panel_output: endpoint {
 							remote-endpoint = <&panel_input>;
 						};
 					};
@@ -80,12 +79,8 @@
 		#size-cells = <0>;
 		status = "disabled";
 
-		port@0 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			panel_input: endpoint@0 {
-				reg = <0>;
+		port {
+			panel_input: endpoint {
 				remote-endpoint = <&hlcdc_panel_output>;
 			};
 		};
diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi
index eae5e1ee9cd8..2c51042e1f6b 100644
--- a/arch/arm/boot/dts/sama5d3.dtsi
+++ b/arch/arm/boot/dts/sama5d3.dtsi
@@ -239,8 +239,6 @@
 				clock-names = "isi_clk";
 				status = "disabled";
 				port {
-					#address-cells = <1>;
-					#size-cells = <0>;
 				};
 			};
 
diff --git a/arch/arm/boot/dts/sama5d3_lcd.dtsi b/arch/arm/boot/dts/sama5d3_lcd.dtsi
index be7cfefc6c31..2d042d7ec531 100644
--- a/arch/arm/boot/dts/sama5d3_lcd.dtsi
+++ b/arch/arm/boot/dts/sama5d3_lcd.dtsi
@@ -23,13 +23,7 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
-
-					port@0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi
index 0cf9beddd556..90d7b64915ec 100644
--- a/arch/arm/boot/dts/sama5d4.dtsi
+++ b/arch/arm/boot/dts/sama5d4.dtsi
@@ -333,13 +333,7 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
-
-					port@0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
-- 
2.17.0

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

* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 13:59 ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: linux-arm-kernel

Addresses for graph ports and endpoints are not necessary when
there's only a single child. Fix the following warnings removing
unnecessary addresses on OF graph nodes:

Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller/port at 0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
Warning (graph_child_address): /ahb/apb/isi at f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
Warning (graph_child_address): /panel/port at 0: graph node has single child node 'endpoint at 0', #address-cells/#size-cells are not necessary

Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts | 15 ++++-----------
 arch/arm/boot/dts/at91sam9g45.dtsi          |  2 --
 arch/arm/boot/dts/at91sam9n12.dtsi          |  8 +-------
 arch/arm/boot/dts/at91sam9n12ek.dts         | 14 ++++----------
 arch/arm/boot/dts/at91sam9x5_lcd.dtsi       |  7 +------
 arch/arm/boot/dts/at91sam9x5dm.dtsi         | 13 ++++---------
 arch/arm/boot/dts/sama5d3.dtsi              |  2 --
 arch/arm/boot/dts/sama5d3_lcd.dtsi          |  8 +-------
 arch/arm/boot/dts/sama5d4.dtsi              |  8 +-------
 9 files changed, 16 insertions(+), 61 deletions(-)

diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
index fe05aaa7ac87..72c3b077fb46 100644
--- a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
+++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
@@ -49,9 +49,8 @@
 					pinctrl-names = "default";
 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
 
-					port at 0 {
-						hlcdc_panel_output: endpoint at 0 {
-							reg = <0>;
+					port {
+						hlcdc_panel_output: endpoint {
 							remote-endpoint = <&panel_input>;
 						};
 					};
@@ -144,16 +143,10 @@
 		/* Actually Ampire 800480R2 */
 		compatible = "foxlink,fl500wvr00-a0t", "simple-panel";
 		backlight = <&backlight>;
-		#address-cells = <1>;
-		#size-cells = <0>;
 		status = "okay";
 
-		port at 0 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			panel_input: endpoint at 0 {
-				reg = <0>;
+		port {
+			panel_input: endpoint {
 				remote-endpoint = <&hlcdc_panel_output>;
 			};
 		};
diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi
index 1ee25a475be8..36729e3f2899 100644
--- a/arch/arm/boot/dts/at91sam9g45.dtsi
+++ b/arch/arm/boot/dts/at91sam9g45.dtsi
@@ -1114,8 +1114,6 @@
 				clock-names = "isi_clk";
 				status = "disabled";
 				port {
-					#address-cells = <1>;
-					#size-cells = <0>;
 				};
 			};
 
diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi
index 37cb81f457b5..a071fccb729b 100644
--- a/arch/arm/boot/dts/at91sam9n12.dtsi
+++ b/arch/arm/boot/dts/at91sam9n12.dtsi
@@ -475,13 +475,7 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
-
-					port at 0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts
index c43095c5cb5c..eb0c1e11fa4d 100644
--- a/arch/arm/boot/dts/at91sam9n12ek.dts
+++ b/arch/arm/boot/dts/at91sam9n12ek.dts
@@ -134,9 +134,8 @@
 					pinctrl-names = "default";
 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
 
-					port at 0 {
-						hlcdc_panel_output: endpoint at 0 {
-							reg = <0>;
+					port {
+						hlcdc_panel_output: endpoint {
 							remote-endpoint = <&panel_input>;
 						};
 					};
@@ -246,13 +245,8 @@
 		#size-cells = <0>;
 		status = "okay";
 
-		port at 0 {
-			reg = <0>;
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			panel_input: endpoint at 0 {
-				reg = <0>;
+		port {
+			panel_input: endpoint {
 				remote-endpoint = <&hlcdc_panel_output>;
 			};
 		};
diff --git a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
index 1629db9dd563..e243dff67a67 100644
--- a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
+++ b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
@@ -23,13 +23,8 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
 
-					port at 0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
diff --git a/arch/arm/boot/dts/at91sam9x5dm.dtsi b/arch/arm/boot/dts/at91sam9x5dm.dtsi
index 34c089fe0bc0..5aea8fd09ad6 100644
--- a/arch/arm/boot/dts/at91sam9x5dm.dtsi
+++ b/arch/arm/boot/dts/at91sam9x5dm.dtsi
@@ -29,9 +29,8 @@
 					pinctrl-names = "default";
 					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
 
-					port at 0 {
-						hlcdc_panel_output: endpoint at 0 {
-							reg = <0>;
+					port {
+						hlcdc_panel_output: endpoint {
 							remote-endpoint = <&panel_input>;
 						};
 					};
@@ -80,12 +79,8 @@
 		#size-cells = <0>;
 		status = "disabled";
 
-		port at 0 {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
-			panel_input: endpoint at 0 {
-				reg = <0>;
+		port {
+			panel_input: endpoint {
 				remote-endpoint = <&hlcdc_panel_output>;
 			};
 		};
diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi
index eae5e1ee9cd8..2c51042e1f6b 100644
--- a/arch/arm/boot/dts/sama5d3.dtsi
+++ b/arch/arm/boot/dts/sama5d3.dtsi
@@ -239,8 +239,6 @@
 				clock-names = "isi_clk";
 				status = "disabled";
 				port {
-					#address-cells = <1>;
-					#size-cells = <0>;
 				};
 			};
 
diff --git a/arch/arm/boot/dts/sama5d3_lcd.dtsi b/arch/arm/boot/dts/sama5d3_lcd.dtsi
index be7cfefc6c31..2d042d7ec531 100644
--- a/arch/arm/boot/dts/sama5d3_lcd.dtsi
+++ b/arch/arm/boot/dts/sama5d3_lcd.dtsi
@@ -23,13 +23,7 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
-
-					port at 0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi
index 0cf9beddd556..90d7b64915ec 100644
--- a/arch/arm/boot/dts/sama5d4.dtsi
+++ b/arch/arm/boot/dts/sama5d4.dtsi
@@ -333,13 +333,7 @@
 
 				hlcdc-display-controller {
 					compatible = "atmel,hlcdc-display-controller";
-					#address-cells = <1>;
-					#size-cells = <0>;
-
-					port at 0 {
-						#address-cells = <1>;
-						#size-cells = <0>;
-						reg = <0>;
+					port {
 					};
 				};
 
-- 
2.17.0

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 13:59   ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: devicetree, linux-arm-kernel
  Cc: Fabio Estevam, Sascha Hauer, Shawn Guo, Pengutronix Kernel Team

OF graph endpoint nodes are supposed to be named 'endpoint' with an
address if there is more than one. The i.MX IPU binding graph has used
unique endpoint names instead which now generate dtc warnings:

Warning (graph_endpoint): /soc/ipu@2400000/port@2/disp0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@2/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@2/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@2/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@2/lvds1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@3/disp1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@3/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@3/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@3/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2400000/port@3/lvds1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@2/disp0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@2/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@2/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@2/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@2/lvds1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@3/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@3/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@3/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu@2800000/port@3/lvds1-endpoint: graph endpont node name should be 'endpoint'

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/imx6q.dtsi             | 27 ++++++++++++++-------
 arch/arm/boot/dts/imx6qdl-sabrelite.dtsi |  3 ---
 arch/arm/boot/dts/imx6qdl-sabresd.dtsi   |  3 ---
 arch/arm/boot/dts/imx6qdl.dtsi           | 30 ++++++++++++++++--------
 4 files changed, 38 insertions(+), 25 deletions(-)

diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
index ae7b3f107893..c2fda9d21a17 100644
--- a/arch/arm/boot/dts/imx6q.dtsi
+++ b/arch/arm/boot/dts/imx6q.dtsi
@@ -162,22 +162,27 @@
 				#size-cells = <0>;
 				reg = <2>;
 
-				ipu2_di0_disp0: disp0-endpoint {
+				ipu2_di0_disp0: endpoint@0 {
+					reg = <0>;
 				};
 
-				ipu2_di0_hdmi: hdmi-endpoint {
+				ipu2_di0_hdmi: endpoint@1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_2>;
 				};
 
-				ipu2_di0_mipi: mipi-endpoint {
+				ipu2_di0_mipi: endpoint@2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_2>;
 				};
 
-				ipu2_di0_lvds0: lvds0-endpoint {
+				ipu2_di0_lvds0: endpoint@3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_2>;
 				};
 
-				ipu2_di0_lvds1: lvds1-endpoint {
+				ipu2_di0_lvds1: endpoint@4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_2>;
 				};
 			};
@@ -187,19 +192,23 @@
 				#size-cells = <0>;
 				reg = <3>;
 
-				ipu2_di1_hdmi: hdmi-endpoint {
+				ipu2_di1_hdmi: endpoint@1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_3>;
 				};
 
-				ipu2_di1_mipi: mipi-endpoint {
+				ipu2_di1_mipi: endpoint@2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_3>;
 				};
 
-				ipu2_di1_lvds0: lvds0-endpoint {
+				ipu2_di1_lvds0: endpoint@3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_3>;
 				};
 
-				ipu2_di1_lvds1: lvds1-endpoint {
+				ipu2_di1_lvds1: endpoint@4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_3>;
 				};
 			};
diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
index 18b65052553d..654cf2c9b073 100644
--- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
@@ -379,9 +379,6 @@
 		powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
 
 		port {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
 			ov5640_to_mipi_csi2: endpoint {
 				remote-endpoint = <&mipi_csi2_in>;
 				clock-lanes = <0>;
diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
index f019f9900369..c2de2250718c 100644
--- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
@@ -294,9 +294,6 @@
 		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
 
 		port {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
 			ov5640_to_mipi_csi2: endpoint {
 				remote-endpoint = <&mipi_csi2_in>;
 				clock-lanes = <0>;
diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
index c003e62bf290..0ebcf057961e 100644
--- a/arch/arm/boot/dts/imx6qdl.dtsi
+++ b/arch/arm/boot/dts/imx6qdl.dtsi
@@ -1300,22 +1300,27 @@
 				#size-cells = <0>;
 				reg = <2>;
 
-				ipu1_di0_disp0: disp0-endpoint {
+				ipu1_di0_disp0: endpoint@0 {
+					reg = <0>;
 				};
 
-				ipu1_di0_hdmi: hdmi-endpoint {
+				ipu1_di0_hdmi: endpoint@1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_0>;
 				};
 
-				ipu1_di0_mipi: mipi-endpoint {
+				ipu1_di0_mipi: endpoint@2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_0>;
 				};
 
-				ipu1_di0_lvds0: lvds0-endpoint {
+				ipu1_di0_lvds0: endpoint@3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_0>;
 				};
 
-				ipu1_di0_lvds1: lvds1-endpoint {
+				ipu1_di0_lvds1: endpoint@4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_0>;
 				};
 			};
@@ -1325,22 +1330,27 @@
 				#size-cells = <0>;
 				reg = <3>;
 
-				ipu1_di1_disp1: disp1-endpoint {
+				ipu1_di1_disp1: endpoint@0 {
+					reg = <0>;
 				};
 
-				ipu1_di1_hdmi: hdmi-endpoint {
+				ipu1_di1_hdmi: endpoint@1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_1>;
 				};
 
-				ipu1_di1_mipi: mipi-endpoint {
+				ipu1_di1_mipi: endpoint@2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_1>;
 				};
 
-				ipu1_di1_lvds0: lvds0-endpoint {
+				ipu1_di1_lvds0: endpoint@3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_1>;
 				};
 
-				ipu1_di1_lvds1: lvds1-endpoint {
+				ipu1_di1_lvds1: endpoint@4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_1>;
 				};
 			};
-- 
2.17.0

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
@ 2018-05-08 13:59   ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: linux-arm-kernel

OF graph endpoint nodes are supposed to be named 'endpoint' with an
address if there is more than one. The i.MX IPU binding graph has used
unique endpoint names instead which now generate dtc warnings:

Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/disp0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/lvds1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/disp1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/lvds1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/disp0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/lvds1-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/hdmi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/mipi-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/lvds0-endpoint: graph endpont node name should be 'endpoint'
Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/lvds1-endpoint: graph endpont node name should be 'endpoint'

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/imx6q.dtsi             | 27 ++++++++++++++-------
 arch/arm/boot/dts/imx6qdl-sabrelite.dtsi |  3 ---
 arch/arm/boot/dts/imx6qdl-sabresd.dtsi   |  3 ---
 arch/arm/boot/dts/imx6qdl.dtsi           | 30 ++++++++++++++++--------
 4 files changed, 38 insertions(+), 25 deletions(-)

diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
index ae7b3f107893..c2fda9d21a17 100644
--- a/arch/arm/boot/dts/imx6q.dtsi
+++ b/arch/arm/boot/dts/imx6q.dtsi
@@ -162,22 +162,27 @@
 				#size-cells = <0>;
 				reg = <2>;
 
-				ipu2_di0_disp0: disp0-endpoint {
+				ipu2_di0_disp0: endpoint at 0 {
+					reg = <0>;
 				};
 
-				ipu2_di0_hdmi: hdmi-endpoint {
+				ipu2_di0_hdmi: endpoint at 1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_2>;
 				};
 
-				ipu2_di0_mipi: mipi-endpoint {
+				ipu2_di0_mipi: endpoint at 2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_2>;
 				};
 
-				ipu2_di0_lvds0: lvds0-endpoint {
+				ipu2_di0_lvds0: endpoint at 3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_2>;
 				};
 
-				ipu2_di0_lvds1: lvds1-endpoint {
+				ipu2_di0_lvds1: endpoint at 4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_2>;
 				};
 			};
@@ -187,19 +192,23 @@
 				#size-cells = <0>;
 				reg = <3>;
 
-				ipu2_di1_hdmi: hdmi-endpoint {
+				ipu2_di1_hdmi: endpoint at 1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_3>;
 				};
 
-				ipu2_di1_mipi: mipi-endpoint {
+				ipu2_di1_mipi: endpoint at 2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_3>;
 				};
 
-				ipu2_di1_lvds0: lvds0-endpoint {
+				ipu2_di1_lvds0: endpoint at 3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_3>;
 				};
 
-				ipu2_di1_lvds1: lvds1-endpoint {
+				ipu2_di1_lvds1: endpoint at 4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_3>;
 				};
 			};
diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
index 18b65052553d..654cf2c9b073 100644
--- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
@@ -379,9 +379,6 @@
 		powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
 
 		port {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
 			ov5640_to_mipi_csi2: endpoint {
 				remote-endpoint = <&mipi_csi2_in>;
 				clock-lanes = <0>;
diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
index f019f9900369..c2de2250718c 100644
--- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
+++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
@@ -294,9 +294,6 @@
 		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
 
 		port {
-			#address-cells = <1>;
-			#size-cells = <0>;
-
 			ov5640_to_mipi_csi2: endpoint {
 				remote-endpoint = <&mipi_csi2_in>;
 				clock-lanes = <0>;
diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
index c003e62bf290..0ebcf057961e 100644
--- a/arch/arm/boot/dts/imx6qdl.dtsi
+++ b/arch/arm/boot/dts/imx6qdl.dtsi
@@ -1300,22 +1300,27 @@
 				#size-cells = <0>;
 				reg = <2>;
 
-				ipu1_di0_disp0: disp0-endpoint {
+				ipu1_di0_disp0: endpoint at 0 {
+					reg = <0>;
 				};
 
-				ipu1_di0_hdmi: hdmi-endpoint {
+				ipu1_di0_hdmi: endpoint at 1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_0>;
 				};
 
-				ipu1_di0_mipi: mipi-endpoint {
+				ipu1_di0_mipi: endpoint at 2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_0>;
 				};
 
-				ipu1_di0_lvds0: lvds0-endpoint {
+				ipu1_di0_lvds0: endpoint at 3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_0>;
 				};
 
-				ipu1_di0_lvds1: lvds1-endpoint {
+				ipu1_di0_lvds1: endpoint at 4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_0>;
 				};
 			};
@@ -1325,22 +1330,27 @@
 				#size-cells = <0>;
 				reg = <3>;
 
-				ipu1_di1_disp1: disp1-endpoint {
+				ipu1_di1_disp1: endpoint at 0 {
+					reg = <0>;
 				};
 
-				ipu1_di1_hdmi: hdmi-endpoint {
+				ipu1_di1_hdmi: endpoint at 1 {
+					reg = <1>;
 					remote-endpoint = <&hdmi_mux_1>;
 				};
 
-				ipu1_di1_mipi: mipi-endpoint {
+				ipu1_di1_mipi: endpoint at 2 {
+					reg = <2>;
 					remote-endpoint = <&mipi_mux_1>;
 				};
 
-				ipu1_di1_lvds0: lvds0-endpoint {
+				ipu1_di1_lvds0: endpoint at 3 {
+					reg = <3>;
 					remote-endpoint = <&lvds0_mux_1>;
 				};
 
-				ipu1_di1_lvds1: lvds1-endpoint {
+				ipu1_di1_lvds1: endpoint at 4 {
+					reg = <4>;
 					remote-endpoint = <&lvds1_mux_1>;
 				};
 			};
-- 
2.17.0

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

* [PATCH] arm: dts: imx53: Fix LDB OF graph warning
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 13:59   ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: devicetree, linux-arm-kernel
  Cc: Fabio Estevam, Sascha Hauer, Shawn Guo, Pengutronix Kernel Team

Single child nodes in OF graph don't need an address and now dtc will
warn about this:

Warning (graph_child_address): /soc/aips@50000000/ldb@53fa8008/lvds-channel@0: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary

Since the LDB should always have an output port, fix the warning by
adding the output port, 2, to the DT.

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/imx53.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
index 7d647d043f52..1cf2fc9d0a58 100644
--- a/arch/arm/boot/dts/imx53.dtsi
+++ b/arch/arm/boot/dts/imx53.dtsi
@@ -488,6 +488,10 @@
 							remote-endpoint = <&ipu_di0_lvds0>;
 						};
 					};
+
+					port@2 {
+						reg = <2>;
+					};
 				};
 
 				lvds-channel@1 {
@@ -503,6 +507,10 @@
 							remote-endpoint = <&ipu_di1_lvds1>;
 						};
 					};
+
+					port@2 {
+						reg = <2>;
+					};
 				};
 			};
 
-- 
2.17.0

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

* [PATCH] arm: dts: imx53: Fix LDB OF graph warning
@ 2018-05-08 13:59   ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: linux-arm-kernel

Single child nodes in OF graph don't need an address and now dtc will
warn about this:

Warning (graph_child_address): /soc/aips at 50000000/ldb at 53fa8008/lvds-channel at 0: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary

Since the LDB should always have an output port, fix the warning by
adding the output port, 2, to the DT.

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/imx53.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
index 7d647d043f52..1cf2fc9d0a58 100644
--- a/arch/arm/boot/dts/imx53.dtsi
+++ b/arch/arm/boot/dts/imx53.dtsi
@@ -488,6 +488,10 @@
 							remote-endpoint = <&ipu_di0_lvds0>;
 						};
 					};
+
+					port at 2 {
+						reg = <2>;
+					};
 				};
 
 				lvds-channel at 1 {
@@ -503,6 +507,10 @@
 							remote-endpoint = <&ipu_di1_lvds1>;
 						};
 					};
+
+					port at 2 {
+						reg = <2>;
+					};
 				};
 			};
 
-- 
2.17.0

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

* [PATCH] arm: dts: imx7: Fix error in coresight TPIU graph connection
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 13:59   ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: devicetree, linux-arm-kernel
  Cc: Fabio Estevam, Sascha Hauer, Shawn Guo, Pengutronix Kernel Team

OF graph endpoint connections must be bidirectional and dtc will now
warn if they are not. i.MX7 based DTs have an error and generate
warnings:

Warning (graph_endpoint): /replicator/ports/port@0/endpoint: graph connection to node '/soc/tpiu@30087000/port/endpoint' is not bidirectional
Warning (graph_endpoint): /soc/tpiu@30087000/port/endpoint: graph connection to node '/replicator/ports/port@1/endpoint' is not bidirectional

This appears to be a copy-n-paste error and the TPIU input should be
connected to replicator port 0 instead of port 1.

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/imx7s.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi
index 4d42335c0dee..5db530ec756e 100644
--- a/arch/arm/boot/dts/imx7s.dtsi
+++ b/arch/arm/boot/dts/imx7s.dtsi
@@ -321,7 +321,7 @@
 			port {
 				tpiu_in_port: endpoint {
 					slave-mode;
-					remote-endpoint = <&replicator_out_port1>;
+					remote-endpoint = <&replicator_out_port0>;
 				};
 			};
 		};
-- 
2.17.0

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

* [PATCH] arm: dts: imx7: Fix error in coresight TPIU graph connection
@ 2018-05-08 13:59   ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: linux-arm-kernel

OF graph endpoint connections must be bidirectional and dtc will now
warn if they are not. i.MX7 based DTs have an error and generate
warnings:

Warning (graph_endpoint): /replicator/ports/port at 0/endpoint: graph connection to node '/soc/tpiu at 30087000/port/endpoint' is not bidirectional
Warning (graph_endpoint): /soc/tpiu at 30087000/port/endpoint: graph connection to node '/replicator/ports/port at 1/endpoint' is not bidirectional

This appears to be a copy-n-paste error and the TPIU input should be
connected to replicator port 0 instead of port 1.

Cc: Shawn Guo <shawnguo@kernel.org>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/imx7s.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi
index 4d42335c0dee..5db530ec756e 100644
--- a/arch/arm/boot/dts/imx7s.dtsi
+++ b/arch/arm/boot/dts/imx7s.dtsi
@@ -321,7 +321,7 @@
 			port {
 				tpiu_in_port: endpoint {
 					slave-mode;
-					remote-endpoint = <&replicator_out_port1>;
+					remote-endpoint = <&replicator_out_port0>;
 				};
 			};
 		};
-- 
2.17.0

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

* [PATCH] arm: dts: omap: fix OF graph in omap3-devkit8000
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 13:59   ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: devicetree, linux-arm-kernel; +Cc: Tony Lindgren, Benoît Cousson

omap3-devkit8000-common.dtsi defines a graph connection for DVI, but
then omap3-devkit8000-lcd-common.dtsi overrides that with a graph
connection for the LCD as the same output signals are used. This
leaves an incomplete graph as the TFP410 output has only half a
connection. The result is the following warning:

arch/arm/boot/dts/omap3-devkit8000-lcd70.dtb: Warning (graph_endpoint): /encoder0/ports/port@0/endpoint: graph connection to node '/ocp@68000000/dss@48050000/port/endpoint' is not bidirectional

Fix this by defining multiple endpoints which is the correct way to show
a 1 to many connection.

Cc: "Benoît Cousson" <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/omap3-devkit8000-common.dtsi     | 9 ++++++++-
 arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi | 5 ++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/omap3-devkit8000-common.dtsi b/arch/arm/boot/dts/omap3-devkit8000-common.dtsi
index 0c0bb1b01b0b..746a658e84b6 100644
--- a/arch/arm/boot/dts/omap3-devkit8000-common.dtsi
+++ b/arch/arm/boot/dts/omap3-devkit8000-common.dtsi
@@ -349,10 +349,17 @@
 	vdda_dac-supply = <&vdac>;
 
 	port {
-		dpi_dvi_out: endpoint {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		dpi_dvi_out: endpoint@0 {
+			reg = <0>;
 			remote-endpoint = <&tfp410_in>;
 			data-lines = <24>;
 		};
+
+		endpoint@1 {
+			reg = <1>;
+		};
 	};
 };
 
diff --git a/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi b/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi
index 2d64bcffaaa8..1093387259e2 100644
--- a/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi
+++ b/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi
@@ -30,7 +30,10 @@
 
 &dss {
 	port {
-		dpi_lcd_out: endpoint {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		dpi_lcd_out: endpoint@1 {
+			reg = <1>;
 			remote-endpoint = <&lcd_in>;
 			data-lines = <24>;
 		};
-- 
2.17.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH] arm: dts: omap: fix OF graph in omap3-devkit8000
@ 2018-05-08 13:59   ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: linux-arm-kernel

omap3-devkit8000-common.dtsi defines a graph connection for DVI, but
then omap3-devkit8000-lcd-common.dtsi overrides that with a graph
connection for the LCD as the same output signals are used. This
leaves an incomplete graph as the TFP410 output has only half a
connection. The result is the following warning:

arch/arm/boot/dts/omap3-devkit8000-lcd70.dtb: Warning (graph_endpoint): /encoder0/ports/port at 0/endpoint: graph connection to node '/ocp at 68000000/dss at 48050000/port/endpoint' is not bidirectional

Fix this by defining multiple endpoints which is the correct way to show
a 1 to many connection.

Cc: "Beno?t Cousson" <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/omap3-devkit8000-common.dtsi     | 9 ++++++++-
 arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi | 5 ++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/omap3-devkit8000-common.dtsi b/arch/arm/boot/dts/omap3-devkit8000-common.dtsi
index 0c0bb1b01b0b..746a658e84b6 100644
--- a/arch/arm/boot/dts/omap3-devkit8000-common.dtsi
+++ b/arch/arm/boot/dts/omap3-devkit8000-common.dtsi
@@ -349,10 +349,17 @@
 	vdda_dac-supply = <&vdac>;
 
 	port {
-		dpi_dvi_out: endpoint {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		dpi_dvi_out: endpoint at 0 {
+			reg = <0>;
 			remote-endpoint = <&tfp410_in>;
 			data-lines = <24>;
 		};
+
+		endpoint at 1 {
+			reg = <1>;
+		};
 	};
 };
 
diff --git a/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi b/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi
index 2d64bcffaaa8..1093387259e2 100644
--- a/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi
+++ b/arch/arm/boot/dts/omap3-devkit8000-lcd-common.dtsi
@@ -30,7 +30,10 @@
 
 &dss {
 	port {
-		dpi_lcd_out: endpoint {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		dpi_lcd_out: endpoint at 1 {
+			reg = <1>;
 			remote-endpoint = <&lcd_in>;
 			data-lines = <24>;
 		};
-- 
2.17.0

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

* [PATCH] arm: dts: omap: fix OMAP3 CM-T3x OF graph video connectors
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 13:59   ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: devicetree, linux-arm-kernel; +Cc: Tony Lindgren, Benoît Cousson

The OMAP3 CM-T3x based boards define 2 /connector nodes for S-Video and
DVI output. However, since they have the same node name, the S-Video
connector overwritten. This leaves a dangling graph connection which
gives the following warning:

arch/arm/boot/dts/omap3-sbc-t3517.dtb: Warning (graph_endpoint): /ocp@68000000/dss@48050000/encoder@48050c00/port/endpoint: graph connection to node '/connector/port/endpoint' is not bidirectional

Fix this by renaming the nodes to s-video-connector and dvi-connector.

Cc: "Benoît Cousson" <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/omap3-cm-t3x.dtsi | 2 +-
 arch/arm/boot/dts/omap3-sb-t35.dtsi | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/omap3-cm-t3x.dtsi b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
index 9dcb18d22cde..cdb632df152a 100644
--- a/arch/arm/boot/dts/omap3-cm-t3x.dtsi
+++ b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
@@ -60,7 +60,7 @@
 		regulator-max-microvolt = <3300000>;
 	};
 
-	tv0: connector {
+	tv0: svideo-connector {
 		compatible = "svideo-connector";
 		label = "tv";
 
diff --git a/arch/arm/boot/dts/omap3-sb-t35.dtsi b/arch/arm/boot/dts/omap3-sb-t35.dtsi
index 22b4c8bdcc65..fb9842fa922c 100644
--- a/arch/arm/boot/dts/omap3-sb-t35.dtsi
+++ b/arch/arm/boot/dts/omap3-sb-t35.dtsi
@@ -34,7 +34,7 @@
 		};
 	};
 
-	dvi0: connector {
+	dvi0: dvi-connector {
 		compatible = "dvi-connector";
 		label = "dvi";
 
-- 
2.17.0


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH] arm: dts: omap: fix OMAP3 CM-T3x OF graph video connectors
@ 2018-05-08 13:59   ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 13:59 UTC (permalink / raw)
  To: linux-arm-kernel

The OMAP3 CM-T3x based boards define 2 /connector nodes for S-Video and
DVI output. However, since they have the same node name, the S-Video
connector overwritten. This leaves a dangling graph connection which
gives the following warning:

arch/arm/boot/dts/omap3-sbc-t3517.dtb: Warning (graph_endpoint): /ocp at 68000000/dss at 48050000/encoder at 48050c00/port/endpoint: graph connection to node '/connector/port/endpoint' is not bidirectional

Fix this by renaming the nodes to s-video-connector and dvi-connector.

Cc: "Beno?t Cousson" <bcousson@baylibre.com>
Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Rob Herring <robh@kernel.org>
---
 arch/arm/boot/dts/omap3-cm-t3x.dtsi | 2 +-
 arch/arm/boot/dts/omap3-sb-t35.dtsi | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/boot/dts/omap3-cm-t3x.dtsi b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
index 9dcb18d22cde..cdb632df152a 100644
--- a/arch/arm/boot/dts/omap3-cm-t3x.dtsi
+++ b/arch/arm/boot/dts/omap3-cm-t3x.dtsi
@@ -60,7 +60,7 @@
 		regulator-max-microvolt = <3300000>;
 	};
 
-	tv0: connector {
+	tv0: svideo-connector {
 		compatible = "svideo-connector";
 		label = "tv";
 
diff --git a/arch/arm/boot/dts/omap3-sb-t35.dtsi b/arch/arm/boot/dts/omap3-sb-t35.dtsi
index 22b4c8bdcc65..fb9842fa922c 100644
--- a/arch/arm/boot/dts/omap3-sb-t35.dtsi
+++ b/arch/arm/boot/dts/omap3-sb-t35.dtsi
@@ -34,7 +34,7 @@
 		};
 	};
 
-	dvi0: connector {
+	dvi0: dvi-connector {
 		compatible = "dvi-connector";
 		label = "dvi";
 
-- 
2.17.0

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

* Re: [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
  2018-05-08 13:59   ` Rob Herring
@ 2018-05-08 14:06     ` Fabio Estevam
  -1 siblings, 0 replies; 40+ messages in thread
From: Fabio Estevam @ 2018-05-08 14:06 UTC (permalink / raw)
  To: Rob Herring
  Cc: open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE

Hi Rob,

On Tue, May 8, 2018 at 10:59 AM, Rob Herring <robh@kernel.org> wrote:

> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> index 18b65052553d..654cf2c9b073 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> @@ -379,9 +379,6 @@
>                 powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
>
>                 port {
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -
>                         ov5640_to_mipi_csi2: endpoint {
>                                 remote-endpoint = <&mipi_csi2_in>;
>                                 clock-lanes = <0>;
> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> index f019f9900369..c2de2250718c 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> @@ -294,9 +294,6 @@
>                 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
>
>                 port {
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -
>                         ov5640_to_mipi_csi2: endpoint {

These two changes seem unrelated and I have already fixed them at:
https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?h=imx/dt&id=1b215c73d1586e6f2586e9a6d6dfaf49cc142b3a

BTW, linux-next from today shows no W=1 DTC warnings on
imx_v6_v7_defconfig, but maybe new ones are coming soon :-)

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
@ 2018-05-08 14:06     ` Fabio Estevam
  0 siblings, 0 replies; 40+ messages in thread
From: Fabio Estevam @ 2018-05-08 14:06 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Rob,

On Tue, May 8, 2018 at 10:59 AM, Rob Herring <robh@kernel.org> wrote:

> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> index 18b65052553d..654cf2c9b073 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> @@ -379,9 +379,6 @@
>                 powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
>
>                 port {
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -
>                         ov5640_to_mipi_csi2: endpoint {
>                                 remote-endpoint = <&mipi_csi2_in>;
>                                 clock-lanes = <0>;
> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> index f019f9900369..c2de2250718c 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> @@ -294,9 +294,6 @@
>                 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
>
>                 port {
> -                       #address-cells = <1>;
> -                       #size-cells = <0>;
> -
>                         ov5640_to_mipi_csi2: endpoint {

These two changes seem unrelated and I have already fixed them at:
https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?h=imx/dt&id=1b215c73d1586e6f2586e9a6d6dfaf49cc142b3a

BTW, linux-next from today shows no W=1 DTC warnings on
imx_v6_v7_defconfig, but maybe new ones are coming soon :-)

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

* Re: [PATCH] arm: dts: imx53: Fix LDB OF graph warning
  2018-05-08 13:59   ` Rob Herring
@ 2018-05-08 14:16     ` Philipp Zabel
  -1 siblings, 0 replies; 40+ messages in thread
From: Philipp Zabel @ 2018-05-08 14:16 UTC (permalink / raw)
  To: Rob Herring, devicetree, linux-arm-kernel
  Cc: Fabio Estevam, Sascha Hauer, Shawn Guo, Pengutronix Kernel Team

On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
> Single child nodes in OF graph don't need an address and now dtc will
> warn about this:
> 
> Warning (graph_child_address): /soc/aips@50000000/ldb@53fa8008/lvds-channel@0: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> 
> Since the LDB should always have an output port, fix the warning by
> adding the output port, 2, to the DT.
> 
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> Cc: Fabio Estevam <fabio.estevam@nxp.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/imx53.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
> index 7d647d043f52..1cf2fc9d0a58 100644
> --- a/arch/arm/boot/dts/imx53.dtsi
> +++ b/arch/arm/boot/dts/imx53.dtsi
> @@ -488,6 +488,10 @@
>  							remote-endpoint = <&ipu_di0_lvds0>;
>  						};
>  					};
> +
> +					port@2 {
> +						reg = <2>;
> +					};

Now that the reg property of port@2 is added in the .dtsi, it could be
removed from the one .dts files that use it:

----------8<----------
--- a/arch/arm/boot/dts/imx53-ppd.dts
+++ b/arch/arm/boot/dts/imx53-ppd.dts
@@ -559,8 +559,6 @@
                status = "okay";
 
                port@2 {
-                       reg = <2>;
-
                        lvds0_out: endpoint {
                                remote-endpoint = <&panel_in_lvds0>;
                        };
---------->8----------

>  				};
>  
>  				lvds-channel@1 {
> @@ -503,6 +507,10 @@
>  							remote-endpoint = <&ipu_di1_lvds1>;
>  						};
>  					};
> +
> +					port@2 {
> +						reg = <2>;
> +					};
>  				};
>  			};
>  

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp

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

* [PATCH] arm: dts: imx53: Fix LDB OF graph warning
@ 2018-05-08 14:16     ` Philipp Zabel
  0 siblings, 0 replies; 40+ messages in thread
From: Philipp Zabel @ 2018-05-08 14:16 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
> Single child nodes in OF graph don't need an address and now dtc will
> warn about this:
> 
> Warning (graph_child_address): /soc/aips at 50000000/ldb at 53fa8008/lvds-channel at 0: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
> 
> Since the LDB should always have an output port, fix the warning by
> adding the output port, 2, to the DT.
> 
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> Cc: Fabio Estevam <fabio.estevam@nxp.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/imx53.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
> index 7d647d043f52..1cf2fc9d0a58 100644
> --- a/arch/arm/boot/dts/imx53.dtsi
> +++ b/arch/arm/boot/dts/imx53.dtsi
> @@ -488,6 +488,10 @@
>  							remote-endpoint = <&ipu_di0_lvds0>;
>  						};
>  					};
> +
> +					port at 2 {
> +						reg = <2>;
> +					};

Now that the reg property of port at 2 is added in the .dtsi, it could be
removed from the one .dts files that use it:

----------8<----------
--- a/arch/arm/boot/dts/imx53-ppd.dts
+++ b/arch/arm/boot/dts/imx53-ppd.dts
@@ -559,8 +559,6 @@
                status = "okay";
 
                port@2 {
-                       reg = <2>;
-
                        lvds0_out: endpoint {
                                remote-endpoint = <&panel_in_lvds0>;
                        };
---------->8----------

>  				};
>  
>  				lvds-channel at 1 {
> @@ -503,6 +507,10 @@
>  							remote-endpoint = <&ipu_di1_lvds1>;
>  						};
>  					};
> +
> +					port at 2 {
> +						reg = <2>;
> +					};
>  				};
>  			};
>  

Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>

regards
Philipp

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

* Re: [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
  2018-05-08 13:59   ` Rob Herring
@ 2018-05-08 14:19     ` Philipp Zabel
  -1 siblings, 0 replies; 40+ messages in thread
From: Philipp Zabel @ 2018-05-08 14:19 UTC (permalink / raw)
  To: Rob Herring, devicetree, linux-arm-kernel
  Cc: Fabio Estevam, Sascha Hauer, Joshua Clayton, Shawn Guo,
	Pengutronix Kernel Team

On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
> OF graph endpoint nodes are supposed to be named 'endpoint' with an
> address if there is more than one. The i.MX IPU binding graph has used
> unique endpoint names instead which now generate dtc warnings:

This partially reverts commit 416196cd9099 ("ARM: dts: imx6: fix dtc
warnings for ipu endpoints") and also solves the same issue differently
by adding reg properties. Should this get a Fixes: tag for these
changes?

regards
Philipp

> Warning (graph_endpoint): /soc/ipu@2400000/port@2/disp0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@2/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@2/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@2/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@2/lvds1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@3/disp1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@3/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@3/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@3/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2400000/port@3/lvds1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@2/disp0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@2/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@2/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@2/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@2/lvds1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@3/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@3/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@3/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu@2800000/port@3/lvds1-endpoint: graph endpont node name should be 'endpoint'
> 
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> Cc: Fabio Estevam <fabio.estevam@nxp.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/imx6q.dtsi             | 27 ++++++++++++++-------
>  arch/arm/boot/dts/imx6qdl-sabrelite.dtsi |  3 ---
>  arch/arm/boot/dts/imx6qdl-sabresd.dtsi   |  3 ---
>  arch/arm/boot/dts/imx6qdl.dtsi           | 30 ++++++++++++++++--------
>  4 files changed, 38 insertions(+), 25 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
> index ae7b3f107893..c2fda9d21a17 100644
> --- a/arch/arm/boot/dts/imx6q.dtsi
> +++ b/arch/arm/boot/dts/imx6q.dtsi
> @@ -162,22 +162,27 @@
>  				#size-cells = <0>;
>  				reg = <2>;
>  
> -				ipu2_di0_disp0: disp0-endpoint {
> +				ipu2_di0_disp0: endpoint@0 {
> +					reg = <0>;
>  				};
>  
> -				ipu2_di0_hdmi: hdmi-endpoint {
> +				ipu2_di0_hdmi: endpoint@1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_2>;
>  				};
>  
> -				ipu2_di0_mipi: mipi-endpoint {
> +				ipu2_di0_mipi: endpoint@2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_2>;
>  				};
>  
> -				ipu2_di0_lvds0: lvds0-endpoint {
> +				ipu2_di0_lvds0: endpoint@3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_2>;
>  				};
>  
> -				ipu2_di0_lvds1: lvds1-endpoint {
> +				ipu2_di0_lvds1: endpoint@4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_2>;
>  				};
>  			};
> @@ -187,19 +192,23 @@
>  				#size-cells = <0>;
>  				reg = <3>;
>  
> -				ipu2_di1_hdmi: hdmi-endpoint {
> +				ipu2_di1_hdmi: endpoint@1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_3>;
>  				};
>  
> -				ipu2_di1_mipi: mipi-endpoint {
> +				ipu2_di1_mipi: endpoint@2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_3>;
>  				};
>  
> -				ipu2_di1_lvds0: lvds0-endpoint {
> +				ipu2_di1_lvds0: endpoint@3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_3>;
>  				};
>  
> -				ipu2_di1_lvds1: lvds1-endpoint {
> +				ipu2_di1_lvds1: endpoint@4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_3>;
>  				};
>  			};
> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> index 18b65052553d..654cf2c9b073 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> @@ -379,9 +379,6 @@
>  		powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
>  
>  		port {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
>  			ov5640_to_mipi_csi2: endpoint {
>  				remote-endpoint = <&mipi_csi2_in>;
>  				clock-lanes = <0>;
> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> index f019f9900369..c2de2250718c 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> @@ -294,9 +294,6 @@
>  		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
>  
>  		port {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
>  			ov5640_to_mipi_csi2: endpoint {
>  				remote-endpoint = <&mipi_csi2_in>;
>  				clock-lanes = <0>;
> diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
> index c003e62bf290..0ebcf057961e 100644
> --- a/arch/arm/boot/dts/imx6qdl.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl.dtsi
> @@ -1300,22 +1300,27 @@
>  				#size-cells = <0>;
>  				reg = <2>;
>  
> -				ipu1_di0_disp0: disp0-endpoint {
> +				ipu1_di0_disp0: endpoint@0 {
> +					reg = <0>;
>  				};
>  
> -				ipu1_di0_hdmi: hdmi-endpoint {
> +				ipu1_di0_hdmi: endpoint@1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_0>;
>  				};
>  
> -				ipu1_di0_mipi: mipi-endpoint {
> +				ipu1_di0_mipi: endpoint@2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_0>;
>  				};
>  
> -				ipu1_di0_lvds0: lvds0-endpoint {
> +				ipu1_di0_lvds0: endpoint@3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_0>;
>  				};
>  
> -				ipu1_di0_lvds1: lvds1-endpoint {
> +				ipu1_di0_lvds1: endpoint@4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_0>;
>  				};
>  			};
> @@ -1325,22 +1330,27 @@
>  				#size-cells = <0>;
>  				reg = <3>;
>  
> -				ipu1_di1_disp1: disp1-endpoint {
> +				ipu1_di1_disp1: endpoint@0 {
> +					reg = <0>;
>  				};
>  
> -				ipu1_di1_hdmi: hdmi-endpoint {
> +				ipu1_di1_hdmi: endpoint@1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_1>;
>  				};
>  
> -				ipu1_di1_mipi: mipi-endpoint {
> +				ipu1_di1_mipi: endpoint@2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_1>;
>  				};
>  
> -				ipu1_di1_lvds0: lvds0-endpoint {
> +				ipu1_di1_lvds0: endpoint@3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_1>;
>  				};
>  
> -				ipu1_di1_lvds1: lvds1-endpoint {
> +				ipu1_di1_lvds1: endpoint@4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_1>;
>  				};
>  			};

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
@ 2018-05-08 14:19     ` Philipp Zabel
  0 siblings, 0 replies; 40+ messages in thread
From: Philipp Zabel @ 2018-05-08 14:19 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
> OF graph endpoint nodes are supposed to be named 'endpoint' with an
> address if there is more than one. The i.MX IPU binding graph has used
> unique endpoint names instead which now generate dtc warnings:

This partially reverts commit 416196cd9099 ("ARM: dts: imx6: fix dtc
warnings for ipu endpoints") and also solves the same issue differently
by adding reg properties. Should this get a Fixes: tag for these
changes?

regards
Philipp

> Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/disp0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 2/lvds1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/disp1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2400000/port at 3/lvds1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/disp0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 2/lvds1-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/hdmi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/mipi-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/lvds0-endpoint: graph endpont node name should be 'endpoint'
> Warning (graph_endpoint): /soc/ipu at 2800000/port at 3/lvds1-endpoint: graph endpont node name should be 'endpoint'
> 
> Cc: Shawn Guo <shawnguo@kernel.org>
> Cc: Sascha Hauer <s.hauer@pengutronix.de>
> Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> Cc: Fabio Estevam <fabio.estevam@nxp.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/imx6q.dtsi             | 27 ++++++++++++++-------
>  arch/arm/boot/dts/imx6qdl-sabrelite.dtsi |  3 ---
>  arch/arm/boot/dts/imx6qdl-sabresd.dtsi   |  3 ---
>  arch/arm/boot/dts/imx6qdl.dtsi           | 30 ++++++++++++++++--------
>  4 files changed, 38 insertions(+), 25 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/imx6q.dtsi b/arch/arm/boot/dts/imx6q.dtsi
> index ae7b3f107893..c2fda9d21a17 100644
> --- a/arch/arm/boot/dts/imx6q.dtsi
> +++ b/arch/arm/boot/dts/imx6q.dtsi
> @@ -162,22 +162,27 @@
>  				#size-cells = <0>;
>  				reg = <2>;
>  
> -				ipu2_di0_disp0: disp0-endpoint {
> +				ipu2_di0_disp0: endpoint at 0 {
> +					reg = <0>;
>  				};
>  
> -				ipu2_di0_hdmi: hdmi-endpoint {
> +				ipu2_di0_hdmi: endpoint at 1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_2>;
>  				};
>  
> -				ipu2_di0_mipi: mipi-endpoint {
> +				ipu2_di0_mipi: endpoint at 2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_2>;
>  				};
>  
> -				ipu2_di0_lvds0: lvds0-endpoint {
> +				ipu2_di0_lvds0: endpoint at 3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_2>;
>  				};
>  
> -				ipu2_di0_lvds1: lvds1-endpoint {
> +				ipu2_di0_lvds1: endpoint at 4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_2>;
>  				};
>  			};
> @@ -187,19 +192,23 @@
>  				#size-cells = <0>;
>  				reg = <3>;
>  
> -				ipu2_di1_hdmi: hdmi-endpoint {
> +				ipu2_di1_hdmi: endpoint at 1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_3>;
>  				};
>  
> -				ipu2_di1_mipi: mipi-endpoint {
> +				ipu2_di1_mipi: endpoint at 2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_3>;
>  				};
>  
> -				ipu2_di1_lvds0: lvds0-endpoint {
> +				ipu2_di1_lvds0: endpoint at 3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_3>;
>  				};
>  
> -				ipu2_di1_lvds1: lvds1-endpoint {
> +				ipu2_di1_lvds1: endpoint at 4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_3>;
>  				};
>  			};
> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> index 18b65052553d..654cf2c9b073 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> @@ -379,9 +379,6 @@
>  		powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
>  
>  		port {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
>  			ov5640_to_mipi_csi2: endpoint {
>  				remote-endpoint = <&mipi_csi2_in>;
>  				clock-lanes = <0>;
> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> index f019f9900369..c2de2250718c 100644
> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> @@ -294,9 +294,6 @@
>  		reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
>  
>  		port {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
>  			ov5640_to_mipi_csi2: endpoint {
>  				remote-endpoint = <&mipi_csi2_in>;
>  				clock-lanes = <0>;
> diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi
> index c003e62bf290..0ebcf057961e 100644
> --- a/arch/arm/boot/dts/imx6qdl.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl.dtsi
> @@ -1300,22 +1300,27 @@
>  				#size-cells = <0>;
>  				reg = <2>;
>  
> -				ipu1_di0_disp0: disp0-endpoint {
> +				ipu1_di0_disp0: endpoint at 0 {
> +					reg = <0>;
>  				};
>  
> -				ipu1_di0_hdmi: hdmi-endpoint {
> +				ipu1_di0_hdmi: endpoint at 1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_0>;
>  				};
>  
> -				ipu1_di0_mipi: mipi-endpoint {
> +				ipu1_di0_mipi: endpoint at 2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_0>;
>  				};
>  
> -				ipu1_di0_lvds0: lvds0-endpoint {
> +				ipu1_di0_lvds0: endpoint at 3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_0>;
>  				};
>  
> -				ipu1_di0_lvds1: lvds1-endpoint {
> +				ipu1_di0_lvds1: endpoint at 4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_0>;
>  				};
>  			};
> @@ -1325,22 +1330,27 @@
>  				#size-cells = <0>;
>  				reg = <3>;
>  
> -				ipu1_di1_disp1: disp1-endpoint {
> +				ipu1_di1_disp1: endpoint at 0 {
> +					reg = <0>;
>  				};
>  
> -				ipu1_di1_hdmi: hdmi-endpoint {
> +				ipu1_di1_hdmi: endpoint at 1 {
> +					reg = <1>;
>  					remote-endpoint = <&hdmi_mux_1>;
>  				};
>  
> -				ipu1_di1_mipi: mipi-endpoint {
> +				ipu1_di1_mipi: endpoint at 2 {
> +					reg = <2>;
>  					remote-endpoint = <&mipi_mux_1>;
>  				};
>  
> -				ipu1_di1_lvds0: lvds0-endpoint {
> +				ipu1_di1_lvds0: endpoint at 3 {
> +					reg = <3>;
>  					remote-endpoint = <&lvds0_mux_1>;
>  				};
>  
> -				ipu1_di1_lvds1: lvds1-endpoint {
> +				ipu1_di1_lvds1: endpoint at 4 {
> +					reg = <4>;
>  					remote-endpoint = <&lvds1_mux_1>;
>  				};
>  			};

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

* Re: [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
  2018-05-08 14:06     ` Fabio Estevam
@ 2018-05-08 15:22       ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 15:22 UTC (permalink / raw)
  To: Fabio Estevam
  Cc: open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam, Shawn Guo,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE

On Tue, May 8, 2018 at 9:06 AM, Fabio Estevam <festevam@gmail.com> wrote:
> Hi Rob,
>
> On Tue, May 8, 2018 at 10:59 AM, Rob Herring <robh@kernel.org> wrote:
>
>> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>> index 18b65052553d..654cf2c9b073 100644
>> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>> @@ -379,9 +379,6 @@
>>                 powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
>>
>>                 port {
>> -                       #address-cells = <1>;
>> -                       #size-cells = <0>;
>> -
>>                         ov5640_to_mipi_csi2: endpoint {
>>                                 remote-endpoint = <&mipi_csi2_in>;
>>                                 clock-lanes = <0>;
>> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
>> index f019f9900369..c2de2250718c 100644
>> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
>> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
>> @@ -294,9 +294,6 @@
>>                 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
>>
>>                 port {
>> -                       #address-cells = <1>;
>> -                       #size-cells = <0>;
>> -
>>                         ov5640_to_mipi_csi2: endpoint {
>
> These two changes seem unrelated and I have already fixed them at:
> https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?h=imx/dt&id=1b215c73d1586e6f2586e9a6d6dfaf49cc142b3a

Right. Will drop them.

>
> BTW, linux-next from today shows no W=1 DTC warnings on
> imx_v6_v7_defconfig, but maybe new ones are coming soon :-)

I just sent out the dtc update patch shortly before this one. I'll
probably add it to -next today.

Rob

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
@ 2018-05-08 15:22       ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 15:22 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, May 8, 2018 at 9:06 AM, Fabio Estevam <festevam@gmail.com> wrote:
> Hi Rob,
>
> On Tue, May 8, 2018 at 10:59 AM, Rob Herring <robh@kernel.org> wrote:
>
>> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>> index 18b65052553d..654cf2c9b073 100644
>> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
>> @@ -379,9 +379,6 @@
>>                 powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
>>
>>                 port {
>> -                       #address-cells = <1>;
>> -                       #size-cells = <0>;
>> -
>>                         ov5640_to_mipi_csi2: endpoint {
>>                                 remote-endpoint = <&mipi_csi2_in>;
>>                                 clock-lanes = <0>;
>> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
>> index f019f9900369..c2de2250718c 100644
>> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
>> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
>> @@ -294,9 +294,6 @@
>>                 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
>>
>>                 port {
>> -                       #address-cells = <1>;
>> -                       #size-cells = <0>;
>> -
>>                         ov5640_to_mipi_csi2: endpoint {
>
> These two changes seem unrelated and I have already fixed them at:
> https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?h=imx/dt&id=1b215c73d1586e6f2586e9a6d6dfaf49cc142b3a

Right. Will drop them.

>
> BTW, linux-next from today shows no W=1 DTC warnings on
> imx_v6_v7_defconfig, but maybe new ones are coming soon :-)

I just sent out the dtc update patch shortly before this one. I'll
probably add it to -next today.

Rob

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

* Re: [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
  2018-05-08 14:19     ` Philipp Zabel
@ 2018-05-08 15:26       ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 15:26 UTC (permalink / raw)
  To: Philipp Zabel
  Cc: devicetree, Joshua Clayton, Sascha Hauer,
	Pengutronix Kernel Team, Fabio Estevam, Shawn Guo,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE

On Tue, May 8, 2018 at 9:19 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
>> OF graph endpoint nodes are supposed to be named 'endpoint' with an
>> address if there is more than one. The i.MX IPU binding graph has used
>> unique endpoint names instead which now generate dtc warnings:
>
> This partially reverts commit 416196cd9099 ("ARM: dts: imx6: fix dtc
> warnings for ipu endpoints") and also solves the same issue differently
> by adding reg properties. Should this get a Fixes: tag for these
> changes?

Yes, I'd missed that. This has become my concern with the dtc
warnings. They are often fixed in the wrong way to silence warnings.
This one is trivial, but sometimes they point to deeper issues like
poor binding design. This is certainly true for the new
unique_unit_address check.

Rob

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
@ 2018-05-08 15:26       ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 15:26 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, May 8, 2018 at 9:19 AM, Philipp Zabel <p.zabel@pengutronix.de> wrote:
> On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
>> OF graph endpoint nodes are supposed to be named 'endpoint' with an
>> address if there is more than one. The i.MX IPU binding graph has used
>> unique endpoint names instead which now generate dtc warnings:
>
> This partially reverts commit 416196cd9099 ("ARM: dts: imx6: fix dtc
> warnings for ipu endpoints") and also solves the same issue differently
> by adding reg properties. Should this get a Fixes: tag for these
> changes?

Yes, I'd missed that. This has become my concern with the dtc
warnings. They are often fixed in the wrong way to silence warnings.
This one is trivial, but sometimes they point to deeper issues like
poor binding design. This is certainly true for the new
unique_unit_address check.

Rob

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

* Re: [PATCH] arm: dts: atmel: graph_child_address warning fixes
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 20:18   ` Boris Brezillon
  -1 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 20:18 UTC (permalink / raw)
  To: Rob Herring; +Cc: devicetree, Alexandre Belloni, linux-arm-kernel

On Tue,  8 May 2018 08:59:25 -0500
Rob Herring <robh@kernel.org> wrote:

> Addresses for graph ports and endpoints are not necessary when
> there's only a single child. Fix the following warnings removing
> unnecessary addresses on OF graph nodes:
> 
> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller/port@0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/isi@f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /panel/port@0: graph node has single child node 'endpoint@0', #address-cells/#size-cells are not necessary

Unfortunately that's not going to work, because the driver calls
drm_of_find_panel_or_bridge() with a positive port and endpoint,
not -1. While we could switch port arg from 0 to -1, that's not that
simple for the endpoint arg, because we don't know in advance how many
devices will be connected to the RGB/DPI port.

[1]https://elixir.bootlin.com/linux/v4.17-rc3/source/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c#L41

> 
> Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts | 15 ++++-----------
>  arch/arm/boot/dts/at91sam9g45.dtsi          |  2 --
>  arch/arm/boot/dts/at91sam9n12.dtsi          |  8 +-------
>  arch/arm/boot/dts/at91sam9n12ek.dts         | 14 ++++----------
>  arch/arm/boot/dts/at91sam9x5_lcd.dtsi       |  7 +------
>  arch/arm/boot/dts/at91sam9x5dm.dtsi         | 13 ++++---------
>  arch/arm/boot/dts/sama5d3.dtsi              |  2 --
>  arch/arm/boot/dts/sama5d3_lcd.dtsi          |  8 +-------
>  arch/arm/boot/dts/sama5d4.dtsi              |  8 +-------
>  9 files changed, 16 insertions(+), 61 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> index fe05aaa7ac87..72c3b077fb46 100644
> --- a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> +++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> @@ -49,9 +49,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port@0 {
> -						hlcdc_panel_output: endpoint@0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -144,16 +143,10 @@
>  		/* Actually Ampire 800480R2 */
>  		compatible = "foxlink,fl500wvr00-a0t", "simple-panel";
>  		backlight = <&backlight>;
> -		#address-cells = <1>;
> -		#size-cells = <0>;
>  		status = "okay";
>  
> -		port@0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint@0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi
> index 1ee25a475be8..36729e3f2899 100644
> --- a/arch/arm/boot/dts/at91sam9g45.dtsi
> +++ b/arch/arm/boot/dts/at91sam9g45.dtsi
> @@ -1114,8 +1114,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi
> index 37cb81f457b5..a071fccb729b 100644
> --- a/arch/arm/boot/dts/at91sam9n12.dtsi
> +++ b/arch/arm/boot/dts/at91sam9n12.dtsi
> @@ -475,13 +475,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts
> index c43095c5cb5c..eb0c1e11fa4d 100644
> --- a/arch/arm/boot/dts/at91sam9n12ek.dts
> +++ b/arch/arm/boot/dts/at91sam9n12ek.dts
> @@ -134,9 +134,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port@0 {
> -						hlcdc_panel_output: endpoint@0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -246,13 +245,8 @@
>  		#size-cells = <0>;
>  		status = "okay";
>  
> -		port@0 {
> -			reg = <0>;
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint@0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> index 1629db9dd563..e243dff67a67 100644
> --- a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> @@ -23,13 +23,8 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9x5dm.dtsi b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> index 34c089fe0bc0..5aea8fd09ad6 100644
> --- a/arch/arm/boot/dts/at91sam9x5dm.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> @@ -29,9 +29,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port@0 {
> -						hlcdc_panel_output: endpoint@0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -80,12 +79,8 @@
>  		#size-cells = <0>;
>  		status = "disabled";
>  
> -		port@0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint@0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi
> index eae5e1ee9cd8..2c51042e1f6b 100644
> --- a/arch/arm/boot/dts/sama5d3.dtsi
> +++ b/arch/arm/boot/dts/sama5d3.dtsi
> @@ -239,8 +239,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/sama5d3_lcd.dtsi b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> index be7cfefc6c31..2d042d7ec531 100644
> --- a/arch/arm/boot/dts/sama5d3_lcd.dtsi
> +++ b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> @@ -23,13 +23,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi
> index 0cf9beddd556..90d7b64915ec 100644
> --- a/arch/arm/boot/dts/sama5d4.dtsi
> +++ b/arch/arm/boot/dts/sama5d4.dtsi
> @@ -333,13 +333,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  

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

* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 20:18   ` Boris Brezillon
  0 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 20:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue,  8 May 2018 08:59:25 -0500
Rob Herring <robh@kernel.org> wrote:

> Addresses for graph ports and endpoints are not necessary when
> there's only a single child. Fix the following warnings removing
> unnecessary addresses on OF graph nodes:
> 
> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller/port at 0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/isi at f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /panel/port at 0: graph node has single child node 'endpoint at 0', #address-cells/#size-cells are not necessary

Unfortunately that's not going to work, because the driver calls
drm_of_find_panel_or_bridge() with a positive port and endpoint,
not -1. While we could switch port arg from 0 to -1, that's not that
simple for the endpoint arg, because we don't know in advance how many
devices will be connected to the RGB/DPI port.

[1]https://elixir.bootlin.com/linux/v4.17-rc3/source/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c#L41

> 
> Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts | 15 ++++-----------
>  arch/arm/boot/dts/at91sam9g45.dtsi          |  2 --
>  arch/arm/boot/dts/at91sam9n12.dtsi          |  8 +-------
>  arch/arm/boot/dts/at91sam9n12ek.dts         | 14 ++++----------
>  arch/arm/boot/dts/at91sam9x5_lcd.dtsi       |  7 +------
>  arch/arm/boot/dts/at91sam9x5dm.dtsi         | 13 ++++---------
>  arch/arm/boot/dts/sama5d3.dtsi              |  2 --
>  arch/arm/boot/dts/sama5d3_lcd.dtsi          |  8 +-------
>  arch/arm/boot/dts/sama5d4.dtsi              |  8 +-------
>  9 files changed, 16 insertions(+), 61 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> index fe05aaa7ac87..72c3b077fb46 100644
> --- a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> +++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> @@ -49,9 +49,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port at 0 {
> -						hlcdc_panel_output: endpoint at 0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -144,16 +143,10 @@
>  		/* Actually Ampire 800480R2 */
>  		compatible = "foxlink,fl500wvr00-a0t", "simple-panel";
>  		backlight = <&backlight>;
> -		#address-cells = <1>;
> -		#size-cells = <0>;
>  		status = "okay";
>  
> -		port at 0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint at 0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi
> index 1ee25a475be8..36729e3f2899 100644
> --- a/arch/arm/boot/dts/at91sam9g45.dtsi
> +++ b/arch/arm/boot/dts/at91sam9g45.dtsi
> @@ -1114,8 +1114,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi
> index 37cb81f457b5..a071fccb729b 100644
> --- a/arch/arm/boot/dts/at91sam9n12.dtsi
> +++ b/arch/arm/boot/dts/at91sam9n12.dtsi
> @@ -475,13 +475,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts
> index c43095c5cb5c..eb0c1e11fa4d 100644
> --- a/arch/arm/boot/dts/at91sam9n12ek.dts
> +++ b/arch/arm/boot/dts/at91sam9n12ek.dts
> @@ -134,9 +134,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port at 0 {
> -						hlcdc_panel_output: endpoint at 0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -246,13 +245,8 @@
>  		#size-cells = <0>;
>  		status = "okay";
>  
> -		port at 0 {
> -			reg = <0>;
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint at 0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> index 1629db9dd563..e243dff67a67 100644
> --- a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> @@ -23,13 +23,8 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9x5dm.dtsi b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> index 34c089fe0bc0..5aea8fd09ad6 100644
> --- a/arch/arm/boot/dts/at91sam9x5dm.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> @@ -29,9 +29,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port at 0 {
> -						hlcdc_panel_output: endpoint at 0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -80,12 +79,8 @@
>  		#size-cells = <0>;
>  		status = "disabled";
>  
> -		port at 0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint at 0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi
> index eae5e1ee9cd8..2c51042e1f6b 100644
> --- a/arch/arm/boot/dts/sama5d3.dtsi
> +++ b/arch/arm/boot/dts/sama5d3.dtsi
> @@ -239,8 +239,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/sama5d3_lcd.dtsi b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> index be7cfefc6c31..2d042d7ec531 100644
> --- a/arch/arm/boot/dts/sama5d3_lcd.dtsi
> +++ b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> @@ -23,13 +23,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi
> index 0cf9beddd556..90d7b64915ec 100644
> --- a/arch/arm/boot/dts/sama5d4.dtsi
> +++ b/arch/arm/boot/dts/sama5d4.dtsi
> @@ -333,13 +333,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  

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

* Re: [PATCH] arm: dts: atmel: graph_child_address warning fixes
  2018-05-08 20:18   ` Boris Brezillon
@ 2018-05-08 20:41     ` Rob Herring
  -1 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 20:41 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: devicetree, Alexandre Belloni,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE

On Tue, May 8, 2018 at 3:18 PM, Boris Brezillon
<boris.brezillon@bootlin.com> wrote:
> On Tue,  8 May 2018 08:59:25 -0500
> Rob Herring <robh@kernel.org> wrote:
>
>> Addresses for graph ports and endpoints are not necessary when
>> there's only a single child. Fix the following warnings removing
>> unnecessary addresses on OF graph nodes:
>>
>> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
>> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller/port@0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
>> Warning (graph_child_address): /ahb/apb/isi@f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
>> Warning (graph_child_address): /panel/port@0: graph node has single child node 'endpoint@0', #address-cells/#size-cells are not necessary
>
> Unfortunately that's not going to work, because the driver calls
> drm_of_find_panel_or_bridge() with a positive port and endpoint,
> not -1. While we could switch port arg from 0 to -1, that's not that
> simple for the endpoint arg, because we don't know in advance how many
> devices will be connected to the RGB/DPI port.

0 and -1 are treated the same way in the graph code.

Ports should be separate data streams. Can the hlcdc have more than 1
data stream (I think I checked that)? If not, then more than 1 port
will never be needed. Likewise, a panel is pretty much never going to
have 2 ports (or endpoints). The hlcdc could have more than 1 endpoint
if you have multiple connections, but that's not what's defined. If
you have an 'endpoint' node, then having #address-cells/#size-cells is
wrong without a reg prop and unit-address.

Rob

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

* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 20:41     ` Rob Herring
  0 siblings, 0 replies; 40+ messages in thread
From: Rob Herring @ 2018-05-08 20:41 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, May 8, 2018 at 3:18 PM, Boris Brezillon
<boris.brezillon@bootlin.com> wrote:
> On Tue,  8 May 2018 08:59:25 -0500
> Rob Herring <robh@kernel.org> wrote:
>
>> Addresses for graph ports and endpoints are not necessary when
>> there's only a single child. Fix the following warnings removing
>> unnecessary addresses on OF graph nodes:
>>
>> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
>> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller/port at 0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
>> Warning (graph_child_address): /ahb/apb/isi at f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
>> Warning (graph_child_address): /panel/port at 0: graph node has single child node 'endpoint at 0', #address-cells/#size-cells are not necessary
>
> Unfortunately that's not going to work, because the driver calls
> drm_of_find_panel_or_bridge() with a positive port and endpoint,
> not -1. While we could switch port arg from 0 to -1, that's not that
> simple for the endpoint arg, because we don't know in advance how many
> devices will be connected to the RGB/DPI port.

0 and -1 are treated the same way in the graph code.

Ports should be separate data streams. Can the hlcdc have more than 1
data stream (I think I checked that)? If not, then more than 1 port
will never be needed. Likewise, a panel is pretty much never going to
have 2 ports (or endpoints). The hlcdc could have more than 1 endpoint
if you have multiple connections, but that's not what's defined. If
you have an 'endpoint' node, then having #address-cells/#size-cells is
wrong without a reg prop and unit-address.

Rob

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

* Re: [PATCH] arm: dts: atmel: graph_child_address warning fixes
  2018-05-08 20:18   ` Boris Brezillon
@ 2018-05-08 20:50     ` Boris Brezillon
  -1 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 20:50 UTC (permalink / raw)
  To: Rob Herring; +Cc: devicetree, Alexandre Belloni, linux-arm-kernel

On Tue, 8 May 2018 22:18:19 +0200
Boris Brezillon <boris.brezillon@bootlin.com> wrote:

> On Tue,  8 May 2018 08:59:25 -0500
> Rob Herring <robh@kernel.org> wrote:
> 
> > Addresses for graph ports and endpoints are not necessary when
> > there's only a single child. Fix the following warnings removing
> > unnecessary addresses on OF graph nodes:
> > 
> > Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> > Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller/port@0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> > Warning (graph_child_address): /ahb/apb/isi@f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> > Warning (graph_child_address): /panel/port@0: graph node has single child node 'endpoint@0', #address-cells/#size-cells are not necessary  
> 
> Unfortunately that's not going to work, because the driver calls
> drm_of_find_panel_or_bridge() with a positive port and endpoint,
> not -1. While we could switch port arg from 0 to -1, that's not that
> simple for the endpoint arg, because we don't know in advance how many
> devices will be connected to the RGB/DPI port.
> 
> [1]https://elixir.bootlin.com/linux/v4.17-rc3/source/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c#L41
> 

I can prepare patches containing the following changes, but I need to
test them first.

To be honest, I still don't see the problem with the "single child having
a reg" case. Sure, it's not required, but it's also not an invalid
representation. Also note that, depending on the board, we'll have to
define addresses in endpoints if there's more than one endpoint, which
IMO makes things even harder to follow, because in some cases endpoints
will be numbered and in the others they won't.

--->8---
diff --git a/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt b/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt
index 82f2acb3d374..bc01c431d624 100644
--- a/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt
+++ b/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt
@@ -7,13 +7,12 @@ Required properties:
  - compatible: value should be "atmel,hlcdc-display-controller"
  - pinctrl-names: the pin control state names. Should contain "default".
  - pinctrl-0: should contain the default pinctrl states.
- - #address-cells: should be set to 1.
- - #size-cells: should be set to 0.
 
 Required children nodes:
- Children nodes are encoding available output ports and their connections
- to external devices using the OF graph reprensentation (see ../graph.txt).
- At least one port node is required.
+ The port node represent the RGB/DPI output and can contain 0 to N endpoints
+ which encode connections to devices present on the RGB/DPI bus.
+ These connections are represented using the OF graph representation (see
+ ../graph.txt).
 
 Example:
 
@@ -28,16 +27,9 @@ Example:
                        compatible = "atmel,hlcdc-display-controller";
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
-                       #address-cells = <1>;
-                       #size-cells = <0>;
 
-                       port@0 {
-                               #address-cells = <1>;
-                               #size-cells = <0>;
-                               reg = <0>;
-
-                               hlcdc_panel_output: endpoint@0 {
-                                       reg = <0>;
+                       port {
+                               hlcdc_panel_output: endpoint {
                                        remote-endpoint = <&panel_input>;
                                };
                        };
diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c
index 8db51fb131db..0dc8f124a95e 100644
--- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c
+++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c
@@ -38,7 +38,7 @@ static int atmel_hlcdc_attach_endpoint(struct drm_device *dev, int endpoint)
        struct drm_bridge *bridge;
        int ret;
 
-       ret = drm_of_find_panel_or_bridge(dev->dev->of_node, 0, endpoint,
+       ret = drm_of_find_panel_or_bridge(dev->dev->of_node, -1, endpoint,
                                          &panel, &bridge);
        if (ret)
                return ret;
@@ -86,5 +86,10 @@ int atmel_hlcdc_create_outputs(struct drm_device *dev)
        if (ret == -ENODEV && endpoint)
                return 0;
 
-       return ret;
+       /*
+        * If there's only one endpoint, the reg field will not be specified
+        * and no specific ID will be attached to this endpoint. Try with
+        * endpoint = -1 to handle this case.
+        */
+       return atmel_hlcdc_attach_endpoint(dev, -1);
 }

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

* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 20:50     ` Boris Brezillon
  0 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 20:50 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 8 May 2018 22:18:19 +0200
Boris Brezillon <boris.brezillon@bootlin.com> wrote:

> On Tue,  8 May 2018 08:59:25 -0500
> Rob Herring <robh@kernel.org> wrote:
> 
> > Addresses for graph ports and endpoints are not necessary when
> > there's only a single child. Fix the following warnings removing
> > unnecessary addresses on OF graph nodes:
> > 
> > Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
> > Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller/port at 0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> > Warning (graph_child_address): /ahb/apb/isi at f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> > Warning (graph_child_address): /panel/port at 0: graph node has single child node 'endpoint at 0', #address-cells/#size-cells are not necessary  
> 
> Unfortunately that's not going to work, because the driver calls
> drm_of_find_panel_or_bridge() with a positive port and endpoint,
> not -1. While we could switch port arg from 0 to -1, that's not that
> simple for the endpoint arg, because we don't know in advance how many
> devices will be connected to the RGB/DPI port.
> 
> [1]https://elixir.bootlin.com/linux/v4.17-rc3/source/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c#L41
> 

I can prepare patches containing the following changes, but I need to
test them first.

To be honest, I still don't see the problem with the "single child having
a reg" case. Sure, it's not required, but it's also not an invalid
representation. Also note that, depending on the board, we'll have to
define addresses in endpoints if there's more than one endpoint, which
IMO makes things even harder to follow, because in some cases endpoints
will be numbered and in the others they won't.

--->8---
diff --git a/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt b/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt
index 82f2acb3d374..bc01c431d624 100644
--- a/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt
+++ b/Documentation/devicetree/bindings/display/atmel/hlcdc-dc.txt
@@ -7,13 +7,12 @@ Required properties:
  - compatible: value should be "atmel,hlcdc-display-controller"
  - pinctrl-names: the pin control state names. Should contain "default".
  - pinctrl-0: should contain the default pinctrl states.
- - #address-cells: should be set to 1.
- - #size-cells: should be set to 0.
 
 Required children nodes:
- Children nodes are encoding available output ports and their connections
- to external devices using the OF graph reprensentation (see ../graph.txt).
- At least one port node is required.
+ The port node represent the RGB/DPI output and can contain 0 to N endpoints
+ which encode connections to devices present on the RGB/DPI bus.
+ These connections are represented using the OF graph representation (see
+ ../graph.txt).
 
 Example:
 
@@ -28,16 +27,9 @@ Example:
                        compatible = "atmel,hlcdc-display-controller";
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
-                       #address-cells = <1>;
-                       #size-cells = <0>;
 
-                       port at 0 {
-                               #address-cells = <1>;
-                               #size-cells = <0>;
-                               reg = <0>;
-
-                               hlcdc_panel_output: endpoint at 0 {
-                                       reg = <0>;
+                       port {
+                               hlcdc_panel_output: endpoint {
                                        remote-endpoint = <&panel_input>;
                                };
                        };
diff --git a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c
index 8db51fb131db..0dc8f124a95e 100644
--- a/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c
+++ b/drivers/gpu/drm/atmel-hlcdc/atmel_hlcdc_output.c
@@ -38,7 +38,7 @@ static int atmel_hlcdc_attach_endpoint(struct drm_device *dev, int endpoint)
        struct drm_bridge *bridge;
        int ret;
 
-       ret = drm_of_find_panel_or_bridge(dev->dev->of_node, 0, endpoint,
+       ret = drm_of_find_panel_or_bridge(dev->dev->of_node, -1, endpoint,
                                          &panel, &bridge);
        if (ret)
                return ret;
@@ -86,5 +86,10 @@ int atmel_hlcdc_create_outputs(struct drm_device *dev)
        if (ret == -ENODEV && endpoint)
                return 0;
 
-       return ret;
+       /*
+        * If there's only one endpoint, the reg field will not be specified
+        * and no specific ID will be attached to this endpoint. Try with
+        * endpoint = -1 to handle this case.
+        */
+       return atmel_hlcdc_attach_endpoint(dev, -1);
 }

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

* Re: [PATCH] arm: dts: atmel: graph_child_address warning fixes
  2018-05-08 20:41     ` Rob Herring
@ 2018-05-08 21:00       ` Boris Brezillon
  -1 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 21:00 UTC (permalink / raw)
  To: Rob Herring
  Cc: devicetree, Alexandre Belloni,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE

On Tue, 8 May 2018 15:41:51 -0500
Rob Herring <robh@kernel.org> wrote:

> On Tue, May 8, 2018 at 3:18 PM, Boris Brezillon
> <boris.brezillon@bootlin.com> wrote:
> > On Tue,  8 May 2018 08:59:25 -0500
> > Rob Herring <robh@kernel.org> wrote:
> >  
> >> Addresses for graph ports and endpoints are not necessary when
> >> there's only a single child. Fix the following warnings removing
> >> unnecessary addresses on OF graph nodes:
> >>
> >> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> >> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller/port@0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> >> Warning (graph_child_address): /ahb/apb/isi@f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> >> Warning (graph_child_address): /panel/port@0: graph node has single child node 'endpoint@0', #address-cells/#size-cells are not necessary  
> >
> > Unfortunately that's not going to work, because the driver calls
> > drm_of_find_panel_or_bridge() with a positive port and endpoint,
> > not -1. While we could switch port arg from 0 to -1, that's not that
> > simple for the endpoint arg, because we don't know in advance how many
> > devices will be connected to the RGB/DPI port.  
> 
> 0 and -1 are treated the same way in the graph code.

Oh, you're right, I didn't check the of_graph_parse_endpoint() code.

> 
> Ports should be separate data streams. Can the hlcdc have more than 1
> data stream (I think I checked that)?

Yes, there's only one port.

> If not, then more than 1 port
> will never be needed. Likewise, a panel is pretty much never going to
> have 2 ports (or endpoints).

True.

> The hlcdc could have more than 1 endpoint
> if you have multiple connections, but that's not what's defined. If
> you have an 'endpoint' node, then having #address-cells/#size-cells is
> wrong without a reg prop and unit-address.

The reg and unit-address were present in the endpoint nodes (maybe not
in all dts though). AFAICT, the problem is more that the port only has a
single child, and dtc complains that such nodes should not have a reg
prop.

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

* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 21:00       ` Boris Brezillon
  0 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 21:00 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 8 May 2018 15:41:51 -0500
Rob Herring <robh@kernel.org> wrote:

> On Tue, May 8, 2018 at 3:18 PM, Boris Brezillon
> <boris.brezillon@bootlin.com> wrote:
> > On Tue,  8 May 2018 08:59:25 -0500
> > Rob Herring <robh@kernel.org> wrote:
> >  
> >> Addresses for graph ports and endpoints are not necessary when
> >> there's only a single child. Fix the following warnings removing
> >> unnecessary addresses on OF graph nodes:
> >>
> >> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
> >> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller/port at 0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> >> Warning (graph_child_address): /ahb/apb/isi at f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> >> Warning (graph_child_address): /panel/port at 0: graph node has single child node 'endpoint at 0', #address-cells/#size-cells are not necessary  
> >
> > Unfortunately that's not going to work, because the driver calls
> > drm_of_find_panel_or_bridge() with a positive port and endpoint,
> > not -1. While we could switch port arg from 0 to -1, that's not that
> > simple for the endpoint arg, because we don't know in advance how many
> > devices will be connected to the RGB/DPI port.  
> 
> 0 and -1 are treated the same way in the graph code.

Oh, you're right, I didn't check the of_graph_parse_endpoint() code.

> 
> Ports should be separate data streams. Can the hlcdc have more than 1
> data stream (I think I checked that)?

Yes, there's only one port.

> If not, then more than 1 port
> will never be needed. Likewise, a panel is pretty much never going to
> have 2 ports (or endpoints).

True.

> The hlcdc could have more than 1 endpoint
> if you have multiple connections, but that's not what's defined. If
> you have an 'endpoint' node, then having #address-cells/#size-cells is
> wrong without a reg prop and unit-address.

The reg and unit-address were present in the endpoint nodes (maybe not
in all dts though). AFAICT, the problem is more that the port only has a
single child, and dtc complains that such nodes should not have a reg
prop.

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

* Re: [PATCH] arm: dts: atmel: graph_child_address warning fixes
  2018-05-08 13:59 ` Rob Herring
@ 2018-05-08 21:04   ` Boris Brezillon
  -1 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 21:04 UTC (permalink / raw)
  To: Rob Herring; +Cc: devicetree, Alexandre Belloni, linux-arm-kernel

On Tue,  8 May 2018 08:59:25 -0500
Rob Herring <robh@kernel.org> wrote:

> Addresses for graph ports and endpoints are not necessary when
> there's only a single child. Fix the following warnings removing
> unnecessary addresses on OF graph nodes:
> 
> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/hlcdc@f0030000/hlcdc-display-controller/port@0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/isi@f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /panel/port@0: graph node has single child node 'endpoint@0', #address-cells/#size-cells are not necessary
> 
> Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts | 15 ++++-----------
>  arch/arm/boot/dts/at91sam9g45.dtsi          |  2 --
>  arch/arm/boot/dts/at91sam9n12.dtsi          |  8 +-------
>  arch/arm/boot/dts/at91sam9n12ek.dts         | 14 ++++----------
>  arch/arm/boot/dts/at91sam9x5_lcd.dtsi       |  7 +------
>  arch/arm/boot/dts/at91sam9x5dm.dtsi         | 13 ++++---------
>  arch/arm/boot/dts/sama5d3.dtsi              |  2 --
>  arch/arm/boot/dts/sama5d3_lcd.dtsi          |  8 +-------
>  arch/arm/boot/dts/sama5d4.dtsi              |  8 +-------

For the hlcdc changes

Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>

I'll update the DT bindinds doc accordingly.

Thanks,

Boris

>  9 files changed, 16 insertions(+), 61 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> index fe05aaa7ac87..72c3b077fb46 100644
> --- a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> +++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> @@ -49,9 +49,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port@0 {
> -						hlcdc_panel_output: endpoint@0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -144,16 +143,10 @@
>  		/* Actually Ampire 800480R2 */
>  		compatible = "foxlink,fl500wvr00-a0t", "simple-panel";
>  		backlight = <&backlight>;
> -		#address-cells = <1>;
> -		#size-cells = <0>;
>  		status = "okay";
>  
> -		port@0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint@0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi
> index 1ee25a475be8..36729e3f2899 100644
> --- a/arch/arm/boot/dts/at91sam9g45.dtsi
> +++ b/arch/arm/boot/dts/at91sam9g45.dtsi
> @@ -1114,8 +1114,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi
> index 37cb81f457b5..a071fccb729b 100644
> --- a/arch/arm/boot/dts/at91sam9n12.dtsi
> +++ b/arch/arm/boot/dts/at91sam9n12.dtsi
> @@ -475,13 +475,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts
> index c43095c5cb5c..eb0c1e11fa4d 100644
> --- a/arch/arm/boot/dts/at91sam9n12ek.dts
> +++ b/arch/arm/boot/dts/at91sam9n12ek.dts
> @@ -134,9 +134,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port@0 {
> -						hlcdc_panel_output: endpoint@0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -246,13 +245,8 @@
>  		#size-cells = <0>;
>  		status = "okay";
>  
> -		port@0 {
> -			reg = <0>;
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint@0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> index 1629db9dd563..e243dff67a67 100644
> --- a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> @@ -23,13 +23,8 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9x5dm.dtsi b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> index 34c089fe0bc0..5aea8fd09ad6 100644
> --- a/arch/arm/boot/dts/at91sam9x5dm.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> @@ -29,9 +29,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port@0 {
> -						hlcdc_panel_output: endpoint@0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -80,12 +79,8 @@
>  		#size-cells = <0>;
>  		status = "disabled";
>  
> -		port@0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint@0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi
> index eae5e1ee9cd8..2c51042e1f6b 100644
> --- a/arch/arm/boot/dts/sama5d3.dtsi
> +++ b/arch/arm/boot/dts/sama5d3.dtsi
> @@ -239,8 +239,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/sama5d3_lcd.dtsi b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> index be7cfefc6c31..2d042d7ec531 100644
> --- a/arch/arm/boot/dts/sama5d3_lcd.dtsi
> +++ b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> @@ -23,13 +23,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi
> index 0cf9beddd556..90d7b64915ec 100644
> --- a/arch/arm/boot/dts/sama5d4.dtsi
> +++ b/arch/arm/boot/dts/sama5d4.dtsi
> @@ -333,13 +333,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port@0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  

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

* [PATCH] arm: dts: atmel: graph_child_address warning fixes
@ 2018-05-08 21:04   ` Boris Brezillon
  0 siblings, 0 replies; 40+ messages in thread
From: Boris Brezillon @ 2018-05-08 21:04 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue,  8 May 2018 08:59:25 -0500
Rob Herring <robh@kernel.org> wrote:

> Addresses for graph ports and endpoints are not necessary when
> there's only a single child. Fix the following warnings removing
> unnecessary addresses on OF graph nodes:
> 
> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/hlcdc at f0030000/hlcdc-display-controller/port at 0: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /ahb/apb/isi at f0034000/port: graph node has single child node 'endpoint', #address-cells/#size-cells are not necessary
> Warning (graph_child_address): /panel/port at 0: graph node has single child node 'endpoint at 0', #address-cells/#size-cells are not necessary
> 
> Cc: Nicolas Ferre <nicolas.ferre@microchip.com>
> Cc: Alexandre Belloni <alexandre.belloni@bootlin.com>
> Signed-off-by: Rob Herring <robh@kernel.org>
> ---
>  arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts | 15 ++++-----------
>  arch/arm/boot/dts/at91sam9g45.dtsi          |  2 --
>  arch/arm/boot/dts/at91sam9n12.dtsi          |  8 +-------
>  arch/arm/boot/dts/at91sam9n12ek.dts         | 14 ++++----------
>  arch/arm/boot/dts/at91sam9x5_lcd.dtsi       |  7 +------
>  arch/arm/boot/dts/at91sam9x5dm.dtsi         | 13 ++++---------
>  arch/arm/boot/dts/sama5d3.dtsi              |  2 --
>  arch/arm/boot/dts/sama5d3_lcd.dtsi          |  8 +-------
>  arch/arm/boot/dts/sama5d4.dtsi              |  8 +-------

For the hlcdc changes

Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>

I'll update the DT bindinds doc accordingly.

Thanks,

Boris

>  9 files changed, 16 insertions(+), 61 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> index fe05aaa7ac87..72c3b077fb46 100644
> --- a/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> +++ b/arch/arm/boot/dts/at91-sama5d4_ma5d4evk.dts
> @@ -49,9 +49,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port at 0 {
> -						hlcdc_panel_output: endpoint at 0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -144,16 +143,10 @@
>  		/* Actually Ampire 800480R2 */
>  		compatible = "foxlink,fl500wvr00-a0t", "simple-panel";
>  		backlight = <&backlight>;
> -		#address-cells = <1>;
> -		#size-cells = <0>;
>  		status = "okay";
>  
> -		port at 0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint at 0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9g45.dtsi b/arch/arm/boot/dts/at91sam9g45.dtsi
> index 1ee25a475be8..36729e3f2899 100644
> --- a/arch/arm/boot/dts/at91sam9g45.dtsi
> +++ b/arch/arm/boot/dts/at91sam9g45.dtsi
> @@ -1114,8 +1114,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi
> index 37cb81f457b5..a071fccb729b 100644
> --- a/arch/arm/boot/dts/at91sam9n12.dtsi
> +++ b/arch/arm/boot/dts/at91sam9n12.dtsi
> @@ -475,13 +475,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts
> index c43095c5cb5c..eb0c1e11fa4d 100644
> --- a/arch/arm/boot/dts/at91sam9n12ek.dts
> +++ b/arch/arm/boot/dts/at91sam9n12ek.dts
> @@ -134,9 +134,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port at 0 {
> -						hlcdc_panel_output: endpoint at 0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -246,13 +245,8 @@
>  		#size-cells = <0>;
>  		status = "okay";
>  
> -		port at 0 {
> -			reg = <0>;
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint at 0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> index 1629db9dd563..e243dff67a67 100644
> --- a/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5_lcd.dtsi
> @@ -23,13 +23,8 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/at91sam9x5dm.dtsi b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> index 34c089fe0bc0..5aea8fd09ad6 100644
> --- a/arch/arm/boot/dts/at91sam9x5dm.dtsi
> +++ b/arch/arm/boot/dts/at91sam9x5dm.dtsi
> @@ -29,9 +29,8 @@
>  					pinctrl-names = "default";
>  					pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>;
>  
> -					port at 0 {
> -						hlcdc_panel_output: endpoint at 0 {
> -							reg = <0>;
> +					port {
> +						hlcdc_panel_output: endpoint {
>  							remote-endpoint = <&panel_input>;
>  						};
>  					};
> @@ -80,12 +79,8 @@
>  		#size-cells = <0>;
>  		status = "disabled";
>  
> -		port at 0 {
> -			#address-cells = <1>;
> -			#size-cells = <0>;
> -
> -			panel_input: endpoint at 0 {
> -				reg = <0>;
> +		port {
> +			panel_input: endpoint {
>  				remote-endpoint = <&hlcdc_panel_output>;
>  			};
>  		};
> diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi
> index eae5e1ee9cd8..2c51042e1f6b 100644
> --- a/arch/arm/boot/dts/sama5d3.dtsi
> +++ b/arch/arm/boot/dts/sama5d3.dtsi
> @@ -239,8 +239,6 @@
>  				clock-names = "isi_clk";
>  				status = "disabled";
>  				port {
> -					#address-cells = <1>;
> -					#size-cells = <0>;
>  				};
>  			};
>  
> diff --git a/arch/arm/boot/dts/sama5d3_lcd.dtsi b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> index be7cfefc6c31..2d042d7ec531 100644
> --- a/arch/arm/boot/dts/sama5d3_lcd.dtsi
> +++ b/arch/arm/boot/dts/sama5d3_lcd.dtsi
> @@ -23,13 +23,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  
> diff --git a/arch/arm/boot/dts/sama5d4.dtsi b/arch/arm/boot/dts/sama5d4.dtsi
> index 0cf9beddd556..90d7b64915ec 100644
> --- a/arch/arm/boot/dts/sama5d4.dtsi
> +++ b/arch/arm/boot/dts/sama5d4.dtsi
> @@ -333,13 +333,7 @@
>  
>  				hlcdc-display-controller {
>  					compatible = "atmel,hlcdc-display-controller";
> -					#address-cells = <1>;
> -					#size-cells = <0>;
> -
> -					port at 0 {
> -						#address-cells = <1>;
> -						#size-cells = <0>;
> -						reg = <0>;
> +					port {
>  					};
>  				};
>  

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

* Re: [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
  2018-05-08 15:22       ` Rob Herring
@ 2018-05-11  8:35         ` Shawn Guo
  -1 siblings, 0 replies; 40+ messages in thread
From: Shawn Guo @ 2018-05-11  8:35 UTC (permalink / raw)
  To: Rob Herring
  Cc: open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS,
	Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	Fabio Estevam,
	moderated list:ARM/FREESCALE IMX / MXC ARM ARCHITECTURE

On Tue, May 08, 2018 at 10:22:29AM -0500, Rob Herring wrote:
> On Tue, May 8, 2018 at 9:06 AM, Fabio Estevam <festevam@gmail.com> wrote:
> > Hi Rob,
> >
> > On Tue, May 8, 2018 at 10:59 AM, Rob Herring <robh@kernel.org> wrote:
> >
> >> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> >> index 18b65052553d..654cf2c9b073 100644
> >> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> >> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> >> @@ -379,9 +379,6 @@
> >>                 powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
> >>
> >>                 port {
> >> -                       #address-cells = <1>;
> >> -                       #size-cells = <0>;
> >> -
> >>                         ov5640_to_mipi_csi2: endpoint {
> >>                                 remote-endpoint = <&mipi_csi2_in>;
> >>                                 clock-lanes = <0>;
> >> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> >> index f019f9900369..c2de2250718c 100644
> >> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> >> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> >> @@ -294,9 +294,6 @@
> >>                 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
> >>
> >>                 port {
> >> -                       #address-cells = <1>;
> >> -                       #size-cells = <0>;
> >> -
> >>                         ov5640_to_mipi_csi2: endpoint {
> >
> > These two changes seem unrelated and I have already fixed them at:
> > https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?h=imx/dt&id=1b215c73d1586e6f2586e9a6d6dfaf49cc142b3a
> 
> Right. Will drop them.

Applied.  The git am command dropped them automatically.  Thanks.

Shawn

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

* [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names
@ 2018-05-11  8:35         ` Shawn Guo
  0 siblings, 0 replies; 40+ messages in thread
From: Shawn Guo @ 2018-05-11  8:35 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, May 08, 2018 at 10:22:29AM -0500, Rob Herring wrote:
> On Tue, May 8, 2018 at 9:06 AM, Fabio Estevam <festevam@gmail.com> wrote:
> > Hi Rob,
> >
> > On Tue, May 8, 2018 at 10:59 AM, Rob Herring <robh@kernel.org> wrote:
> >
> >> diff --git a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> >> index 18b65052553d..654cf2c9b073 100644
> >> --- a/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> >> +++ b/arch/arm/boot/dts/imx6qdl-sabrelite.dtsi
> >> @@ -379,9 +379,6 @@
> >>                 powerdown-gpios = <&gpio6 9 GPIO_ACTIVE_HIGH>; /* NANDF_WP_B */
> >>
> >>                 port {
> >> -                       #address-cells = <1>;
> >> -                       #size-cells = <0>;
> >> -
> >>                         ov5640_to_mipi_csi2: endpoint {
> >>                                 remote-endpoint = <&mipi_csi2_in>;
> >>                                 clock-lanes = <0>;
> >> diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> >> index f019f9900369..c2de2250718c 100644
> >> --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> >> +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi
> >> @@ -294,9 +294,6 @@
> >>                 reset-gpios = <&gpio1 20 GPIO_ACTIVE_LOW>;
> >>
> >>                 port {
> >> -                       #address-cells = <1>;
> >> -                       #size-cells = <0>;
> >> -
> >>                         ov5640_to_mipi_csi2: endpoint {
> >
> > These two changes seem unrelated and I have already fixed them at:
> > https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git/commit/?h=imx/dt&id=1b215c73d1586e6f2586e9a6d6dfaf49cc142b3a
> 
> Right. Will drop them.

Applied.  The git am command dropped them automatically.  Thanks.

Shawn

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

* Re: [PATCH] arm: dts: imx53: Fix LDB OF graph warning
  2018-05-08 14:16     ` Philipp Zabel
@ 2018-05-11  8:47       ` Shawn Guo
  -1 siblings, 0 replies; 40+ messages in thread
From: Shawn Guo @ 2018-05-11  8:47 UTC (permalink / raw)
  To: Philipp Zabel
  Cc: Rob Herring, devicetree, Sascha Hauer, Pengutronix Kernel Team,
	Fabio Estevam, linux-arm-kernel

On Tue, May 08, 2018 at 04:16:37PM +0200, Philipp Zabel wrote:
> On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
> > Single child nodes in OF graph don't need an address and now dtc will
> > warn about this:
> > 
> > Warning (graph_child_address): /soc/aips@50000000/ldb@53fa8008/lvds-channel@0: graph node has single child node 'port@0', #address-cells/#size-cells are not necessary
> > 
> > Since the LDB should always have an output port, fix the warning by
> > adding the output port, 2, to the DT.
> > 
> > Cc: Shawn Guo <shawnguo@kernel.org>
> > Cc: Sascha Hauer <s.hauer@pengutronix.de>
> > Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> > Cc: Fabio Estevam <fabio.estevam@nxp.com>
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > ---
> >  arch/arm/boot/dts/imx53.dtsi | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> > 
> > diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
> > index 7d647d043f52..1cf2fc9d0a58 100644
> > --- a/arch/arm/boot/dts/imx53.dtsi
> > +++ b/arch/arm/boot/dts/imx53.dtsi
> > @@ -488,6 +488,10 @@
> >  							remote-endpoint = <&ipu_di0_lvds0>;
> >  						};
> >  					};
> > +
> > +					port@2 {
> > +						reg = <2>;
> > +					};
> 
> Now that the reg property of port@2 is added in the .dtsi, it could be
> removed from the one .dts files that use it:
> 
> ----------8<----------
> --- a/arch/arm/boot/dts/imx53-ppd.dts
> +++ b/arch/arm/boot/dts/imx53-ppd.dts
> @@ -559,8 +559,6 @@
>                 status = "okay";
>  
>                 port@2 {
> -                       reg = <2>;
> -
>                         lvds0_out: endpoint {
>                                 remote-endpoint = <&panel_in_lvds0>;
>                         };

I incorporate the change and applied patch.  Thanks.

Shawn

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

* [PATCH] arm: dts: imx53: Fix LDB OF graph warning
@ 2018-05-11  8:47       ` Shawn Guo
  0 siblings, 0 replies; 40+ messages in thread
From: Shawn Guo @ 2018-05-11  8:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, May 08, 2018 at 04:16:37PM +0200, Philipp Zabel wrote:
> On Tue, 2018-05-08 at 08:59 -0500, Rob Herring wrote:
> > Single child nodes in OF graph don't need an address and now dtc will
> > warn about this:
> > 
> > Warning (graph_child_address): /soc/aips at 50000000/ldb at 53fa8008/lvds-channel at 0: graph node has single child node 'port at 0', #address-cells/#size-cells are not necessary
> > 
> > Since the LDB should always have an output port, fix the warning by
> > adding the output port, 2, to the DT.
> > 
> > Cc: Shawn Guo <shawnguo@kernel.org>
> > Cc: Sascha Hauer <s.hauer@pengutronix.de>
> > Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
> > Cc: Fabio Estevam <fabio.estevam@nxp.com>
> > Signed-off-by: Rob Herring <robh@kernel.org>
> > ---
> >  arch/arm/boot/dts/imx53.dtsi | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> > 
> > diff --git a/arch/arm/boot/dts/imx53.dtsi b/arch/arm/boot/dts/imx53.dtsi
> > index 7d647d043f52..1cf2fc9d0a58 100644
> > --- a/arch/arm/boot/dts/imx53.dtsi
> > +++ b/arch/arm/boot/dts/imx53.dtsi
> > @@ -488,6 +488,10 @@
> >  							remote-endpoint = <&ipu_di0_lvds0>;
> >  						};
> >  					};
> > +
> > +					port at 2 {
> > +						reg = <2>;
> > +					};
> 
> Now that the reg property of port at 2 is added in the .dtsi, it could be
> removed from the one .dts files that use it:
> 
> ----------8<----------
> --- a/arch/arm/boot/dts/imx53-ppd.dts
> +++ b/arch/arm/boot/dts/imx53-ppd.dts
> @@ -559,8 +559,6 @@
>                 status = "okay";
>  
>                 port at 2 {
> -                       reg = <2>;
> -
>                         lvds0_out: endpoint {
>                                 remote-endpoint = <&panel_in_lvds0>;
>                         };

I incorporate the change and applied patch.  Thanks.

Shawn

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

* Re: [PATCH] arm: dts: omap: fix OF graph in omap3-devkit8000
  2018-05-08 13:59   ` Rob Herring
@ 2018-05-15 18:11     ` Tony Lindgren
  -1 siblings, 0 replies; 40+ messages in thread
From: Tony Lindgren @ 2018-05-15 18:11 UTC (permalink / raw)
  To: Rob Herring; +Cc: devicetree, Benoît Cousson, linux-arm-kernel

* Rob Herring <robh@kernel.org> [180508 07:01]:
> omap3-devkit8000-common.dtsi defines a graph connection for DVI, but
> then omap3-devkit8000-lcd-common.dtsi overrides that with a graph
> connection for the LCD as the same output signals are used. This
> leaves an incomplete graph as the TFP410 output has only half a
> connection. The result is the following warning:
> 
> arch/arm/boot/dts/omap3-devkit8000-lcd70.dtb: Warning (graph_endpoint): /encoder0/ports/port@0/endpoint: graph connection to node '/ocp@68000000/dss@48050000/port/endpoint' is not bidirectional
> 
> Fix this by defining multiple endpoints which is the correct way to show
> a 1 to many connection.

Applying into omap-for-v4.18/dt-fixes thanks.

Tony

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

* [PATCH] arm: dts: omap: fix OF graph in omap3-devkit8000
@ 2018-05-15 18:11     ` Tony Lindgren
  0 siblings, 0 replies; 40+ messages in thread
From: Tony Lindgren @ 2018-05-15 18:11 UTC (permalink / raw)
  To: linux-arm-kernel

* Rob Herring <robh@kernel.org> [180508 07:01]:
> omap3-devkit8000-common.dtsi defines a graph connection for DVI, but
> then omap3-devkit8000-lcd-common.dtsi overrides that with a graph
> connection for the LCD as the same output signals are used. This
> leaves an incomplete graph as the TFP410 output has only half a
> connection. The result is the following warning:
> 
> arch/arm/boot/dts/omap3-devkit8000-lcd70.dtb: Warning (graph_endpoint): /encoder0/ports/port at 0/endpoint: graph connection to node '/ocp at 68000000/dss at 48050000/port/endpoint' is not bidirectional
> 
> Fix this by defining multiple endpoints which is the correct way to show
> a 1 to many connection.

Applying into omap-for-v4.18/dt-fixes thanks.

Tony

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

* Re: [PATCH] arm: dts: omap: fix OMAP3 CM-T3x OF graph video connectors
  2018-05-08 13:59   ` Rob Herring
@ 2018-05-15 18:11     ` Tony Lindgren
  -1 siblings, 0 replies; 40+ messages in thread
From: Tony Lindgren @ 2018-05-15 18:11 UTC (permalink / raw)
  To: Rob Herring; +Cc: devicetree, Benoît Cousson, linux-arm-kernel

* Rob Herring <robh@kernel.org> [180508 07:01]:
> The OMAP3 CM-T3x based boards define 2 /connector nodes for S-Video and
> DVI output. However, since they have the same node name, the S-Video
> connector overwritten. This leaves a dangling graph connection which
> gives the following warning:
> 
> arch/arm/boot/dts/omap3-sbc-t3517.dtb: Warning (graph_endpoint): /ocp@68000000/dss@48050000/encoder@48050c00/port/endpoint: graph connection to node '/connector/port/endpoint' is not bidirectional
> 
> Fix this by renaming the nodes to s-video-connector and dvi-connector.

Applying this too into omap-for-v4.18/dt-fixes.

Regards,

Tony

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

* [PATCH] arm: dts: omap: fix OMAP3 CM-T3x OF graph video connectors
@ 2018-05-15 18:11     ` Tony Lindgren
  0 siblings, 0 replies; 40+ messages in thread
From: Tony Lindgren @ 2018-05-15 18:11 UTC (permalink / raw)
  To: linux-arm-kernel

* Rob Herring <robh@kernel.org> [180508 07:01]:
> The OMAP3 CM-T3x based boards define 2 /connector nodes for S-Video and
> DVI output. However, since they have the same node name, the S-Video
> connector overwritten. This leaves a dangling graph connection which
> gives the following warning:
> 
> arch/arm/boot/dts/omap3-sbc-t3517.dtb: Warning (graph_endpoint): /ocp at 68000000/dss at 48050000/encoder at 48050c00/port/endpoint: graph connection to node '/connector/port/endpoint' is not bidirectional
> 
> Fix this by renaming the nodes to s-video-connector and dvi-connector.

Applying this too into omap-for-v4.18/dt-fixes.

Regards,

Tony

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

end of thread, other threads:[~2018-05-15 18:11 UTC | newest]

Thread overview: 40+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-08 13:59 [PATCH] arm: dts: atmel: graph_child_address warning fixes Rob Herring
2018-05-08 13:59 ` Rob Herring
2018-05-08 13:59 ` [PATCH] arm: dts: imx: fix IPU OF graph endpoint node names Rob Herring
2018-05-08 13:59   ` Rob Herring
2018-05-08 14:06   ` Fabio Estevam
2018-05-08 14:06     ` Fabio Estevam
2018-05-08 15:22     ` Rob Herring
2018-05-08 15:22       ` Rob Herring
2018-05-11  8:35       ` Shawn Guo
2018-05-11  8:35         ` Shawn Guo
2018-05-08 14:19   ` Philipp Zabel
2018-05-08 14:19     ` Philipp Zabel
2018-05-08 15:26     ` Rob Herring
2018-05-08 15:26       ` Rob Herring
2018-05-08 13:59 ` [PATCH] arm: dts: imx53: Fix LDB OF graph warning Rob Herring
2018-05-08 13:59   ` Rob Herring
2018-05-08 14:16   ` Philipp Zabel
2018-05-08 14:16     ` Philipp Zabel
2018-05-11  8:47     ` Shawn Guo
2018-05-11  8:47       ` Shawn Guo
2018-05-08 13:59 ` [PATCH] arm: dts: imx7: Fix error in coresight TPIU graph connection Rob Herring
2018-05-08 13:59   ` Rob Herring
2018-05-08 13:59 ` [PATCH] arm: dts: omap: fix OF graph in omap3-devkit8000 Rob Herring
2018-05-08 13:59   ` Rob Herring
2018-05-15 18:11   ` Tony Lindgren
2018-05-15 18:11     ` Tony Lindgren
2018-05-08 13:59 ` [PATCH] arm: dts: omap: fix OMAP3 CM-T3x OF graph video connectors Rob Herring
2018-05-08 13:59   ` Rob Herring
2018-05-15 18:11   ` Tony Lindgren
2018-05-15 18:11     ` Tony Lindgren
2018-05-08 20:18 ` [PATCH] arm: dts: atmel: graph_child_address warning fixes Boris Brezillon
2018-05-08 20:18   ` Boris Brezillon
2018-05-08 20:41   ` Rob Herring
2018-05-08 20:41     ` Rob Herring
2018-05-08 21:00     ` Boris Brezillon
2018-05-08 21:00       ` Boris Brezillon
2018-05-08 20:50   ` Boris Brezillon
2018-05-08 20:50     ` Boris Brezillon
2018-05-08 21:04 ` Boris Brezillon
2018-05-08 21:04   ` Boris Brezillon

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.