linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl
@ 2022-07-19  5:50 Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 1/7] dt-bindings: power: imx8mp-power: add HDMI HDCP/HRV Peng Fan (OSS)
                   ` (6 more replies)
  0 siblings, 7 replies; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

V3:
 Per DT maitainer, add a new patch to clean up minItems, see patch 2

V2:
 - Add A-b from DT maintainer for patch 1
 - Per DT maintainer, I added description for items. To
 make it consistent, I also added description to i.MX8MM.
 - Per Adam, change VPU H1/h1 to VC8000E/vc8000e in the patchset.

This patchset is to add more blk ctrl support for i.MX8MP
 - Add HDMI HDCP/HRV BLK CTRL support
 - Add VPU BLK CTRL support
 - Add PGC VPU node which supplies power domain for VPU BLK
This patchset is based on:
https://lore.kernel.org/all/20220708085632.1918323-1-peng.fan@oss.nxp.com/

repo: https://github.com/MrVan/linux/tree/imx8mp-blk-ctrl

Peng Fan (7):
  dt-bindings: power: imx8mp-power: add HDMI HDCP/HRV
  dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl
  dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV
  soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl
  arm64: dts: imx8mp: add vpu pgc nodes
  arm64: dts: imx8mp: add VPU blk ctrl node

 .../soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml      | 92 ++++++++++++++++---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi     | 45 +++++++++
 drivers/soc/imx/imx8m-blk-ctrl.c              | 43 +++++++++
 drivers/soc/imx/imx8mp-blk-ctrl.c             | 30 ++++++
 include/dt-bindings/power/imx8mp-power.h      |  6 ++
 5 files changed, 205 insertions(+), 11 deletions(-)

-- 
2.25.1


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

* [PATCH V3 1/7] dt-bindings: power: imx8mp-power: add HDMI HDCP/HRV
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 2/7] dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl Peng Fan (OSS)
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan,
	Krzysztof Kozlowski

From: Peng Fan <peng.fan@nxp.com>

Add i.MX8MP HDMI HDCP and HRV entries.

Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 include/dt-bindings/power/imx8mp-power.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/dt-bindings/power/imx8mp-power.h b/include/dt-bindings/power/imx8mp-power.h
index 7789bcca3223..14b9c5ac9c82 100644
--- a/include/dt-bindings/power/imx8mp-power.h
+++ b/include/dt-bindings/power/imx8mp-power.h
@@ -49,5 +49,7 @@
 #define IMX8MP_HDMIBLK_PD_TRNG				4
 #define IMX8MP_HDMIBLK_PD_HDMI_TX			5
 #define IMX8MP_HDMIBLK_PD_HDMI_TX_PHY			6
+#define IMX8MP_HDMIBLK_PD_HDCP				7
+#define IMX8MP_HDMIBLK_PD_HRV				8
 
 #endif
-- 
2.25.1


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

* [PATCH V3 2/7] dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 1/7] dt-bindings: power: imx8mp-power: add HDMI HDCP/HRV Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  2022-07-19  9:52   ` Krzysztof Kozlowski
  2022-07-19  5:50 ` [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP " Peng Fan (OSS)
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

minItems and maxItems are set as the same value. In such case minItems is
not necessary. So drop it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 .../devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml    | 2 --
 1 file changed, 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
index 26487daa64d9..b3fb529b399c 100644
--- a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
+++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
@@ -27,7 +27,6 @@ properties:
     const: 1
 
   power-domains:
-    minItems: 4
     maxItems: 4
 
   power-domain-names:
@@ -38,7 +37,6 @@ properties:
       - const: h1
 
   clocks:
-    minItems: 3
     maxItems: 3
 
   clock-names:
-- 
2.25.1


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

* [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 1/7] dt-bindings: power: imx8mp-power: add HDMI HDCP/HRV Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 2/7] dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  2022-07-19  9:53   ` Krzysztof Kozlowski
  2022-07-19  5:50 ` [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV Peng Fan (OSS)
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

i.MX8MP VPU blk ctrl module has similar design as i.MX8MM, so reuse
the i.MX8MM VPU blk ctrl yaml file. And add description for the items.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 .../soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml      | 90 +++++++++++++++++--
 include/dt-bindings/power/imx8mp-power.h      |  4 +
 2 files changed, 85 insertions(+), 9 deletions(-)

diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
index b3fb529b399c..14f92574286f 100644
--- a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
+++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
@@ -30,20 +30,13 @@ properties:
     maxItems: 4
 
   power-domain-names:
-    items:
-      - const: bus
-      - const: g1
-      - const: g2
-      - const: h1
+    maxItems: 4
 
   clocks:
     maxItems: 3
 
   clock-names:
-    items:
-      - const: g1
-      - const: g2
-      - const: h1
+    maxItems: 3
 
 required:
   - compatible
@@ -53,6 +46,85 @@ required:
   - clocks
   - clock-names
 
+allOf:
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: fsl,imx8mm-vpu-blk-ctrl
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: bus power domain
+            - description: G1 decoder power domain
+            - description: G2 decoder power domain
+            - description: H1 encoder power domain
+
+        power-domain-names:
+          items:
+            - const: bus
+            - const: g1
+            - const: g2
+            - const: h1
+
+        clocks:
+          items:
+            - description: G1 decoder clk
+            - description: G2 decoder clk
+            - description: H1 encoder clk
+
+        clock-names:
+          items:
+            - const: g1
+            - const: g2
+            - const: h1
+
+  - if:
+      properties:
+        compatible:
+          contains:
+            const: fsl,imx8mp-vpu-blk-ctrl
+    then:
+      properties:
+        power-domains:
+          items:
+            - description: bus power domain
+            - description: G1 decoder power domain
+            - description: G2 decoder power domain
+            - description: VC8000E encoder power domain
+
+        power-domain-names:
+          items:
+            - const: bus
+            - const: g1
+            - const: g2
+            - const: vc8000e
+
+        clocks:
+          items:
+            - description: G1 decoder clk
+            - description: G2 decoder clk
+            - description: VC8000E encoder clk
+
+        clock-names:
+          items:
+            - const: g1
+            - const: g2
+            - const: vc8000e
+
+        interconnects:
+          items:
+            - description: G1 decoder interconnect
+            - description: G2 decoder interconnect
+            - description: VC8000E encoder interconnect
+
+        interconnect-names:
+          items:
+            - const: g1
+            - const: g2
+            - const: vc8000e
+
 additionalProperties: false
 
 examples:
diff --git a/include/dt-bindings/power/imx8mp-power.h b/include/dt-bindings/power/imx8mp-power.h
index 14b9c5ac9c82..2fe3c2abad13 100644
--- a/include/dt-bindings/power/imx8mp-power.h
+++ b/include/dt-bindings/power/imx8mp-power.h
@@ -52,4 +52,8 @@
 #define IMX8MP_HDMIBLK_PD_HDCP				7
 #define IMX8MP_HDMIBLK_PD_HRV				8
 
+#define IMX8MP_VPUBLK_PD_G1				0
+#define IMX8MP_VPUBLK_PD_G2				1
+#define IMX8MP_VPUBLK_PD_VC8000E			2
+
 #endif
-- 
2.25.1


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

* [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
                   ` (2 preceding siblings ...)
  2022-07-19  5:50 ` [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP " Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  2022-07-19 15:34   ` kernel test robot
  2022-07-20  8:27   ` kernel test robot
  2022-07-19  5:50 ` [PATCH V3 5/7] soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl Peng Fan (OSS)
                   ` (2 subsequent siblings)
  6 siblings, 2 replies; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

i.MX8MP HDMI supports HDCP and HRV, so add them.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/soc/imx/imx8mp-blk-ctrl.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/drivers/soc/imx/imx8mp-blk-ctrl.c b/drivers/soc/imx/imx8mp-blk-ctrl.c
index 6f983adcb47c..527d45d12a54 100644
--- a/drivers/soc/imx/imx8mp-blk-ctrl.c
+++ b/drivers/soc/imx/imx8mp-blk-ctrl.c
@@ -235,6 +235,13 @@ static void imx8mp_hdmi_blk_ctrl_power_on(struct imx8mp_blk_ctrl *bc,
 		regmap_set_bits(bc->regmap, HDMI_RTX_RESET_CTL0, BIT(12));
 		regmap_clear_bits(bc->regmap, HDMI_TX_CONTROL0, BIT(3));
 		break;
+	case IMX8MP_HDMIBLK_PD_HDCP:
+		regmap_set_bits(bc->regmap, HDMI_RTX_CLK_CTL0, BIT(11));
+		break;
+	case IMX8MP_HDMIBLK_PD_HRV:
+		regmap_set_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(3) | BIT(4) | BIT(5));
+		regmap_set_bits(bc->regmap, HDMI_RTX_RESET_CTL0, BIT(15));
+		break;
 	default:
 		break;
 	}
@@ -283,6 +290,13 @@ static void imx8mp_hdmi_blk_ctrl_power_off(struct imx8mp_blk_ctrl *bc,
 		regmap_clear_bits(bc->regmap, HDMI_RTX_RESET_CTL0, BIT(12));
 		regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(22) | BIT(24));
 		break;
+	case IMX8MP_HDMIBLK_PD_HDCP:
+		regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL0, BIT(11));
+		break;
+	case IMX8MP_HDMIBLK_PD_HRV:
+		regmap_clear_bits(bc->regmap, HDMI_RTX_RESET_CTL0, BIT(15));
+		regmap_clear_bits(bc->regmap, HDMI_RTX_CLK_CTL1, BIT(3) | BIT(4) | BIT(5));
+		break;
 	default:
 		break;
 	}
@@ -365,6 +379,22 @@ static const struct imx8mp_blk_ctrl_domain_data imx8mp_hdmi_domain_data[] = {
 		.num_clks = 2,
 		.gpc_name = "hdmi-tx-phy",
 	},
+	[IMX8MP_HDMIBLK_PD_HRV] = {
+		.name = "hdmiblk-hrv",
+		.clk_names = (const char *[]){ "axi", "apb" },
+		.num_clks = 2,
+		.gpc_name = "hrv",
+		.path_names = (const char *[]){"hrv"},
+		.num_paths = 1,
+	},
+	[IMX8MP_HDMIBLK_PD_HDCP] = {
+		.name = "hdmiblk-hdcp",
+		.clk_names = (const char *[]){ "axi", "apb" },
+		.num_clks = 2,
+		.gpc_name = "hdcp",
+		.path_names = (const char *[]){"hdcp"},
+		.num_paths = 1,
+	},
 };
 
 static const struct imx8mp_blk_ctrl_data imx8mp_hdmi_blk_ctl_dev_data = {
-- 
2.25.1


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

* [PATCH V3 5/7] soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
                   ` (3 preceding siblings ...)
  2022-07-19  5:50 ` [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  2022-07-20  9:58   ` kernel test robot
  2022-07-19  5:50 ` [PATCH V3 6/7] arm64: dts: imx8mp: add vpu pgc nodes Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 7/7] arm64: dts: imx8mp: add VPU blk ctrl node Peng Fan (OSS)
  6 siblings, 1 reply; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

i.MX8MP has a VPU blk ctrl module that could supply clk and reset to
VPU, so add support for it.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 drivers/soc/imx/imx8m-blk-ctrl.c | 43 ++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/drivers/soc/imx/imx8m-blk-ctrl.c b/drivers/soc/imx/imx8m-blk-ctrl.c
index 9b0f81dc292b..871a387c6b41 100644
--- a/drivers/soc/imx/imx8m-blk-ctrl.c
+++ b/drivers/soc/imx/imx8m-blk-ctrl.c
@@ -484,6 +484,46 @@ static const struct imx8m_blk_ctrl_data imx8mm_vpu_blk_ctl_dev_data = {
 	.num_domains = ARRAY_SIZE(imx8mm_vpu_blk_ctl_domain_data),
 };
 
+static const struct imx8m_blk_ctrl_domain_data imx8mp_vpu_blk_ctl_domain_data[] = {
+	[IMX8MP_VPUBLK_PD_G1] = {
+		.name = "vpublk-g1",
+		.clk_names = (const char *[]){ "g1", },
+		.num_clks = 1,
+		.gpc_name = "g1",
+		.rst_mask = BIT(1),
+		.clk_mask = BIT(1),
+		.path_names = (const char *[]){"g1"},
+		.num_paths = 1,
+	},
+	[IMX8MP_VPUBLK_PD_G2] = {
+		.name = "vpublk-g2",
+		.clk_names = (const char *[]){ "g2", },
+		.num_clks = 1,
+		.gpc_name = "g2",
+		.rst_mask = BIT(0),
+		.clk_mask = BIT(0),
+		.path_names = (const char *[]){"g2"},
+		.num_paths = 1,
+	},
+	[IMX8MP_VPUBLK_PD_VC8000E] = {
+		.name = "vpublk-vc8000e",
+		.clk_names = (const char *[]){ "vc8000e", },
+		.num_clks = 1,
+		.gpc_name = "vc8000e",
+		.rst_mask = BIT(2),
+		.clk_mask = BIT(2),
+		.path_names = (const char *[]){"vc8000e"},
+		.num_paths = 1,
+	},
+};
+
+static const struct imx8m_blk_ctrl_data imx8mp_vpu_blk_ctl_dev_data = {
+	.max_reg = 0x18,
+	.power_notifier_fn = imx8mm_vpu_power_notifier,
+	.domains = imx8mp_vpu_blk_ctl_domain_data,
+	.num_domains = ARRAY_SIZE(imx8mp_vpu_blk_ctl_domain_data),
+};
+
 static int imx8mm_disp_power_notifier(struct notifier_block *nb,
 				      unsigned long action, void *data)
 {
@@ -827,6 +867,9 @@ static const struct of_device_id imx8m_blk_ctrl_of_match[] = {
 	}, {
 		.compatible = "fsl,imx8mq-vpu-blk-ctrl",
 		.data = &imx8mq_vpu_blk_ctl_dev_data
+	}, {
+		.compatible = "fsl,imx8mp-vpu-blk-ctrl",
+		.data = &imx8mp_vpu_blk_ctl_dev_data
 	}, {
 		/* Sentinel */
 	}
-- 
2.25.1


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

* [PATCH V3 6/7] arm64: dts: imx8mp: add vpu pgc nodes
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
                   ` (4 preceding siblings ...)
  2022-07-19  5:50 ` [PATCH V3 5/7] soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  2022-07-19  5:50 ` [PATCH V3 7/7] arm64: dts: imx8mp: add VPU blk ctrl node Peng Fan (OSS)
  6 siblings, 0 replies; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

