linux-samsung-soc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03
@ 2020-08-29 17:25 Krzysztof Kozlowski
  2020-08-29 17:25 ` [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250 Krzysztof Kozlowski
                   ` (4 more replies)
  0 siblings, 5 replies; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-08-29 17:25 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Krzysztof Kozlowski, Hoegeun Kwon,
	dri-devel, devicetree, linux-kernel, linux-arm-kernel,
	linux-samsung-soc
  Cc: Marek Szyprowski, Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

The samsung,s6e63j0x03 does not have enable GPIO, so do not require it.
This fixes dtbs_check warning:

  arch/arm/boot/dts/exynos3250-rinato.dt.yaml: panel@0: 'enable-gpios' is a required property

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 .../display/panel/samsung,amoled-mipi-dsi.yaml       | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml b/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml
index 96bdde9298e0..ccc482570d6a 100644
--- a/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml
+++ b/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml
@@ -12,6 +12,17 @@ maintainers:
 allOf:
   - $ref: panel-common.yaml#
 
+  - if:
+      properties:
+        compatible:
+          contains:
+            enum:
+              - samsung,s6e3ha2
+              - samsung,s6e3hf2
+    then:
+      required:
+        - enable-gpios
+
 properties:
   compatible:
     enum:
@@ -39,7 +50,6 @@ required:
   - vdd3-supply
   - vci-supply
   - reset-gpios
-  - enable-gpios
 
 additionalProperties: false
 
-- 
2.17.1


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