Add i.MX8MP PGC nodes for vpu, which are used to supply power for VPU.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 27 +++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 0b165f98a82c..34af983b0210 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -598,6 +598,33 @@ pgc_ispdwp: power-domain@18 {
 						reg = <IMX8MP_POWER_DOMAIN_MEDIAMIX_ISPDWP>;
 						clocks = <&clk IMX8MP_CLK_MEDIA_ISP_ROOT>;
 					};
+
+					pgc_vpumix: power-domain@19 {
+						#power-domain-cells = <0>;
+						reg = <IMX8MP_POWER_DOMAIN_VPUMIX>;
+						clocks =<&clk IMX8MP_CLK_VPU_ROOT>;
+					};
+
+					pgc_vpu_g1: power-domain@20 {
+						#power-domain-cells = <0>;
+						power-domains = <&pgc_vpumix>;
+						reg = <IMX8MP_POWER_DOMAIN_VPU_G1>;
+						clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>;
+					};
+
+					pgc_vpu_g2: power-domain@21 {
+						#power-domain-cells = <0>;
+						power-domains = <&pgc_vpumix>;
+						reg = <IMX8MP_POWER_DOMAIN_VPU_G2>;
+						clocks = <&clk IMX8MP_CLK_VPU_G2_ROOT>;
+					};
+
+					pgc_vpu_vc8000e: power-domain@22 {
+						#power-domain-cells = <0>;
+						power-domains = <&pgc_vpumix>;
+						reg = <IMX8MP_POWER_DOMAIN_VPU_VC8000E>;
+						clocks = <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>;
+					};
 				};
 			};
 		};
-- 
2.25.1


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

* [PATCH V3 7/7] arm64: dts: imx8mp: add VPU blk ctrl node
  2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
                   ` (5 preceding siblings ...)
  2022-07-19  5:50 ` [PATCH V3 6/7] arm64: dts: imx8mp: add vpu pgc nodes Peng Fan (OSS)
@ 2022-07-19  5:50 ` Peng Fan (OSS)
  6 siblings, 0 replies; 18+ messages in thread
From: Peng Fan (OSS) @ 2022-07-19  5:50 UTC (permalink / raw)
  To: robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

From: Peng Fan <peng.fan@nxp.com>

Add i.MX8MP VPU blk ctrl node

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp.dtsi | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/arch/arm64/boot/dts/freescale/imx8mp.dtsi b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
index 34af983b0210..493fc3ceec1f 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp.dtsi
+++ b/arch/arm64/boot/dts/freescale/imx8mp.dtsi
@@ -1185,6 +1185,24 @@ gic: interrupt-controller@38800000 {
 			interrupt-parent = <&gic>;
 		};
 
+		vpumix_blk_ctrl: blk-ctrl@38330000 {
+			compatible = "fsl,imx8mp-vpu-blk-ctrl", "syscon";
+			reg = <0x38330000 0x100>;
+			#power-domain-cells = <1>;
+			power-domains = <&pgc_vpumix>, <&pgc_vpu_g1>,
+					<&pgc_vpu_g2>, <&pgc_vpu_vc8000e>;
+			power-domain-names = "bus", "g1", "g2", "vc8000e";
+			clocks = <&clk IMX8MP_CLK_VPU_G1_ROOT>,
+				 <&clk IMX8MP_CLK_VPU_G2_ROOT>,
+				 <&clk IMX8MP_CLK_VPU_VC8KE_ROOT>;
+			clock-names = "g1", "g2", "vc8000e";
+			interconnects = <&noc IMX8MP_ICM_VPU_G1 &noc IMX8MP_ICN_VIDEO>,
+					<&noc IMX8MP_ICM_VPU_G2 &noc IMX8MP_ICN_VIDEO>,
+					<&noc IMX8MP_ICM_VPU_H1 &noc IMX8MP_ICN_VIDEO>;
+			interconnect-names = "g1", "g2", "vc8000e";
+		};
+
+
 		edacmc: memory-controller@3d400000 {
 			compatible = "snps,ddrc-3.80a";
 			reg = <0x3d400000 0x400000>;
-- 
2.25.1


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

* Re: [PATCH V3 2/7] dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl
  2022-07-19  5:50 ` [PATCH V3 2/7] dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl Peng Fan (OSS)
@ 2022-07-19  9:52   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-07-19  9:52 UTC (permalink / raw)
  To: Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

On 19/07/2022 07:50, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> minItems and maxItems are set as the same value. In such case minItems is
> not necessary. So drop it.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml    | 2 --

Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>


Best regards,
Krzysztof

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