* [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250
  2020-08-29 17:25 [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Krzysztof Kozlowski
@ 2020-08-29 17:25 ` Krzysztof Kozlowski
  2020-08-31 11:03   ` Marek Szyprowski
  2020-09-01 10:15   ` Krzysztof Kozlowski
  2020-08-29 17:25 ` [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses " Krzysztof Kozlowski
                   ` (3 subsequent siblings)
  4 siblings, 2 replies; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-08-29 17:25 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Krzysztof Kozlowski, Hoegeun Kwon,
	dri-devel, devicetree, linux-kernel, linux-arm-kernel,
	linux-samsung-soc
  Cc: Marek Szyprowski, Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

The fixed clocks are kept under dedicated node fixed-rate-clocks, thus a
fake "reg" was added.  This is not correct with dtschema as fixed-clock
binding does not have a "reg" property:

  arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock@0: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+'

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 arch/arm/boot/dts/exynos3250.dtsi | 42 +++++++++++++------------------
 1 file changed, 17 insertions(+), 25 deletions(-)

diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
index d3fb45a56527..c67c70e46794 100644
--- a/arch/arm/boot/dts/exynos3250.dtsi
+++ b/arch/arm/boot/dts/exynos3250.dtsi
@@ -97,33 +97,25 @@
 		};
 	};
 
-	fixed-rate-clocks {
-		#address-cells = <1>;
-		#size-cells = <0>;
-
-		xusbxti: clock@0 {
-			compatible = "fixed-clock";
-			reg = <0>;
-			clock-frequency = <0>;
-			#clock-cells = <0>;
-			clock-output-names = "xusbxti";
-		};
+	xusbxti: clock-0 {
+		compatible = "fixed-clock";
+		clock-frequency = <0>;
+		#clock-cells = <0>;
+		clock-output-names = "xusbxti";
+	};
 
-		xxti: clock@1 {
-			compatible = "fixed-clock";
-			reg = <1>;
-			clock-frequency = <0>;
-			#clock-cells = <0>;
-			clock-output-names = "xxti";
-		};
+	xxti: clock-1 {
+		compatible = "fixed-clock";
+		clock-frequency = <0>;
+		#clock-cells = <0>;
+		clock-output-names = "xxti";
+	};
 
-		xtcxo: clock@2 {
-			compatible = "fixed-clock";
-			reg = <2>;
-			clock-frequency = <0>;
-			#clock-cells = <0>;
-			clock-output-names = "xtcxo";
-		};
+	xtcxo: clock-2 {
+		compatible = "fixed-clock";
+		clock-frequency = <0>;
+		#clock-cells = <0>;
+		clock-output-names = "xtcxo";
 	};
 
 	pmu {
-- 
2.17.1


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

* [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses in Exynos3250
  2020-08-29 17:25 [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Krzysztof Kozlowski
  2020-08-29 17:25 ` [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250 Krzysztof Kozlowski
@ 2020-08-29 17:25 ` Krzysztof Kozlowski
  2020-08-31  8:11   ` Marek Szyprowski
  2020-08-29 17:25 ` [PATCH 4/4] ARM: dts: exynos: Remove snps,dwc2 compatible " Krzysztof Kozlowski
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-08-29 17:25 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Krzysztof Kozlowski, Hoegeun Kwon,
	dri-devel, devicetree, linux-kernel, linux-arm-kernel,
	linux-samsung-soc
  Cc: Marek Szyprowski, Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

Commit 52005dece527 ("ARM: dts: Add assigned clock parents to CMU node
for exynos3250") added assigned clocks under Clock Management Unit to
fix hangs when accessing ISP registers.

This is not the place for it as CMU does not have a required "clocks"
property:

  arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock-controller@10030000: 'clocks' is a dependency of 'assigned-clocks'

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>

---

Not tested and I wonder whether actually correct. For example, what will
happen if devfreq (exynos-bus) is not built in?

Could someone verify it?
---
 arch/arm/boot/dts/exynos3250.dtsi | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
index c67c70e46794..6d467022d929 100644
--- a/arch/arm/boot/dts/exynos3250.dtsi
+++ b/arch/arm/boot/dts/exynos3250.dtsi
@@ -214,10 +214,6 @@
 			compatible = "samsung,exynos3250-cmu";
 			reg = <0x10030000 0x20000>;
 			#clock-cells = <1>;
-			assigned-clocks = <&cmu CLK_MOUT_ACLK_400_MCUISP_SUB>,
-					  <&cmu CLK_MOUT_ACLK_266_SUB>;
-			assigned-clock-parents = <&cmu CLK_FIN_PLL>,
-						 <&cmu CLK_FIN_PLL>;
 		};
 
 		cmu_dmc: clock-controller@105c0000 {
@@ -835,6 +831,8 @@
 			compatible = "samsung,exynos-bus";
 			clocks = <&cmu CLK_DIV_ACLK_400_MCUISP>;
 			clock-names = "bus";
+			assigned-clocks = <&cmu CLK_MOUT_ACLK_400_MCUISP_SUB>;
+			assigned-clock-parents = <&cmu CLK_FIN_PLL>;
 			operating-points-v2 = <&bus_mcuisp_opp_table>;
 			status = "disabled";
 		};
@@ -843,6 +841,8 @@
 			compatible = "samsung,exynos-bus";
 			clocks = <&cmu CLK_DIV_ACLK_266>;
 			clock-names = "bus";
+			assigned-clocks =  <&cmu CLK_MOUT_ACLK_266_SUB>;
+			assigned-clock-parents = <&cmu CLK_FIN_PLL>;
 			operating-points-v2 = <&bus_isp_opp_table>;
 			status = "disabled";
 		};
-- 
2.17.1


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

* [PATCH 4/4] ARM: dts: exynos: Remove snps,dwc2 compatible in Exynos3250
  2020-08-29 17:25 [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Krzysztof Kozlowski
  2020-08-29 17:25 ` [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250 Krzysztof Kozlowski
  2020-08-29 17:25 ` [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses " Krzysztof Kozlowski
@ 2020-08-29 17:25 ` Krzysztof Kozlowski
  2020-09-02 15:35   ` Krzysztof Kozlowski
  2020-08-29 21:06 ` [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Sam Ravnborg
  2020-09-14 18:16 ` [PATCH 1/4] dt-bindings: display: samsung, amoled-mipi-dsi: Do not require enable-gpios on samsung, s6e63j0x03 Rob Herring
  4 siblings, 1 reply; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-08-29 17:25 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Krzysztof Kozlowski, Hoegeun Kwon,
	dri-devel, devicetree, linux-kernel, linux-arm-kernel,
	linux-samsung-soc
  Cc: Marek Szyprowski, Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

The binding for DesignWare HS OTG USB 2.0 in Samsung SoCs take only one
compatible.  This fixes dtbs_check warnings like:

  arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: hsotg@12480000:
    compatible: ['samsung,s3c6400-hsotg', 'snps,dwc2'] is not valid under any of the given schemas (Possible causes of the failure):

Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
---
 arch/arm/boot/dts/exynos3250.dtsi | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
index 6d467022d929..78734c132822 100644
--- a/arch/arm/boot/dts/exynos3250.dtsi
+++ b/arch/arm/boot/dts/exynos3250.dtsi
@@ -350,7 +350,7 @@
 		};
 
 		hsotg: hsotg@12480000 {
-			compatible = "samsung,s3c6400-hsotg", "snps,dwc2";
+			compatible = "samsung,s3c6400-hsotg";
 			reg = <0x12480000 0x20000>;
 			interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>;
 			clocks = <&cmu CLK_USBOTG>;
-- 
2.17.1


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

* Re: [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03
  2020-08-29 17:25 [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2020-08-29 17:25 ` [PATCH 4/4] ARM: dts: exynos: Remove snps,dwc2 compatible " Krzysztof Kozlowski
@ 2020-08-29 21:06 ` Sam Ravnborg
  2020-09-14 18:16 ` [PATCH 1/4] dt-bindings: display: samsung, amoled-mipi-dsi: Do not require enable-gpios on samsung, s6e63j0x03 Rob Herring
  4 siblings, 0 replies; 13+ messages in thread
From: Sam Ravnborg @ 2020-08-29 21:06 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Thierry Reding, David Airlie, Daniel Vetter, Rob Herring,
	Kukjin Kim, Hoegeun Kwon, dri-devel, devicetree, linux-kernel,
	linux-arm-kernel, linux-samsung-soc, Marek Szyprowski,
	Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

On Sat, Aug 29, 2020 at 07:25:29PM +0200, Krzysztof Kozlowski wrote:
> The samsung,s6e63j0x03 does not have enable GPIO, so do not require it.
> This fixes dtbs_check warning:
> 
>   arch/arm/boot/dts/exynos3250-rinato.dt.yaml: panel@0: 'enable-gpios' is a required property
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>

I expect this patch is picked up with the dts fixes.

	Sam

> ---
>  .../display/panel/samsung,amoled-mipi-dsi.yaml       | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml b/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml
> index 96bdde9298e0..ccc482570d6a 100644
> --- a/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml
> +++ b/Documentation/devicetree/bindings/display/panel/samsung,amoled-mipi-dsi.yaml
> @@ -12,6 +12,17 @@ maintainers:
>  allOf:
>    - $ref: panel-common.yaml#
>  
> +  - if:
> +      properties:
> +        compatible:
> +          contains:
> +            enum:
> +              - samsung,s6e3ha2
> +              - samsung,s6e3hf2
> +    then:
> +      required:
> +        - enable-gpios
> +
>  properties:
>    compatible:
>      enum:
> @@ -39,7 +50,6 @@ required:
>    - vdd3-supply
>    - vci-supply
>    - reset-gpios
> -  - enable-gpios
>  
>  additionalProperties: false
>  
> -- 
> 2.17.1

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

* Re: [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses in Exynos3250
  2020-08-29 17:25 ` [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses " Krzysztof Kozlowski
@ 2020-08-31  8:11   ` Marek Szyprowski
  2020-08-31  8:19     ` Krzysztof Kozlowski
  0 siblings, 1 reply; 13+ messages in thread
From: Marek Szyprowski @ 2020-08-31  8:11 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Thierry Reding, Sam Ravnborg, David Airlie,
	Daniel Vetter, Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel,
	devicetree, linux-kernel, linux-arm-kernel, linux-samsung-soc
  Cc: Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

Hi Krzysztof,

On 29.08.2020 19:25, Krzysztof Kozlowski wrote:
> Commit 52005dece527 ("ARM: dts: Add assigned clock parents to CMU node
> for exynos3250") added assigned clocks under Clock Management Unit to
> fix hangs when accessing ISP registers.
>
> This is not the place for it as CMU does not have a required "clocks"
> property:
>
>    arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock-controller@10030000: 'clocks' is a dependency of 'assigned-clocks'
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
>
> ---
>
> Not tested and I wonder whether actually correct. For example, what will
> happen if devfreq (exynos-bus) is not built in?
>
> Could someone verify it?

Sorry, but this patch is not correct. Those clocks has noting with 
bus-freq. The assigned clocks property should stay where it is. Maybe 
one need to fix the schemas for dts verification. Those clocks has to be 
set (and so generic clock framework does) according to the assigned 
clocks properties once the clock controller is instantiated.

The only alternative would be to add exynos-subcmu variant to properly 
link CMU with the ISP power domain, but assuming that there is no Exynos 
3250 ISP driver in mainline (and probably never will be), it is safe to 
keep those clocks sourced from 24MHz crystal.


> ---
>   arch/arm/boot/dts/exynos3250.dtsi | 8 ++++----
>   1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
> index c67c70e46794..6d467022d929 100644
> --- a/arch/arm/boot/dts/exynos3250.dtsi
> +++ b/arch/arm/boot/dts/exynos3250.dtsi
> @@ -214,10 +214,6 @@
>   			compatible = "samsung,exynos3250-cmu";
>   			reg = <0x10030000 0x20000>;
>   			#clock-cells = <1>;
> -			assigned-clocks = <&cmu CLK_MOUT_ACLK_400_MCUISP_SUB>,
> -					  <&cmu CLK_MOUT_ACLK_266_SUB>;
> -			assigned-clock-parents = <&cmu CLK_FIN_PLL>,
> -						 <&cmu CLK_FIN_PLL>;
>   		};
>   
>   		cmu_dmc: clock-controller@105c0000 {
> @@ -835,6 +831,8 @@
>   			compatible = "samsung,exynos-bus";
>   			clocks = <&cmu CLK_DIV_ACLK_400_MCUISP>;
>   			clock-names = "bus";
> +			assigned-clocks = <&cmu CLK_MOUT_ACLK_400_MCUISP_SUB>;
> +			assigned-clock-parents = <&cmu CLK_FIN_PLL>;
>   			operating-points-v2 = <&bus_mcuisp_opp_table>;
>   			status = "disabled";
>   		};
> @@ -843,6 +841,8 @@
>   			compatible = "samsung,exynos-bus";
>   			clocks = <&cmu CLK_DIV_ACLK_266>;
>   			clock-names = "bus";
> +			assigned-clocks =  <&cmu CLK_MOUT_ACLK_266_SUB>;
> +			assigned-clock-parents = <&cmu CLK_FIN_PLL>;
>   			operating-points-v2 = <&bus_isp_opp_table>;
>   			status = "disabled";
>   		};

Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland


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

* Re: [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses in Exynos3250
  2020-08-31  8:11   ` Marek Szyprowski
@ 2020-08-31  8:19     ` Krzysztof Kozlowski
  2020-08-31  8:29       ` Marek Szyprowski
  2020-08-31  8:31       ` Krzysztof Kozlowski
  0 siblings, 2 replies; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-08-31  8:19 UTC (permalink / raw)
  To: Marek Szyprowski
  Cc: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel, devicetree,
	linux-kernel, linux-arm-kernel, linux-samsung-soc,
	Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

On Mon, Aug 31, 2020 at 10:11:02AM +0200, Marek Szyprowski wrote:
> Hi Krzysztof,
> 
> On 29.08.2020 19:25, Krzysztof Kozlowski wrote:
> > Commit 52005dece527 ("ARM: dts: Add assigned clock parents to CMU node
> > for exynos3250") added assigned clocks under Clock Management Unit to
> > fix hangs when accessing ISP registers.
> >
> > This is not the place for it as CMU does not have a required "clocks"
> > property:
> >
> >    arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock-controller@10030000: 'clocks' is a dependency of 'assigned-clocks'
> >
> > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> >
> > ---
> >
> > Not tested and I wonder whether actually correct. For example, what will
> > happen if devfreq (exynos-bus) is not built in?
> >
> > Could someone verify it?
> 
> Sorry, but this patch is not correct. Those clocks has noting with 
> bus-freq. The assigned clocks property should stay where it is. Maybe 
> one need to fix the schemas for dts verification. Those clocks has to be 
> set (and so generic clock framework does) according to the assigned 
> clocks properties once the clock controller is instantiated.
> 
> The only alternative would be to add exynos-subcmu variant to properly 
> link CMU with the ISP power domain, but assuming that there is no Exynos 
> 3250 ISP driver in mainline (and probably never will be), it is safe to 
> keep those clocks sourced from 24MHz crystal.

Thanks for the clarification.  Another solution to silence the warning
could be to add a "clocks" property for FIN_PLL, although the driver
actually does not take it.

This is the only remaining dtschema check warning on Exynos3250 so it
would be nice to at least silence it. My goal is to have all them
schema-correct, or as close as possible (for Exynos4 the camera node is
a trouble).

Best regards,
Krzysztof


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

* Re: [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses in Exynos3250
  2020-08-31  8:19     ` Krzysztof Kozlowski
@ 2020-08-31  8:29       ` Marek Szyprowski
  2020-08-31  8:31       ` Krzysztof Kozlowski
  1 sibling, 0 replies; 13+ messages in thread
From: Marek Szyprowski @ 2020-08-31  8:29 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel, devicetree,
	linux-kernel, linux-arm-kernel, linux-samsung-soc,
	Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

Hi Krzysztof,

On 31.08.2020 10:19, Krzysztof Kozlowski wrote:
> On Mon, Aug 31, 2020 at 10:11:02AM +0200, Marek Szyprowski wrote:
>> On 29.08.2020 19:25, Krzysztof Kozlowski wrote:
>>> Commit 52005dece527 ("ARM: dts: Add assigned clock parents to CMU node
>>> for exynos3250") added assigned clocks under Clock Management Unit to
>>> fix hangs when accessing ISP registers.
>>>
>>> This is not the place for it as CMU does not have a required "clocks"
>>> property:
>>>
>>>     arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock-controller@10030000: 'clocks' is a dependency of 'assigned-clocks'
>>>
>>> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
>>>
>>> ---
>>>
>>> Not tested and I wonder whether actually correct. For example, what will
>>> happen if devfreq (exynos-bus) is not built in?
>>>
>>> Could someone verify it?
>> Sorry, but this patch is not correct. Those clocks has noting with
>> bus-freq. The assigned clocks property should stay where it is. Maybe
>> one need to fix the schemas for dts verification. Those clocks has to be
>> set (and so generic clock framework does) according to the assigned
>> clocks properties once the clock controller is instantiated.
>>
>> The only alternative would be to add exynos-subcmu variant to properly
>> link CMU with the ISP power domain, but assuming that there is no Exynos
>> 3250 ISP driver in mainline (and probably never will be), it is safe to
>> keep those clocks sourced from 24MHz crystal.
> Thanks for the clarification.  Another solution to silence the warning
> could be to add a "clocks" property for FIN_PLL, although the driver
> actually does not take it.

Okay, that would be fine. It would make dts match better the hardware 
and this would even help generic clock framework to always instantiate 
CMU after the oscilator fixed-clock (there have been some hacks there at 
some point for that...)

Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland


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

* Re: [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses in Exynos3250
  2020-08-31  8:19     ` Krzysztof Kozlowski
  2020-08-31  8:29       ` Marek Szyprowski
@ 2020-08-31  8:31       ` Krzysztof Kozlowski
  1 sibling, 0 replies; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-08-31  8:31 UTC (permalink / raw)
  To: Marek Szyprowski
  Cc: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel, devicetree,
	linux-kernel, linux-arm-kernel, linux-samsung-soc,
	Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

On Mon, Aug 31, 2020 at 10:19:06AM +0200, Krzysztof Kozlowski wrote:
> On Mon, Aug 31, 2020 at 10:11:02AM +0200, Marek Szyprowski wrote:
> > Hi Krzysztof,
> > 
> > On 29.08.2020 19:25, Krzysztof Kozlowski wrote:
> > > Commit 52005dece527 ("ARM: dts: Add assigned clock parents to CMU node
> > > for exynos3250") added assigned clocks under Clock Management Unit to
> > > fix hangs when accessing ISP registers.
> > >
> > > This is not the place for it as CMU does not have a required "clocks"
> > > property:
> > >
> > >    arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock-controller@10030000: 'clocks' is a dependency of 'assigned-clocks'
> > >
> > > Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> > >
> > > ---
> > >
> > > Not tested and I wonder whether actually correct. For example, what will
> > > happen if devfreq (exynos-bus) is not built in?
> > >
> > > Could someone verify it?
> > 
> > Sorry, but this patch is not correct. Those clocks has noting with 
> > bus-freq. The assigned clocks property should stay where it is. Maybe 
> > one need to fix the schemas for dts verification. Those clocks has to be 
> > set (and so generic clock framework does) according to the assigned 
> > clocks properties once the clock controller is instantiated.
> > 
> > The only alternative would be to add exynos-subcmu variant to properly 
> > link CMU with the ISP power domain, but assuming that there is no Exynos 
> > 3250 ISP driver in mainline (and probably never will be), it is safe to 
> > keep those clocks sourced from 24MHz crystal.
> 
> Thanks for the clarification.  Another solution to silence the warning
> could be to add a "clocks" property for FIN_PLL, although the driver
> actually does not take it.
> 
> This is the only remaining dtschema check warning on Exynos3250 so it
> would be nice to at least silence it. My goal is to have all them
> schema-correct, or as close as possible (for Exynos4 the camera node is
> a trouble).

BTW, if you have some time, it would be awesome if you could test all
the series (on Exynos3250 obviously with this patch reverted):
https://github.com/krzk/linux/tree/for-next/dts-exynos-schema-cleanups

The Exynos5 cleanup is ongoing, so there will be more patches. But
Exynos3 and Exynos4 I finished.

Best regards,
Krzysztof


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

* Re: [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250
  2020-08-29 17:25 ` [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250 Krzysztof Kozlowski
@ 2020-08-31 11:03   ` Marek Szyprowski
  2020-09-01 10:15   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 13+ messages in thread
From: Marek Szyprowski @ 2020-08-31 11:03 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Thierry Reding, Sam Ravnborg, David Airlie,
	Daniel Vetter, Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel,
	devicetree, linux-kernel, linux-arm-kernel, linux-samsung-soc
  Cc: Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

On 29.08.2020 19:25, Krzysztof Kozlowski wrote:
> The fixed clocks are kept under dedicated node fixed-rate-clocks, thus a
> fake "reg" was added.  This is not correct with dtschema as fixed-clock
> binding does not have a "reg" property:
>
>    arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock@0: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+'
>
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Tested-by: Marek Szyprowski <m.szyprowski@samsung.com>
> ---
>   arch/arm/boot/dts/exynos3250.dtsi | 42 +++++++++++++------------------
>   1 file changed, 17 insertions(+), 25 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi
> index d3fb45a56527..c67c70e46794 100644
> --- a/arch/arm/boot/dts/exynos3250.dtsi
> +++ b/arch/arm/boot/dts/exynos3250.dtsi
> @@ -97,33 +97,25 @@
>   		};
>   	};
>   
> -	fixed-rate-clocks {
> -		#address-cells = <1>;
> -		#size-cells = <0>;
> -
> -		xusbxti: clock@0 {
> -			compatible = "fixed-clock";
> -			reg = <0>;
> -			clock-frequency = <0>;
> -			#clock-cells = <0>;
> -			clock-output-names = "xusbxti";
> -		};
> +	xusbxti: clock-0 {
> +		compatible = "fixed-clock";
> +		clock-frequency = <0>;
> +		#clock-cells = <0>;
> +		clock-output-names = "xusbxti";
> +	};
>   
> -		xxti: clock@1 {
> -			compatible = "fixed-clock";
> -			reg = <1>;
> -			clock-frequency = <0>;
> -			#clock-cells = <0>;
> -			clock-output-names = "xxti";
> -		};
> +	xxti: clock-1 {
> +		compatible = "fixed-clock";
> +		clock-frequency = <0>;
> +		#clock-cells = <0>;
> +		clock-output-names = "xxti";
> +	};
>   
> -		xtcxo: clock@2 {
> -			compatible = "fixed-clock";
> -			reg = <2>;
> -			clock-frequency = <0>;
> -			#clock-cells = <0>;
> -			clock-output-names = "xtcxo";
> -		};
> +	xtcxo: clock-2 {
> +		compatible = "fixed-clock";
> +		clock-frequency = <0>;
> +		#clock-cells = <0>;
> +		clock-output-names = "xtcxo";
>   	};
>   
>   	pmu {

Best regards
-- 
Marek Szyprowski, PhD
Samsung R&D Institute Poland


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

* Re: [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250
  2020-08-29 17:25 ` [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250 Krzysztof Kozlowski
  2020-08-31 11:03   ` Marek Szyprowski
@ 2020-09-01 10:15   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-09-01 10:15 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel, devicetree,
	linux-kernel, linux-arm-kernel, linux-samsung-soc
  Cc: Marek Szyprowski, Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

On Sat, Aug 29, 2020 at 07:25:30PM +0200, Krzysztof Kozlowski wrote:
> The fixed clocks are kept under dedicated node fixed-rate-clocks, thus a
> fake "reg" was added.  This is not correct with dtschema as fixed-clock
> binding does not have a "reg" property:
> 
>   arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: clock@0: 'reg' does not match any of the regexes: 'pinctrl-[0-9]+'
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  arch/arm/boot/dts/exynos3250.dtsi | 42 +++++++++++++------------------
>  1 file changed, 17 insertions(+), 25 deletions(-)

Applied.

Best regards,
Krzysztof


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

* Re: [PATCH 4/4] ARM: dts: exynos: Remove snps,dwc2 compatible in Exynos3250
  2020-08-29 17:25 ` [PATCH 4/4] ARM: dts: exynos: Remove snps,dwc2 compatible " Krzysztof Kozlowski
@ 2020-09-02 15:35   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 13+ messages in thread
From: Krzysztof Kozlowski @ 2020-09-02 15:35 UTC (permalink / raw)
  To: Thierry Reding, Sam Ravnborg, David Airlie, Daniel Vetter,
	Rob Herring, Kukjin Kim, Hoegeun Kwon, dri-devel, devicetree,
	linux-kernel, linux-arm-kernel, linux-samsung-soc
  Cc: Marek Szyprowski, Bartlomiej Zolnierkiewicz, Sylwester Nawrocki

On Sat, Aug 29, 2020 at 07:25:32PM +0200, Krzysztof Kozlowski wrote:
> The binding for DesignWare HS OTG USB 2.0 in Samsung SoCs take only one
> compatible.  This fixes dtbs_check warnings like:
> 
>   arch/arm/boot/dts/exynos3250-artik5-eval.dt.yaml: hsotg@12480000:
>     compatible: ['samsung,s3c6400-hsotg', 'snps,dwc2'] is not valid under any of the given schemas (Possible causes of the failure):
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  arch/arm/boot/dts/exynos3250.dtsi | 2 +-

Applied.

Best regards,
Krzysztof


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

* Re: [PATCH 1/4] dt-bindings: display: samsung, amoled-mipi-dsi: Do not require enable-gpios on samsung, s6e63j0x03
  2020-08-29 17:25 [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Krzysztof Kozlowski
                   ` (3 preceding siblings ...)
  2020-08-29 21:06 ` [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Sam Ravnborg
@ 2020-09-14 18:16 ` Rob Herring
  4 siblings, 0 replies; 13+ messages in thread
From: Rob Herring @ 2020-09-14 18:16 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Daniel Vetter, linux-kernel, Bartlomiej Zolnierkiewicz,
	Rob Herring, linux-samsung-soc, devicetree, Sam Ravnborg,
	Marek Szyprowski, linux-arm-kernel, David Airlie,
	Sylwester Nawrocki, Hoegeun Kwon, dri-devel, Kukjin Kim,
	Thierry Reding

On Sat, 29 Aug 2020 19:25:29 +0200, Krzysztof Kozlowski wrote:
> The samsung,s6e63j0x03 does not have enable GPIO, so do not require it.
> This fixes dtbs_check warning:
> 
>   arch/arm/boot/dts/exynos3250-rinato.dt.yaml: panel@0: 'enable-gpios' is a required property
> 
> Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
> ---
>  .../display/panel/samsung,amoled-mipi-dsi.yaml       | 12 +++++++++++-
>  1 file changed, 11 insertions(+), 1 deletion(-)
> 

Applied, thanks!

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

end of thread, other threads:[~2020-09-14 18:16 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-08-29 17:25 [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Krzysztof Kozlowski
2020-08-29 17:25 ` [RFT 2/4] ARM: dts: exynos: Move fixed clocks under root node in Exynos3250 Krzysztof Kozlowski
2020-08-31 11:03   ` Marek Szyprowski
2020-09-01 10:15   ` Krzysztof Kozlowski
2020-08-29 17:25 ` [RFT 3/4] ARM: dts: exynos: Move CMU assigned ISP clocks to buses " Krzysztof Kozlowski
2020-08-31  8:11   ` Marek Szyprowski
2020-08-31  8:19     ` Krzysztof Kozlowski
2020-08-31  8:29       ` Marek Szyprowski
2020-08-31  8:31       ` Krzysztof Kozlowski
2020-08-29 17:25 ` [PATCH 4/4] ARM: dts: exynos: Remove snps,dwc2 compatible " Krzysztof Kozlowski
2020-09-02 15:35   ` Krzysztof Kozlowski
2020-08-29 21:06 ` [PATCH 1/4] dt-bindings: display: samsung,amoled-mipi-dsi: Do not require enable-gpios on samsung,s6e63j0x03 Sam Ravnborg
2020-09-14 18:16 ` [PATCH 1/4] dt-bindings: display: samsung, amoled-mipi-dsi: Do not require enable-gpios on samsung, s6e63j0x03 Rob Herring

This is a public inbox, see mirroring instructions
on how to clone and mirror all data and code used for this inbox