* Re: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  2022-07-19  5:50 ` [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP " Peng Fan (OSS)
@ 2022-07-19  9:53   ` Krzysztof Kozlowski
  2022-07-19  9:58     ` Peng Fan
  0 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-07-19  9:53 UTC (permalink / raw)
  To: Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, linux-imx, laurent.pinchart, marex, paul.elder,
	aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

On 19/07/2022 07:50, Peng Fan (OSS) wrote:
> From: Peng Fan <peng.fan@nxp.com>
> 
> i.MX8MP VPU blk ctrl module has similar design as i.MX8MM, so reuse
> the i.MX8MM VPU blk ctrl yaml file. And add description for the items.
> 
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
> ---
>  .../soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml      | 90 +++++++++++++++++--
>  include/dt-bindings/power/imx8mp-power.h      |  4 +
>  2 files changed, 85 insertions(+), 9 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
> index b3fb529b399c..14f92574286f 100644
> --- a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
> +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml
> @@ -30,20 +30,13 @@ properties:
>      maxItems: 4
>  
>    power-domain-names:
> -    items:
> -      - const: bus
> -      - const: g1
> -      - const: g2
> -      - const: h1
> +    maxItems: 4
>  
>    clocks:
>      maxItems: 3
>  
>    clock-names:
> -    items:
> -      - const: g1
> -      - const: g2
> -      - const: h1
> +    maxItems: 3
>  
>  required:
>    - compatible
> @@ -53,6 +46,85 @@ required:
>    - clocks
>    - clock-names
>  
> +allOf:
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: fsl,imx8mm-vpu-blk-ctrl
> +    then:
> +      properties:
> +        power-domains:
> +          items:
> +            - description: bus power domain
> +            - description: G1 decoder power domain
> +            - description: G2 decoder power domain
> +            - description: H1 encoder power domain
> +
> +        power-domain-names:
> +          items:
> +            - const: bus
> +            - const: g1
> +            - const: g2
> +            - const: h1
> +
> +        clocks:
> +          items:
> +            - description: G1 decoder clk
> +            - description: G2 decoder clk
> +            - description: H1 encoder clk
> +
> +        clock-names:
> +          items:
> +            - const: g1
> +            - const: g2
> +            - const: h1
> +
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            const: fsl,imx8mp-vpu-blk-ctrl
> +    then:
> +      properties:
> +        power-domains:
> +          items:
> +            - description: bus power domain
> +            - description: G1 decoder power domain
> +            - description: G2 decoder power domain
> +            - description: VC8000E encoder power domain
> +
> +        power-domain-names:
> +          items:
> +            - const: bus
> +            - const: g1
> +            - const: g2
> +            - const: vc8000e
> +
> +        clocks:
> +          items:
> +            - description: G1 decoder clk
> +            - description: G2 decoder clk
> +            - description: VC8000E encoder clk
> +
> +        clock-names:
> +          items:
> +            - const: g1
> +            - const: g2
> +            - const: vc8000e
> +
> +        interconnects:
> +          items:
> +            - description: G1 decoder interconnect
> +            - description: G2 decoder interconnect
> +            - description: VC8000E encoder interconnect
> +
> +        interconnect-names:
> +          items:
> +            - const: g1
> +            - const: g2
> +            - const: vc8000e

Include interconnects+names in list of all properties and disallow them
for other variants.


Best regards,
Krzysztof

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

* RE: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  2022-07-19  9:53   ` Krzysztof Kozlowski
@ 2022-07-19  9:58     ` Peng Fan
  2022-07-19 19:08       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 18+ messages in thread
From: Peng Fan @ 2022-07-19  9:58 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, dl-linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, Aisheng Dong

Hi Krzysztof,

> Subject: Re: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
> 
> On 19/07/2022 07:50, Peng Fan (OSS) wrote:
> > From: Peng Fan <peng.fan@nxp.com>
> >
> > i.MX8MP VPU blk ctrl module has similar design as i.MX8MM, so reuse
> > the i.MX8MM VPU blk ctrl yaml file. And add description for the items.
> >
> > Signed-off-by: Peng Fan <peng.fan@nxp.com>
> > ---
> >  .../soc/imx/fsl,imx8mm-vpu-blk-ctrl.yaml      | 90 +++++++++++++++++--
> >  include/dt-bindings/power/imx8mp-power.h      |  4 +
> >  2 files changed, 85 insertions(+), 9 deletions(-)
> >
> > diff --git
> > a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-
> ctrl.ya
> > ml
> > b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-
> ctrl.ya
> > ml index b3fb529b399c..14f92574286f 100644
> > ---
> > a/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-
> ctrl.ya
> > ml
> > +++ b/Documentation/devicetree/bindings/soc/imx/fsl,imx8mm-vpu-blk-
> ctr
> > +++ l.yaml
> > @@ -30,20 +30,13 @@ properties:
> >      maxItems: 4
> >
> >    power-domain-names:
> > -    items:
> > -      - const: bus
> > -      - const: g1
> > -      - const: g2
> > -      - const: h1
> > +    maxItems: 4
> >
> >    clocks:
> >      maxItems: 3
> >
> >    clock-names:
> > -    items:
> > -      - const: g1
> > -      - const: g2
> > -      - const: h1
> > +    maxItems: 3
> >
> >  required:
> >    - compatible
> > @@ -53,6 +46,85 @@ required:
> >    - clocks
> >    - clock-names
> >
> > +allOf:
> > +  - if:
> > +      properties:
> > +        compatible:
> > +          contains:
> > +            const: fsl,imx8mm-vpu-blk-ctrl
> > +    then:
> > +      properties:
> > +        power-domains:
> > +          items:
> > +            - description: bus power domain
> > +            - description: G1 decoder power domain
> > +            - description: G2 decoder power domain
> > +            - description: H1 encoder power domain
> > +
> > +        power-domain-names:
> > +          items:
> > +            - const: bus
> > +            - const: g1
> > +            - const: g2
> > +            - const: h1
> > +
> > +        clocks:
> > +          items:
> > +            - description: G1 decoder clk
> > +            - description: G2 decoder clk
> > +            - description: H1 encoder clk
> > +
> > +        clock-names:
> > +          items:
> > +            - const: g1
> > +            - const: g2
> > +            - const: h1
> > +
> > +  - if:
> > +      properties:
> > +        compatible:
> > +          contains:
> > +            const: fsl,imx8mp-vpu-blk-ctrl
> > +    then:
> > +      properties:
> > +        power-domains:
> > +          items:
> > +            - description: bus power domain
> > +            - description: G1 decoder power domain
> > +            - description: G2 decoder power domain
> > +            - description: VC8000E encoder power domain
> > +
> > +        power-domain-names:
> > +          items:
> > +            - const: bus
> > +            - const: g1
> > +            - const: g2
> > +            - const: vc8000e
> > +
> > +        clocks:
> > +          items:
> > +            - description: G1 decoder clk
> > +            - description: G2 decoder clk
> > +            - description: VC8000E encoder clk
> > +
> > +        clock-names:
> > +          items:
> > +            - const: g1
> > +            - const: g2
> > +            - const: vc8000e
> > +
> > +        interconnects:
> > +          items:
> > +            - description: G1 decoder interconnect
> > +            - description: G2 decoder interconnect
> > +            - description: VC8000E encoder interconnect
> > +
> > +        interconnect-names:
> > +          items:
> > +            - const: g1
> > +            - const: g2
> > +            - const: vc8000e
> 
> Include interconnects+names in list of all properties and disallow them for
> other variants.

I not understand well about 
" Include interconnects+names in list of all properties ", could you please
explain a bit more?

And there is already an "if" to check whether the
compatible contains " fsl,imx8mp-vpu-blk-ctrl" to make sure the interconnect
valid for i.MX8MP, so it is not valid to other variants.

Thanks,
Peng.

> 
> 
> Best regards,
> Krzysztof

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

* Re: [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV
  2022-07-19  5:50 ` [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV Peng Fan (OSS)
@ 2022-07-19 15:34   ` kernel test robot
  2022-07-20  0:51     ` Peng Fan
  2022-07-20  8:27   ` kernel test robot
  1 sibling, 1 reply; 18+ messages in thread
From: kernel test robot @ 2022-07-19 15:34 UTC (permalink / raw)
  To: Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kbuild-all, kernel, festevam, linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

Hi "Peng,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on shawnguo/for-next]
[also build test WARNING on linus/master v5.19-rc7 next-20220719]
[cannot apply to robh/for-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
base:   https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git for-next
config: microblaze-allmodconfig (https://download.01.org/0day-ci/archive/20220719/202207192320.p1W4jEjD-lkp@intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/328924f29e2ab1b6667c1be9578a9e17a7824c71
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
        git checkout 328924f29e2ab1b6667c1be9578a9e17a7824c71
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=microblaze SHELL=/bin/bash drivers/soc/imx/ sound/soc/sof/imx/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   drivers/soc/imx/imx8mp-blk-ctrl.c:375:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'path_names'
     375 |                 .path_names = (const char *[]){"hrv"},
         |                  ^~~~~~~~~~
>> drivers/soc/imx/imx8mp-blk-ctrl.c:375:31: warning: excess elements in struct initializer
     375 |                 .path_names = (const char *[]){"hrv"},
         |                               ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:375:31: note: (near initialization for 'imx8mp_hdmi_domain_data[8]')
   drivers/soc/imx/imx8mp-blk-ctrl.c:376:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'num_paths'
     376 |                 .num_paths = 1,
         |                  ^~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:376:30: warning: excess elements in struct initializer
     376 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:376:30: note: (near initialization for 'imx8mp_hdmi_domain_data[8]')
   drivers/soc/imx/imx8mp-blk-ctrl.c:383:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'path_names'
     383 |                 .path_names = (const char *[]){"hdcp"},
         |                  ^~~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:383:31: warning: excess elements in struct initializer
     383 |                 .path_names = (const char *[]){"hdcp"},
         |                               ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:383:31: note: (near initialization for 'imx8mp_hdmi_domain_data[7]')
   drivers/soc/imx/imx8mp-blk-ctrl.c:384:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'num_paths'
     384 |                 .num_paths = 1,
         |                  ^~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:384:30: warning: excess elements in struct initializer
     384 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:384:30: note: (near initialization for 'imx8mp_hdmi_domain_data[7]')


vim +375 drivers/soc/imx/imx8mp-blk-ctrl.c

   326	
   327	static const struct imx8mp_blk_ctrl_domain_data imx8mp_hdmi_domain_data[] = {
   328		[IMX8MP_HDMIBLK_PD_IRQSTEER] = {
   329			.name = "hdmiblk-irqsteer",
   330			.clk_names = (const char *[]){ "apb" },
   331			.num_clks = 1,
   332			.gpc_name = "irqsteer",
   333		},
   334		[IMX8MP_HDMIBLK_PD_LCDIF] = {
   335			.name = "hdmiblk-lcdif",
   336			.clk_names = (const char *[]){ "axi", "apb" },
   337			.num_clks = 2,
   338			.gpc_name = "lcdif",
   339		},
   340		[IMX8MP_HDMIBLK_PD_PAI] = {
   341			.name = "hdmiblk-pai",
   342			.clk_names = (const char *[]){ "apb" },
   343			.num_clks = 1,
   344			.gpc_name = "pai",
   345		},
   346		[IMX8MP_HDMIBLK_PD_PVI] = {
   347			.name = "hdmiblk-pvi",
   348			.clk_names = (const char *[]){ "apb" },
   349			.num_clks = 1,
   350			.gpc_name = "pvi",
   351		},
   352		[IMX8MP_HDMIBLK_PD_TRNG] = {
   353			.name = "hdmiblk-trng",
   354			.clk_names = (const char *[]){ "apb" },
   355			.num_clks = 1,
   356			.gpc_name = "trng",
   357		},
   358		[IMX8MP_HDMIBLK_PD_HDMI_TX] = {
   359			.name = "hdmiblk-hdmi-tx",
   360			.clk_names = (const char *[]){ "apb", "ref_266m" },
   361			.num_clks = 2,
   362			.gpc_name = "hdmi-tx",
   363		},
   364		[IMX8MP_HDMIBLK_PD_HDMI_TX_PHY] = {
   365			.name = "hdmiblk-hdmi-tx-phy",
   366			.clk_names = (const char *[]){ "apb", "ref_24m" },
   367			.num_clks = 2,
   368			.gpc_name = "hdmi-tx-phy",
   369		},
   370		[IMX8MP_HDMIBLK_PD_HRV] = {
   371			.name = "hdmiblk-hrv",
   372			.clk_names = (const char *[]){ "axi", "apb" },
   373			.num_clks = 2,
   374			.gpc_name = "hrv",
 > 375			.path_names = (const char *[]){"hrv"},
   376			.num_paths = 1,
   377		},
   378		[IMX8MP_HDMIBLK_PD_HDCP] = {
   379			.name = "hdmiblk-hdcp",
   380			.clk_names = (const char *[]){ "axi", "apb" },
   381			.num_clks = 2,
   382			.gpc_name = "hdcp",
   383			.path_names = (const char *[]){"hdcp"},
   384			.num_paths = 1,
   385		},
   386	};
   387	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

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

* Re: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  2022-07-19  9:58     ` Peng Fan
@ 2022-07-19 19:08       ` Krzysztof Kozlowski
  2022-07-21 10:38         ` Peng Fan
  0 siblings, 1 reply; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-07-19 19:08 UTC (permalink / raw)
  To: Peng Fan, Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, dl-linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, Aisheng Dong

On 19/07/2022 11:58, Peng Fan wrote:
>>> +        interconnects:
>>> +          items:
>>> +            - description: G1 decoder interconnect
>>> +            - description: G2 decoder interconnect
>>> +            - description: VC8000E encoder interconnect
>>> +
>>> +        interconnect-names:
>>> +          items:
>>> +            - const: g1
>>> +            - const: g2
>>> +            - const: vc8000e
>>
>> Include interconnects+names in list of all properties and disallow them for
>> other variants.
> 
> I not understand well about 
> " Include interconnects+names in list of all properties ", could you please
> explain a bit more?
> 
> And there is already an "if" to check whether the
> compatible contains " fsl,imx8mp-vpu-blk-ctrl" to make sure the interconnect
> valid for i.MX8MP, so it is not valid to other variants.

Defining properties in some if: clause is not really readable and
maintainable. The properties should be defined in top-level properties:.


Best regards,
Krzysztof

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

* RE: [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV
  2022-07-19 15:34   ` kernel test robot
@ 2022-07-20  0:51     ` Peng Fan
  0 siblings, 0 replies; 18+ messages in thread
From: Peng Fan @ 2022-07-20  0:51 UTC (permalink / raw)
  To: kernel test robot, Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kbuild-all, kernel, festevam, dl-linux-imx, laurent.pinchart,
	marex, paul.elder, aford173, Markus.Niebel, alexander.stein,
	devicetree, linux-arm-kernel, linux-kernel, Aisheng Dong

> Subject: Re: [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV
> 
> Hi "Peng,
[Peng Fan] 

As I wrote in cover-letter, this patch depends on the other patchset, so
it is expected if directly build this patchset.

Regards,
Peng.

> 
> Thank you for the patch! Perhaps something to improve:
> 
> [auto build test WARNING on shawnguo/for-next] [also build test WARNING
> on linus/master v5.19-rc7 next-20220719] [cannot apply to robh/for-next]
> [If your patch is applied to the wrong git tree, kindly drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit-
> scm.com%2Fdocs%2Fgit-format-
> patch%23_base_tree_information&amp;data=05%7C01%7Cpeng.fan%40nx
> p.com%7C10c48f8d87c4495ae2cb08da699c4cf9%7C686ea1d3bc2b4c6fa92c
> d99c5c301635%7C0%7C0%7C637938417271437135%7CUnknown%7CTWFp
> bGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXV
> CI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=j52hhniJ9%2F8Erb1s%2BWs
> Tbrt6PrEFUNFx%2FOpuaVliIk8%3D&amp;reserved=0]
> 
> url:
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithu
> b.com%2Fintel-lab-lkp%2Flinux%2Fcommits%2FPeng-Fan-OSS%2Fimx-add-i-
> MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl%2F20220719-
> 135352&amp;data=05%7C01%7Cpeng.fan%40nxp.com%7C10c48f8d87c449
> 5ae2cb08da699c4cf9%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%
> 7C637938417271437135%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjA
> wMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7
> C%7C&amp;sdata=B1ZT%2B01n%2FntH1CuS6diMTiwYT6F%2FWcWa2wN%2
> BCI07oaA%3D&amp;reserved=0
> base:
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgit.ke
> rnel.org%2Fpub%2Fscm%2Flinux%2Fkernel%2Fgit%2Fshawnguo%2Flinux.git
> &amp;data=05%7C01%7Cpeng.fan%40nxp.com%7C10c48f8d87c4495ae2cb0
> 8da699c4cf9%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63793
> 8417271437135%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiL
> CJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&a
> mp;sdata=rT48ZhcxCPw5jkaxziGZIkZeGhOsfNMmHwTy79hpxHw%3D&amp;r
> eserved=0 for-next
> config: microblaze-allmodconfig
> (https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fdow
> nload.01.org%2F0day-
> ci%2Farchive%2F20220719%2F202207192320.p1W4jEjD-
> lkp%40intel.com%2Fconfig&amp;data=05%7C01%7Cpeng.fan%40nxp.com%
> 7C10c48f8d87c4495ae2cb08da699c4cf9%7C686ea1d3bc2b4c6fa92cd99c5c3
> 01635%7C0%7C0%7C637938417271437135%7CUnknown%7CTWFpbGZsb3d
> 8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%
> 3D%7C3000%7C%7C%7C&amp;sdata=sZzZ%2Fhe0aDQ0hhNOkNEyURDlzYP1
> F4xjkRey4lzZBLI%3D&amp;reserved=0)
> compiler: microblaze-linux-gcc (GCC) 12.1.0 reproduce (this is a W=1 build):
>         wget
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fraw.
> githubusercontent.com%2Fintel%2Flkp-
> tests%2Fmaster%2Fsbin%2Fmake.cross&amp;data=05%7C01%7Cpeng.fan%
> 40nxp.com%7C10c48f8d87c4495ae2cb08da699c4cf9%7C686ea1d3bc2b4c6f
> a92cd99c5c301635%7C0%7C0%7C637938417271437135%7CUnknown%7CT
> WFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiL
> CJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=tO6jPASKjlJjMPM12kf7
> MeyVbK3%2BfnjRxjfaumbGPE8%3D&amp;reserved=0 -O ~/bin/make.cross
>         chmod +x ~/bin/make.cross
>         #
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithu
> b.com%2Fintel-lab-
> lkp%2Flinux%2Fcommit%2F328924f29e2ab1b6667c1be9578a9e17a7824c71
> &amp;data=05%7C01%7Cpeng.fan%40nxp.com%7C10c48f8d87c4495ae2cb0
> 8da699c4cf9%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C63793
> 8417271437135%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiL
> CJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&a
> mp;sdata=otOy63cAD8a6%2BGdQBEA0E4GiFw%2BtrUCM7JH5lGh4mbs%3D
> &amp;reserved=0
>         git remote add linux-review
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithu
> b.com%2Fintel-lab-
> lkp%2Flinux&amp;data=05%7C01%7Cpeng.fan%40nxp.com%7C10c48f8d87c
> 4495ae2cb08da699c4cf9%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C
> 0%7C637938417271437135%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4w
> LjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C
> %7C%7C&amp;sdata=E65GHnHqVvRXXZTqnFGTbpXudJCL7uVZQ41zcQvsCPE
> %3D&amp;reserved=0
>         git fetch --no-tags linux-review Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-
> blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
>         git checkout 328924f29e2ab1b6667c1be9578a9e17a7824c71
>         # save the config file
>         mkdir build_dir && cp config build_dir/.config
>         COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0
> make.cross W=1 O=build_dir ARCH=microblaze SHELL=/bin/bash
> drivers/soc/imx/ sound/soc/sof/imx/
> 
> If you fix the issue, kindly add following tag where applicable
> Reported-by: kernel test robot <lkp@intel.com>
> 
> All warnings (new ones prefixed by >>):
> 
>    drivers/soc/imx/imx8mp-blk-ctrl.c:375:18: error: 'const struct
> imx8mp_blk_ctrl_domain_data' has no member named 'path_names'
>      375 |                 .path_names = (const char *[]){"hrv"},
>          |                  ^~~~~~~~~~
> >> drivers/soc/imx/imx8mp-blk-ctrl.c:375:31: warning: excess elements in
> >> struct initializer
>      375 |                 .path_names = (const char *[]){"hrv"},
>          |                               ^
>    drivers/soc/imx/imx8mp-blk-ctrl.c:375:31: note: (near initialization for
> 'imx8mp_hdmi_domain_data[8]')
>    drivers/soc/imx/imx8mp-blk-ctrl.c:376:18: error: 'const struct
> imx8mp_blk_ctrl_domain_data' has no member named 'num_paths'
>      376 |                 .num_paths = 1,
>          |                  ^~~~~~~~~
>    drivers/soc/imx/imx8mp-blk-ctrl.c:376:30: warning: excess elements in
> struct initializer
>      376 |                 .num_paths = 1,
>          |                              ^
>    drivers/soc/imx/imx8mp-blk-ctrl.c:376:30: note: (near initialization for
> 'imx8mp_hdmi_domain_data[8]')
>    drivers/soc/imx/imx8mp-blk-ctrl.c:383:18: error: 'const struct
> imx8mp_blk_ctrl_domain_data' has no member named 'path_names'
>      383 |                 .path_names = (const char *[]){"hdcp"},
>          |                  ^~~~~~~~~~
>    drivers/soc/imx/imx8mp-blk-ctrl.c:383:31: warning: excess elements in
> struct initializer
>      383 |                 .path_names = (const char *[]){"hdcp"},
>          |                               ^
>    drivers/soc/imx/imx8mp-blk-ctrl.c:383:31: note: (near initialization for
> 'imx8mp_hdmi_domain_data[7]')
>    drivers/soc/imx/imx8mp-blk-ctrl.c:384:18: error: 'const struct
> imx8mp_blk_ctrl_domain_data' has no member named 'num_paths'
>      384 |                 .num_paths = 1,
>          |                  ^~~~~~~~~
>    drivers/soc/imx/imx8mp-blk-ctrl.c:384:30: warning: excess elements in
> struct initializer
>      384 |                 .num_paths = 1,
>          |                              ^
>    drivers/soc/imx/imx8mp-blk-ctrl.c:384:30: note: (near initialization for
> 'imx8mp_hdmi_domain_data[7]')
> 
> 
> vim +375 drivers/soc/imx/imx8mp-blk-ctrl.c
> 
>    326
>    327	static const struct imx8mp_blk_ctrl_domain_data
> imx8mp_hdmi_domain_data[] = {
>    328		[IMX8MP_HDMIBLK_PD_IRQSTEER] = {
>    329			.name = "hdmiblk-irqsteer",
>    330			.clk_names = (const char *[]){ "apb" },
>    331			.num_clks = 1,
>    332			.gpc_name = "irqsteer",
>    333		},
>    334		[IMX8MP_HDMIBLK_PD_LCDIF] = {
>    335			.name = "hdmiblk-lcdif",
>    336			.clk_names = (const char *[]){ "axi", "apb" },
>    337			.num_clks = 2,
>    338			.gpc_name = "lcdif",
>    339		},
>    340		[IMX8MP_HDMIBLK_PD_PAI] = {
>    341			.name = "hdmiblk-pai",
>    342			.clk_names = (const char *[]){ "apb" },
>    343			.num_clks = 1,
>    344			.gpc_name = "pai",
>    345		},
>    346		[IMX8MP_HDMIBLK_PD_PVI] = {
>    347			.name = "hdmiblk-pvi",
>    348			.clk_names = (const char *[]){ "apb" },
>    349			.num_clks = 1,
>    350			.gpc_name = "pvi",
>    351		},
>    352		[IMX8MP_HDMIBLK_PD_TRNG] = {
>    353			.name = "hdmiblk-trng",
>    354			.clk_names = (const char *[]){ "apb" },
>    355			.num_clks = 1,
>    356			.gpc_name = "trng",
>    357		},
>    358		[IMX8MP_HDMIBLK_PD_HDMI_TX] = {
>    359			.name = "hdmiblk-hdmi-tx",
>    360			.clk_names = (const char *[]){ "apb", "ref_266m" },
>    361			.num_clks = 2,
>    362			.gpc_name = "hdmi-tx",
>    363		},
>    364		[IMX8MP_HDMIBLK_PD_HDMI_TX_PHY] = {
>    365			.name = "hdmiblk-hdmi-tx-phy",
>    366			.clk_names = (const char *[]){ "apb", "ref_24m" },
>    367			.num_clks = 2,
>    368			.gpc_name = "hdmi-tx-phy",
>    369		},
>    370		[IMX8MP_HDMIBLK_PD_HRV] = {
>    371			.name = "hdmiblk-hrv",
>    372			.clk_names = (const char *[]){ "axi", "apb" },
>    373			.num_clks = 2,
>    374			.gpc_name = "hrv",
>  > 375			.path_names = (const char *[]){"hrv"},
>    376			.num_paths = 1,
>    377		},
>    378		[IMX8MP_HDMIBLK_PD_HDCP] = {
>    379			.name = "hdmiblk-hdcp",
>    380			.clk_names = (const char *[]){ "axi", "apb" },
>    381			.num_clks = 2,
>    382			.gpc_name = "hdcp",
>    383			.path_names = (const char *[]){"hdcp"},
>    384			.num_paths = 1,
>    385		},
>    386	};
>    387
> 
> --
> 0-DAY CI Kernel Test Service
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2F01.or
> g%2Flkp&amp;data=05%7C01%7Cpeng.fan%40nxp.com%7C10c48f8d87c449
> 5ae2cb08da699c4cf9%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%
> 7C637938417271437135%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjA
> wMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7
> C%7C&amp;sdata=IAl%2FXvFsNel91HfuahEWK%2BMJWkYJHGs76AXN7cvXx
> Eo%3D&amp;reserved=0

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

* Re: [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV
  2022-07-19  5:50 ` [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV Peng Fan (OSS)
  2022-07-19 15:34   ` kernel test robot
@ 2022-07-20  8:27   ` kernel test robot
  1 sibling, 0 replies; 18+ messages in thread
From: kernel test robot @ 2022-07-20  8:27 UTC (permalink / raw)
  To: Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kbuild-all, kernel, festevam, linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

Hi "Peng,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on shawnguo/for-next]
[also build test ERROR on linus/master v5.19-rc7 next-20220719]
[cannot apply to robh/for-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
base:   https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git for-next
config: microblaze-allmodconfig (https://download.01.org/0day-ci/archive/20220720/202207201616.Ek404VMJ-lkp@intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/328924f29e2ab1b6667c1be9578a9e17a7824c71
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
        git checkout 328924f29e2ab1b6667c1be9578a9e17a7824c71
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=microblaze SHELL=/bin/bash drivers/soc/ sound/soc/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

>> drivers/soc/imx/imx8mp-blk-ctrl.c:375:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'path_names'
     375 |                 .path_names = (const char *[]){"hrv"},
         |                  ^~~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:375:31: warning: excess elements in struct initializer
     375 |                 .path_names = (const char *[]){"hrv"},
         |                               ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:375:31: note: (near initialization for 'imx8mp_hdmi_domain_data[8]')
>> drivers/soc/imx/imx8mp-blk-ctrl.c:376:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'num_paths'
     376 |                 .num_paths = 1,
         |                  ^~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:376:30: warning: excess elements in struct initializer
     376 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:376:30: note: (near initialization for 'imx8mp_hdmi_domain_data[8]')
   drivers/soc/imx/imx8mp-blk-ctrl.c:383:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'path_names'
     383 |                 .path_names = (const char *[]){"hdcp"},
         |                  ^~~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:383:31: warning: excess elements in struct initializer
     383 |                 .path_names = (const char *[]){"hdcp"},
         |                               ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:383:31: note: (near initialization for 'imx8mp_hdmi_domain_data[7]')
   drivers/soc/imx/imx8mp-blk-ctrl.c:384:18: error: 'const struct imx8mp_blk_ctrl_domain_data' has no member named 'num_paths'
     384 |                 .num_paths = 1,
         |                  ^~~~~~~~~
   drivers/soc/imx/imx8mp-blk-ctrl.c:384:30: warning: excess elements in struct initializer
     384 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8mp-blk-ctrl.c:384:30: note: (near initialization for 'imx8mp_hdmi_domain_data[7]')


vim +375 drivers/soc/imx/imx8mp-blk-ctrl.c

   326	
   327	static const struct imx8mp_blk_ctrl_domain_data imx8mp_hdmi_domain_data[] = {
   328		[IMX8MP_HDMIBLK_PD_IRQSTEER] = {
   329			.name = "hdmiblk-irqsteer",
   330			.clk_names = (const char *[]){ "apb" },
   331			.num_clks = 1,
   332			.gpc_name = "irqsteer",
   333		},
   334		[IMX8MP_HDMIBLK_PD_LCDIF] = {
   335			.name = "hdmiblk-lcdif",
   336			.clk_names = (const char *[]){ "axi", "apb" },
   337			.num_clks = 2,
   338			.gpc_name = "lcdif",
   339		},
   340		[IMX8MP_HDMIBLK_PD_PAI] = {
   341			.name = "hdmiblk-pai",
   342			.clk_names = (const char *[]){ "apb" },
   343			.num_clks = 1,
   344			.gpc_name = "pai",
   345		},
   346		[IMX8MP_HDMIBLK_PD_PVI] = {
   347			.name = "hdmiblk-pvi",
   348			.clk_names = (const char *[]){ "apb" },
   349			.num_clks = 1,
   350			.gpc_name = "pvi",
   351		},
   352		[IMX8MP_HDMIBLK_PD_TRNG] = {
   353			.name = "hdmiblk-trng",
   354			.clk_names = (const char *[]){ "apb" },
   355			.num_clks = 1,
   356			.gpc_name = "trng",
   357		},
   358		[IMX8MP_HDMIBLK_PD_HDMI_TX] = {
   359			.name = "hdmiblk-hdmi-tx",
   360			.clk_names = (const char *[]){ "apb", "ref_266m" },
   361			.num_clks = 2,
   362			.gpc_name = "hdmi-tx",
   363		},
   364		[IMX8MP_HDMIBLK_PD_HDMI_TX_PHY] = {
   365			.name = "hdmiblk-hdmi-tx-phy",
   366			.clk_names = (const char *[]){ "apb", "ref_24m" },
   367			.num_clks = 2,
   368			.gpc_name = "hdmi-tx-phy",
   369		},
   370		[IMX8MP_HDMIBLK_PD_HRV] = {
   371			.name = "hdmiblk-hrv",
   372			.clk_names = (const char *[]){ "axi", "apb" },
   373			.num_clks = 2,
   374			.gpc_name = "hrv",
 > 375			.path_names = (const char *[]){"hrv"},
 > 376			.num_paths = 1,
   377		},
   378		[IMX8MP_HDMIBLK_PD_HDCP] = {
   379			.name = "hdmiblk-hdcp",
   380			.clk_names = (const char *[]){ "axi", "apb" },
   381			.num_clks = 2,
   382			.gpc_name = "hdcp",
   383			.path_names = (const char *[]){"hdcp"},
   384			.num_paths = 1,
   385		},
   386	};
   387	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

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

* Re: [PATCH V3 5/7] soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl
  2022-07-19  5:50 ` [PATCH V3 5/7] soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl Peng Fan (OSS)
@ 2022-07-20  9:58   ` kernel test robot
  0 siblings, 0 replies; 18+ messages in thread
From: kernel test robot @ 2022-07-20  9:58 UTC (permalink / raw)
  To: Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kbuild-all, kernel, festevam, linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, aisheng.dong, Peng Fan

Hi "Peng,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on shawnguo/for-next]
[also build test WARNING on linus/master v5.19-rc7 next-20220719]
[cannot apply to robh/for-next]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
base:   https://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux.git for-next
config: microblaze-allmodconfig (https://download.01.org/0day-ci/archive/20220720/202207201734.DwWC33xs-lkp@intel.com/config)
compiler: microblaze-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://github.com/intel-lab-lkp/linux/commit/73728b6c4380e24d833b690b7ead261e1fcdcbc2
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Peng-Fan-OSS/imx-add-i-MX8MP-hdmi-blk-ctrl-hdcp-hrv-and-vpu-blk-ctrl/20220719-135352
        git checkout 73728b6c4380e24d833b690b7ead261e1fcdcbc2
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=microblaze SHELL=/bin/bash drivers/soc/imx/ sound/soc/sof/imx/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

   drivers/soc/imx/imx8m-blk-ctrl.c:466:18: error: 'const struct imx8m_blk_ctrl_domain_data' has no member named 'path_names'
     466 |                 .path_names = (const char *[]){"g1"},
         |                  ^~~~~~~~~~
>> drivers/soc/imx/imx8m-blk-ctrl.c:466:31: warning: initialization of 'unsigned int' from 'const char **' makes integer from pointer without a cast [-Wint-conversion]
     466 |                 .path_names = (const char *[]){"g1"},
         |                               ^
   drivers/soc/imx/imx8m-blk-ctrl.c:466:31: note: (near initialization for 'imx8mp_vpu_blk_ctl_domain_data[0].mipi_phy_rst_mask')
   drivers/soc/imx/imx8m-blk-ctrl.c:467:18: error: 'const struct imx8m_blk_ctrl_domain_data' has no member named 'num_paths'
     467 |                 .num_paths = 1,
         |                  ^~~~~~~~~
>> drivers/soc/imx/imx8m-blk-ctrl.c:467:30: warning: excess elements in struct initializer
     467 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8m-blk-ctrl.c:467:30: note: (near initialization for 'imx8mp_vpu_blk_ctl_domain_data[0]')
   drivers/soc/imx/imx8m-blk-ctrl.c:476:18: error: 'const struct imx8m_blk_ctrl_domain_data' has no member named 'path_names'
     476 |                 .path_names = (const char *[]){"g2"},
         |                  ^~~~~~~~~~
   drivers/soc/imx/imx8m-blk-ctrl.c:476:31: warning: initialization of 'unsigned int' from 'const char **' makes integer from pointer without a cast [-Wint-conversion]
     476 |                 .path_names = (const char *[]){"g2"},
         |                               ^
   drivers/soc/imx/imx8m-blk-ctrl.c:476:31: note: (near initialization for 'imx8mp_vpu_blk_ctl_domain_data[1].mipi_phy_rst_mask')
   drivers/soc/imx/imx8m-blk-ctrl.c:477:18: error: 'const struct imx8m_blk_ctrl_domain_data' has no member named 'num_paths'
     477 |                 .num_paths = 1,
         |                  ^~~~~~~~~
   drivers/soc/imx/imx8m-blk-ctrl.c:477:30: warning: excess elements in struct initializer
     477 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8m-blk-ctrl.c:477:30: note: (near initialization for 'imx8mp_vpu_blk_ctl_domain_data[1]')
   drivers/soc/imx/imx8m-blk-ctrl.c:486:18: error: 'const struct imx8m_blk_ctrl_domain_data' has no member named 'path_names'
     486 |                 .path_names = (const char *[]){"vc8000e"},
         |                  ^~~~~~~~~~
   drivers/soc/imx/imx8m-blk-ctrl.c:486:31: warning: initialization of 'unsigned int' from 'const char **' makes integer from pointer without a cast [-Wint-conversion]
     486 |                 .path_names = (const char *[]){"vc8000e"},
         |                               ^
   drivers/soc/imx/imx8m-blk-ctrl.c:486:31: note: (near initialization for 'imx8mp_vpu_blk_ctl_domain_data[2].mipi_phy_rst_mask')
   drivers/soc/imx/imx8m-blk-ctrl.c:487:18: error: 'const struct imx8m_blk_ctrl_domain_data' has no member named 'num_paths'
     487 |                 .num_paths = 1,
         |                  ^~~~~~~~~
   drivers/soc/imx/imx8m-blk-ctrl.c:487:30: warning: excess elements in struct initializer
     487 |                 .num_paths = 1,
         |                              ^
   drivers/soc/imx/imx8m-blk-ctrl.c:487:30: note: (near initialization for 'imx8mp_vpu_blk_ctl_domain_data[2]')


vim +466 drivers/soc/imx/imx8m-blk-ctrl.c

   457	
   458	static const struct imx8m_blk_ctrl_domain_data imx8mp_vpu_blk_ctl_domain_data[] = {
   459		[IMX8MP_VPUBLK_PD_G1] = {
   460			.name = "vpublk-g1",
   461			.clk_names = (const char *[]){ "g1", },
   462			.num_clks = 1,
   463			.gpc_name = "g1",
   464			.rst_mask = BIT(1),
   465			.clk_mask = BIT(1),
 > 466			.path_names = (const char *[]){"g1"},
 > 467			.num_paths = 1,
   468		},
   469		[IMX8MP_VPUBLK_PD_G2] = {
   470			.name = "vpublk-g2",
   471			.clk_names = (const char *[]){ "g2", },
   472			.num_clks = 1,
   473			.gpc_name = "g2",
   474			.rst_mask = BIT(0),
   475			.clk_mask = BIT(0),
   476			.path_names = (const char *[]){"g2"},
   477			.num_paths = 1,
   478		},
   479		[IMX8MP_VPUBLK_PD_VC8000E] = {
   480			.name = "vpublk-vc8000e",
   481			.clk_names = (const char *[]){ "vc8000e", },
   482			.num_clks = 1,
   483			.gpc_name = "vc8000e",
   484			.rst_mask = BIT(2),
   485			.clk_mask = BIT(2),
   486			.path_names = (const char *[]){"vc8000e"},
   487			.num_paths = 1,
   488		},
   489	};
   490	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

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

* RE: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  2022-07-19 19:08       ` Krzysztof Kozlowski
@ 2022-07-21 10:38         ` Peng Fan
  2022-07-21 13:49           ` Krzysztof Kozlowski
  0 siblings, 1 reply; 18+ messages in thread
From: Peng Fan @ 2022-07-21 10:38 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, dl-linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, Aisheng Dong

> Subject: Re: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
> 
> On 19/07/2022 11:58, Peng Fan wrote:
> >>> +        interconnects:
> >>> +          items:
> >>> +            - description: G1 decoder interconnect
> >>> +            - description: G2 decoder interconnect
> >>> +            - description: VC8000E encoder interconnect
> >>> +
> >>> +        interconnect-names:
> >>> +          items:
> >>> +            - const: g1
> >>> +            - const: g2
> >>> +            - const: vc8000e
> >>
> >> Include interconnects+names in list of all properties and disallow
> >> them for other variants.
> >
> > I not understand well about
> > " Include interconnects+names in list of all properties ", could you
> > please explain a bit more?
> >
> > And there is already an "if" to check whether the compatible contains
> > " fsl,imx8mp-vpu-blk-ctrl" to make sure the interconnect valid for
> > i.MX8MP, so it is not valid to other variants.
> 
> Defining properties in some if: clause is not really readable and
> maintainable. The properties should be defined in top-level properties:.

Maybe I should also include i.MX8MM interconnect and make it
a separate patch, then i.MX8MP/i.MX8MM just use their own
names just like other properities. In final, as below:

Tow patch:
  1. Add interconnect property for i.MX8MM VPU BLK CTRL
  2. Add i.MX8MP VPU BLK CTRL dt bindings

In top-level:
+ interconnects:
+    maxItems: 3
 
+   interconnect-names:
+      maxItems: 3

For i.MX8MM
+        interconnects:
+          items:
+            - description: G1 decoder interconnect
+            - description: G2 decoder interconnect
+            - description: H1 encoder interconnect
+
+        interconnect-names:
+          items:
+            - const: g1
+            - const: g2
+            - const: h1

For i.MX8MP:
+        interconnects:
+          items:
+            - description: G1 decoder interconnect
+            - description: G2 decoder interconnect
+            - description: VC8000E encoder interconnect
+
+        interconnect-names:
+          items:
+            - const: g1
+            - const: g2
+            - const: vc8000e

How do you think?

Thanks,
Peng.

> 
> 
> Best regards,
> Krzysztof

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

* Re: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
  2022-07-21 10:38         ` Peng Fan
@ 2022-07-21 13:49           ` Krzysztof Kozlowski
  0 siblings, 0 replies; 18+ messages in thread
From: Krzysztof Kozlowski @ 2022-07-21 13:49 UTC (permalink / raw)
  To: Peng Fan, Peng Fan (OSS),
	robh+dt, krzysztof.kozlowski+dt, shawnguo, s.hauer, l.stach
  Cc: kernel, festevam, dl-linux-imx, laurent.pinchart, marex,
	paul.elder, aford173, Markus.Niebel, alexander.stein, devicetree,
	linux-arm-kernel, linux-kernel, Aisheng Dong

On 21/07/2022 12:38, Peng Fan wrote:
>> Subject: Re: [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP vpu blk ctrl
>>
>> On 19/07/2022 11:58, Peng Fan wrote:
>>>>> +        interconnects:
>>>>> +          items:
>>>>> +            - description: G1 decoder interconnect
>>>>> +            - description: G2 decoder interconnect
>>>>> +            - description: VC8000E encoder interconnect
>>>>> +
>>>>> +        interconnect-names:
>>>>> +          items:
>>>>> +            - const: g1
>>>>> +            - const: g2
>>>>> +            - const: vc8000e
>>>>
>>>> Include interconnects+names in list of all properties and disallow
>>>> them for other variants.
>>>
>>> I not understand well about
>>> " Include interconnects+names in list of all properties ", could you
>>> please explain a bit more?
>>>
>>> And there is already an "if" to check whether the compatible contains
>>> " fsl,imx8mp-vpu-blk-ctrl" to make sure the interconnect valid for
>>> i.MX8MP, so it is not valid to other variants.
>>
>> Defining properties in some if: clause is not really readable and
>> maintainable. The properties should be defined in top-level properties:.
> 
> Maybe I should also include i.MX8MM interconnect and make it
> a separate patch, then i.MX8MP/i.MX8MM just use their own
> names just like other properities. In final, as below:
> 
> Tow patch:
>   1. Add interconnect property for i.MX8MM VPU BLK CTRL
>   2. Add i.MX8MP VPU BLK CTRL dt bindings
> 
> In top-level:
> + interconnects:
> +    maxItems: 3
>  
> +   interconnect-names:
> +      maxItems: 3
> 
> For i.MX8MM
> +        interconnects:
> +          items:
> +            - description: G1 decoder interconnect
> +            - description: G2 decoder interconnect
> +            - description: H1 encoder interconnect
> +
> +        interconnect-names:
> +          items:
> +            - const: g1
> +            - const: g2
> +            - const: h1
> 
> For i.MX8MP:
> +        interconnects:
> +          items:
> +            - description: G1 decoder interconnect
> +            - description: G2 decoder interconnect
> +            - description: VC8000E encoder interconnect
> +
> +        interconnect-names:
> +          items:
> +            - const: g1
> +            - const: g2
> +            - const: vc8000e
> 
> How do you think?

I don't understand what is the question here to me. Shall I tell you
what to do or not to do with iMX 8MM? I don't know. I am not a
maintainer of that SoC.


Best regards,
Krzysztof

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

end of thread, other threads:[~2022-07-21 13:49 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-19  5:50 [PATCH V3 0/7] imx: add i.MX8MP hdmi blk ctrl hdcp/hrv and vpu blk ctrl Peng Fan (OSS)
2022-07-19  5:50 ` [PATCH V3 1/7] dt-bindings: power: imx8mp-power: add HDMI HDCP/HRV Peng Fan (OSS)
2022-07-19  5:50 ` [PATCH V3 2/7] dt-bindings: soc: imx: drop minItems for i.MX8MM vpu blk ctrl Peng Fan (OSS)
2022-07-19  9:52   ` Krzysztof Kozlowski
2022-07-19  5:50 ` [PATCH V3 3/7] dt-bindings: soc: imx: add i.MX8MP " Peng Fan (OSS)
2022-07-19  9:53   ` Krzysztof Kozlowski
2022-07-19  9:58     ` Peng Fan
2022-07-19 19:08       ` Krzysztof Kozlowski
2022-07-21 10:38         ` Peng Fan
2022-07-21 13:49           ` Krzysztof Kozlowski
2022-07-19  5:50 ` [PATCH V3 4/7] soc: imx: add i.MX8MP HDMI blk ctrl HDCP/HRV Peng Fan (OSS)
2022-07-19 15:34   ` kernel test robot
2022-07-20  0:51     ` Peng Fan
2022-07-20  8:27   ` kernel test robot
2022-07-19  5:50 ` [PATCH V3 5/7] soc: imx: imx8m-blk-ctrl: add i.MX8MP VPU blk ctrl Peng Fan (OSS)
2022-07-20  9:58   ` kernel test robot
2022-07-19  5:50 ` [PATCH V3 6/7] arm64: dts: imx8mp: add vpu pgc nodes Peng Fan (OSS)
2022-07-19  5:50 ` [PATCH V3 7/7] arm64: dts: imx8mp: add VPU blk ctrl node Peng Fan (OSS)

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