2023-01-27 19:42:53

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 0/8] dt-bindings: phy/samsung: move MIPI and DP phys under PMU

The MIPI and DisplayPort phys are actually part of the Power Management
Unit system controller, thus allow them as its children, instead of
specifying as separate device nodes with syscon phandle.

Dependencies
============
If entire patchset is okay, then it can go via separate trees:
A. I will take first soc patch.
B. phy patches #2-#5 are independent and can go via phy tree.
C. DTS patches depend on (B above), thus they will wait one cycle and get
applied later.

Best regards,
Krzysztof

Krzysztof Kozlowski (8):
dt-bindings: soc: samsung: exynos-pmu: allow phys as child
dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle
dt-bindings: phy: samsung,mipi-video-phy: deprecate syscon phandle
phy: samsung,dp-video-phy: deprecate syscon phandle
phy: samsung,mipi-video-phy: deprecate syscon phandle
ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5420
ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5250
arm64: dts: exynos: move MIPI phy to PMU node in Exynos5433

.../bindings/phy/samsung,dp-video-phy.yaml | 5 +-
.../bindings/phy/samsung,mipi-video-phy.yaml | 11 ++-
.../bindings/soc/samsung/exynos-pmu.yaml | 71 +++++++++++++++----
arch/arm/boot/dts/exynos5250.dtsi | 24 +++----
arch/arm/boot/dts/exynos5420.dtsi | 24 +++----
arch/arm64/boot/dts/exynos/exynos5433.dtsi | 19 +++--
drivers/phy/samsung/phy-exynos-dp-video.c | 7 +-
drivers/phy/samsung/phy-exynos-mipi-video.c | 7 +-
8 files changed, 105 insertions(+), 63 deletions(-)

--
2.34.1



2023-01-27 19:43:04

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 4/8] phy: samsung,dp-video-phy: deprecate syscon phandle

The DisplayPort phy is actually part of the Power Management Unit system
controller, thus it should be its child, instead of sibling node with
syscon phandle.

Signed-off-by: Krzysztof Kozlowski <[email protected]>

---
---
drivers/phy/samsung/phy-exynos-dp-video.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/phy/samsung/phy-exynos-dp-video.c b/drivers/phy/samsung/phy-exynos-dp-video.c
index 2b670ef91deb..6069fedbd8f3 100644
--- a/drivers/phy/samsung/phy-exynos-dp-video.c
+++ b/drivers/phy/samsung/phy-exynos-dp-video.c
@@ -83,8 +83,11 @@ static int exynos_dp_video_phy_probe(struct platform_device *pdev)
if (!state)
return -ENOMEM;

- state->regs = syscon_regmap_lookup_by_phandle(dev->of_node,
- "samsung,pmu-syscon");
+ state->regs = syscon_node_to_regmap(dev->parent->of_node);
+ if (IS_ERR(state->regs))
+ /* Backwards compatible way */
+ state->regs = syscon_regmap_lookup_by_phandle(dev->of_node,
+ "samsung,pmu-syscon");
if (IS_ERR(state->regs)) {
dev_err(dev, "Failed to lookup PMU regmap\n");
return PTR_ERR(state->regs);
--
2.34.1


2023-01-27 19:43:50

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 2/8] dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle

The DisplayPort phy is actually part of the Power Management Unit system
controller, thus it should be its child, instead of sibling node with
syscon phandle.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../devicetree/bindings/phy/samsung,dp-video-phy.yaml | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/phy/samsung,dp-video-phy.yaml b/Documentation/devicetree/bindings/phy/samsung,dp-video-phy.yaml
index b03b2f00cc5b..3bee3f8733f7 100644
--- a/Documentation/devicetree/bindings/phy/samsung,dp-video-phy.yaml
+++ b/Documentation/devicetree/bindings/phy/samsung,dp-video-phy.yaml
@@ -22,13 +22,13 @@ properties:

samsung,pmu-syscon:
$ref: /schemas/types.yaml#/definitions/phandle
+ deprecated: true
description:
- Phandle to PMU system controller interface.
+ Phandle to PMU system controller interface (if not a child of PMU).

required:
- compatible
- "#phy-cells"
- - samsung,pmu-syscon

additionalProperties: false

@@ -36,6 +36,5 @@ examples:
- |
phy {
compatible = "samsung,exynos5420-dp-video-phy";
- samsung,pmu-syscon = <&pmu_system_controller>;
#phy-cells = <0>;
};
--
2.34.1


2023-01-27 19:44:29

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 6/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5420

The DisplayPort and MIPI phys are actually part of the Power Management
Unit system controller. They do not have their own address space, thus
keeping the nodes under soc causes warnings:

exynos5420-smdk5420.dtb: soc: dp-video-phy: {'compatible': ['samsung,exynos5420-dp-video-phy'],
'samsung,pmu-syscon': [[11]], '#phy-cells': [[0]], 'phandle': [[16]]} should not be valid under {'type': 'object'}

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
arch/arm/boot/dts/exynos5420.dtsi | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi
index b1051a7d07af..6cdb1a832fb9 100644
--- a/arch/arm/boot/dts/exynos5420.dtsi
+++ b/arch/arm/boot/dts/exynos5420.dtsi
@@ -585,18 +585,6 @@ spi_2: spi@12d40000 {
status = "disabled";
};

- dp_phy: dp-video-phy {
- compatible = "samsung,exynos5420-dp-video-phy";
- samsung,pmu-syscon = <&pmu_system_controller>;
- #phy-cells = <0>;
- };
-
- mipi_phy: mipi-video-phy {
- compatible = "samsung,exynos5420-mipi-video-phy";
- syscon = <&pmu_system_controller>;
- #phy-cells = <1>;
- };
-
dsi: dsi@14500000 {
compatible = "samsung,exynos5410-mipi-dsi";
reg = <0x14500000 0x10000>;
@@ -822,7 +810,7 @@ jpeg_1: jpeg@11f60000 {
};

pmu_system_controller: system-controller@10040000 {
- compatible = "samsung,exynos5420-pmu", "syscon";
+ compatible = "samsung,exynos5420-pmu", "simple-mfd", "syscon";
reg = <0x10040000 0x5000>;
clock-names = "clkout16";
clocks = <&clock CLK_FIN_PLL>;
@@ -830,6 +818,16 @@ pmu_system_controller: system-controller@10040000 {
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
+
+ dp_phy: dp-phy {
+ compatible = "samsung,exynos5420-dp-video-phy";
+ #phy-cells = <0>;
+ };
+
+ mipi_phy: mipi-phy {
+ compatible = "samsung,exynos5420-mipi-video-phy";
+ #phy-cells = <1>;
+ };
};

tmu_cpu0: tmu@10060000 {
--
2.34.1


2023-01-27 19:54:35

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 1/8] dt-bindings: soc: samsung: exynos-pmu: allow phys as child

The MIPI and DisplayPort phys are actually part of the Power Management
Unit system controller, thus allow them as its children, instead of
specifying as separate device nodes with syscon phandle.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/soc/samsung/exynos-pmu.yaml | 71 +++++++++++++++----
1 file changed, 57 insertions(+), 14 deletions(-)

diff --git a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
index 13bb8dfcefe6..f7c141dd11ec 100644
--- a/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
+++ b/Documentation/devicetree/bindings/soc/samsung/exynos-pmu.yaml
@@ -31,20 +31,28 @@ select:

properties:
compatible:
- items:
- - enum:
- - samsung,exynos3250-pmu
- - samsung,exynos4210-pmu
- - samsung,exynos4412-pmu
- - samsung,exynos5250-pmu
- - samsung,exynos5260-pmu
- - samsung,exynos5410-pmu
- - samsung,exynos5420-pmu
- - samsung,exynos5433-pmu
- - samsung,exynos7-pmu
- - samsung,exynos850-pmu
- - samsung-s5pv210-pmu
- - const: syscon
+ oneOf:
+ - items:
+ - enum:
+ - samsung,exynos3250-pmu
+ - samsung,exynos4210-pmu
+ - samsung,exynos4412-pmu
+ - samsung,exynos5250-pmu
+ - samsung,exynos5260-pmu
+ - samsung,exynos5410-pmu
+ - samsung,exynos5420-pmu
+ - samsung,exynos5433-pmu
+ - samsung,exynos7-pmu
+ - samsung,exynos850-pmu
+ - samsung-s5pv210-pmu
+ - const: syscon
+ - items:
+ - enum:
+ - samsung,exynos5250-pmu
+ - samsung,exynos5420-pmu
+ - samsung,exynos5433-pmu
+ - const: simple-mfd
+ - const: syscon

reg:
maxItems: 1
@@ -64,6 +72,10 @@ properties:
minItems: 1
maxItems: 32

+ dp-phy:
+ $ref: /schemas/phy/samsung,dp-video-phy.yaml
+ unevaluatedProperties: false
+
interrupt-controller:
description:
Some PMUs are capable of behaving as an interrupt controller (mostly
@@ -74,6 +86,10 @@ properties:
Must be identical to the that of the parent interrupt controller.
const: 3

+ mipi-phy:
+ $ref: /schemas/phy/samsung,mipi-video-phy.yaml
+ unevaluatedProperties: false
+
reboot-mode:
$ref: /schemas/power/reset/syscon-reboot-mode.yaml
type: object
@@ -117,6 +133,23 @@ allOf:
- clock-names
- clocks

+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - samsung,exynos5250-pmu
+ - samsung,exynos5420-pmu
+ - samsung,exynos5433-pmu
+ then:
+ properties:
+ dp-phy: true
+ mipi-phy: true
+ else:
+ properties:
+ dp-phy: false
+ mipi-phy: false
+
examples:
- |
#include <dt-bindings/clock/exynos5250.h>
@@ -130,4 +163,14 @@ examples:
#clock-cells = <1>;
clock-names = "clkout16";
clocks = <&clock CLK_FIN_PLL>;
+
+ dp-phy {
+ compatible = "samsung,exynos5250-dp-video-phy";
+ #phy-cells = <0>;
+ };
+
+ mipi-phy {
+ compatible = "samsung,s5pv210-mipi-video-phy";
+ #phy-cells = <1>;
+ };
};
--
2.34.1


2023-01-27 19:56:26

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 8/8] arm64: dts: exynos: move MIPI phy to PMU node in Exynos5433

The MIPI phy is actually part of the Power Management Unit system
controller. It does not have own address space, thus keeping the node
under soc causes warnings:

exynos5433-tm2e.dtb: soc@0: video-phy: {'compatible': ['samsung,exynos5433-mipi-video-phy'], ...
should not be valid under {'type': 'object'}

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
arch/arm64/boot/dts/exynos/exynos5433.dtsi | 19 +++++++++----------
1 file changed, 9 insertions(+), 10 deletions(-)

diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
index 9da24fe958a3..842976addbd9 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
@@ -911,12 +911,20 @@ pinctrl_touch: pinctrl@14ce0000 {
};

pmu_system_controller: system-controller@105c0000 {
- compatible = "samsung,exynos5433-pmu", "syscon";
+ compatible = "samsung,exynos5433-pmu", "simple-mfd", "syscon";
reg = <0x105c0000 0x5008>;
#clock-cells = <1>;
clock-names = "clkout16";
clocks = <&xxti>;

+ mipi_phy: mipi-phy {
+ compatible = "samsung,exynos5433-mipi-video-phy";
+ #phy-cells = <1>;
+ samsung,cam0-sysreg = <&syscon_cam0>;
+ samsung,cam1-sysreg = <&syscon_cam1>;
+ samsung,disp-sysreg = <&syscon_disp>;
+ };
+
reboot: syscon-reboot {
compatible = "syscon-reboot";
regmap = <&pmu_system_controller>;
@@ -936,15 +944,6 @@ gic: interrupt-controller@11001000 {
interrupts = <GIC_PPI 9 0xf04>;
};

- mipi_phy: video-phy {
- compatible = "samsung,exynos5433-mipi-video-phy";
- #phy-cells = <1>;
- samsung,pmu-syscon = <&pmu_system_controller>;
- samsung,cam0-sysreg = <&syscon_cam0>;
- samsung,cam1-sysreg = <&syscon_cam1>;
- samsung,disp-sysreg = <&syscon_disp>;
- };
-
decon: decon@13800000 {
compatible = "samsung,exynos5433-decon";
reg = <0x13800000 0x2104>;
--
2.34.1


2023-01-27 19:56:53

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 3/8] dt-bindings: phy: samsung,mipi-video-phy: deprecate syscon phandle

The MIPI phy is actually part of the Power Management Unit system
controller, thus it should be its child, instead of sibling node with
syscon phandle.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/phy/samsung,mipi-video-phy.yaml | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)

diff --git a/Documentation/devicetree/bindings/phy/samsung,mipi-video-phy.yaml b/Documentation/devicetree/bindings/phy/samsung,mipi-video-phy.yaml
index 415440aaad89..b2250e4a6b1b 100644
--- a/Documentation/devicetree/bindings/phy/samsung,mipi-video-phy.yaml
+++ b/Documentation/devicetree/bindings/phy/samsung,mipi-video-phy.yaml
@@ -35,15 +35,18 @@ properties:

syscon:
$ref: /schemas/types.yaml#/definitions/phandle
+ deprecated: true
description:
Phandle to PMU system controller interface, valid only for
- samsung,s5pv210-mipi-video-phy and samsung,exynos5420-mipi-video-phy.
+ samsung,s5pv210-mipi-video-phy and samsung,exynos5420-mipi-video-phy (if
+ not a child of PMU).

samsung,pmu-syscon:
$ref: /schemas/types.yaml#/definitions/phandle
+ deprecated: true
description:
Phandle to PMU system controller interface, valid for
- samsung,exynos5433-mipi-video-phy.
+ samsung,exynos5433-mipi-video-phy (if not a child of PMU).

samsung,disp-sysreg:
$ref: /schemas/types.yaml#/definitions/phandle
@@ -81,13 +84,10 @@ allOf:
samsung,disp-sysreg: false
samsung,cam0-sysreg: false
samsung,cam1-sysreg: false
- required:
- - syscon
else:
properties:
syscon: false
required:
- - samsung,pmu-syscon
- samsung,disp-sysreg
- samsung,cam0-sysreg
- samsung,cam1-sysreg
@@ -99,7 +99,6 @@ examples:
phy {
compatible = "samsung,exynos5433-mipi-video-phy";
#phy-cells = <1>;
- samsung,pmu-syscon = <&pmu_system_controller>;
samsung,cam0-sysreg = <&syscon_cam0>;
samsung,cam1-sysreg = <&syscon_cam1>;
samsung,disp-sysreg = <&syscon_disp>;
--
2.34.1


2023-01-27 19:57:43

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 7/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5250

The DisplayPort and MIPI phys are actually part of the Power Management
Unit system controller. They do not have their own address space, thus
keeping the nodes under soc causes warnings:

exynos5250-arndale.dtb: soc: video-phy-0: {'compatible': ['samsung,exynos5250-dp-video-phy'],
'samsung,pmu-syscon': [[20]], '#phy-cells': [[0]], 'phandle': [[24]]} should not be valid under {'type': 'object'}

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
arch/arm/boot/dts/exynos5250.dtsi | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
index 97e89859ba3d..a35c00f055a3 100644
--- a/arch/arm/boot/dts/exynos5250.dtsi
+++ b/arch/arm/boot/dts/exynos5250.dtsi
@@ -290,7 +290,7 @@ pinctrl_3: pinctrl@3860000 {
};

pmu_system_controller: system-controller@10040000 {
- compatible = "samsung,exynos5250-pmu", "syscon";
+ compatible = "samsung,exynos5250-pmu", "simple-mfd", "syscon";
reg = <0x10040000 0x5000>;
clock-names = "clkout16";
clocks = <&clock CLK_FIN_PLL>;
@@ -298,6 +298,16 @@ pmu_system_controller: system-controller@10040000 {
interrupt-controller;
#interrupt-cells = <3>;
interrupt-parent = <&gic>;
+
+ dp_phy: dp-phy {
+ compatible = "samsung,exynos5250-dp-video-phy";
+ #phy-cells = <0>;
+ };
+
+ mipi_phy: mipi-phy {
+ compatible = "samsung,s5pv210-mipi-video-phy";
+ #phy-cells = <1>;
+ };
};

watchdog@101d0000 {
@@ -810,18 +820,6 @@ mixer: mixer@14450000 {
status = "disabled";
};

- dp_phy: video-phy-0 {
- compatible = "samsung,exynos5250-dp-video-phy";
- samsung,pmu-syscon = <&pmu_system_controller>;
- #phy-cells = <0>;
- };
-
- mipi_phy: video-phy-1 {
- compatible = "samsung,s5pv210-mipi-video-phy";
- #phy-cells = <1>;
- syscon = <&pmu_system_controller>;
- };
-
dsi_0: dsi@14500000 {
compatible = "samsung,exynos4210-mipi-dsi";
reg = <0x14500000 0x10000>;
--
2.34.1


2023-01-27 20:00:59

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 5/8] phy: samsung,mipi-video-phy: deprecate syscon phandle

The MIPI phy is actually part of the Power Management Unit system
controller, thus it should be its child, instead of sibling node with
syscon phandle.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
drivers/phy/samsung/phy-exynos-mipi-video.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/drivers/phy/samsung/phy-exynos-mipi-video.c b/drivers/phy/samsung/phy-exynos-mipi-video.c
index c1df1ef3ee3c..a7f67857e5b2 100644
--- a/drivers/phy/samsung/phy-exynos-mipi-video.c
+++ b/drivers/phy/samsung/phy-exynos-mipi-video.c
@@ -298,7 +298,7 @@ static int exynos_mipi_video_phy_probe(struct platform_device *pdev)
struct device *dev = &pdev->dev;
struct device_node *np = dev->of_node;
struct phy_provider *phy_provider;
- unsigned int i;
+ unsigned int i = 0;

phy_dev = of_device_get_match_data(dev);
if (!phy_dev)
@@ -308,7 +308,10 @@ static int exynos_mipi_video_phy_probe(struct platform_device *pdev)
if (!state)
return -ENOMEM;

- for (i = 0; i < phy_dev->num_regmaps; i++) {
+ state->regmaps[i] = syscon_node_to_regmap(dev->parent->of_node);
+ if (!IS_ERR(state->regmaps[i]))
+ i++;
+ for (; i < phy_dev->num_regmaps; i++) {
state->regmaps[i] = syscon_regmap_lookup_by_phandle(np,
phy_dev->regmap_names[i]);
if (IS_ERR(state->regmaps[i]))
--
2.34.1


2023-01-27 21:23:43

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 1/8] dt-bindings: soc: samsung: exynos-pmu: allow phys as child


On Fri, 27 Jan 2023 20:40:50 +0100, Krzysztof Kozlowski wrote:
> The MIPI and DisplayPort phys are actually part of the Power Management
> Unit system controller, thus allow them as its children, instead of
> specifying as separate device nodes with syscon phandle.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/soc/samsung/exynos-pmu.yaml | 71 +++++++++++++++----
> 1 file changed, 57 insertions(+), 14 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2023-01-27 22:16:55

by Marek Szyprowski

[permalink] [raw]
Subject: Re: [PATCH 8/8] arm64: dts: exynos: move MIPI phy to PMU node in Exynos5433

On 27.01.2023 20:40, Krzysztof Kozlowski wrote:
> The MIPI phy is actually part of the Power Management Unit system
> controller. It does not have own address space, thus keeping the node
> under soc causes warnings:
>
> exynos5433-tm2e.dtb: soc@0: video-phy: {'compatible': ['samsung,exynos5433-mipi-video-phy'], ...
> should not be valid under {'type': 'object'}
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
Tested-by: Marek Szyprowski <[email protected]>
> ---
> arch/arm64/boot/dts/exynos/exynos5433.dtsi | 19 +++++++++----------
> 1 file changed, 9 insertions(+), 10 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/exynos/exynos5433.dtsi b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
> index 9da24fe958a3..842976addbd9 100644
> --- a/arch/arm64/boot/dts/exynos/exynos5433.dtsi
> +++ b/arch/arm64/boot/dts/exynos/exynos5433.dtsi
> @@ -911,12 +911,20 @@ pinctrl_touch: pinctrl@14ce0000 {
> };
>
> pmu_system_controller: system-controller@105c0000 {
> - compatible = "samsung,exynos5433-pmu", "syscon";
> + compatible = "samsung,exynos5433-pmu", "simple-mfd", "syscon";
> reg = <0x105c0000 0x5008>;
> #clock-cells = <1>;
> clock-names = "clkout16";
> clocks = <&xxti>;
>
> + mipi_phy: mipi-phy {
> + compatible = "samsung,exynos5433-mipi-video-phy";
> + #phy-cells = <1>;
> + samsung,cam0-sysreg = <&syscon_cam0>;
> + samsung,cam1-sysreg = <&syscon_cam1>;
> + samsung,disp-sysreg = <&syscon_disp>;
> + };
> +
> reboot: syscon-reboot {
> compatible = "syscon-reboot";
> regmap = <&pmu_system_controller>;
> @@ -936,15 +944,6 @@ gic: interrupt-controller@11001000 {
> interrupts = <GIC_PPI 9 0xf04>;
> };
>
> - mipi_phy: video-phy {
> - compatible = "samsung,exynos5433-mipi-video-phy";
> - #phy-cells = <1>;
> - samsung,pmu-syscon = <&pmu_system_controller>;
> - samsung,cam0-sysreg = <&syscon_cam0>;
> - samsung,cam1-sysreg = <&syscon_cam1>;
> - samsung,disp-sysreg = <&syscon_disp>;
> - };
> -
> decon: decon@13800000 {
> compatible = "samsung,exynos5433-decon";
> reg = <0x13800000 0x2104>;

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


2023-01-27 22:54:03

by Marek Szyprowski

[permalink] [raw]
Subject: Re: [PATCH 7/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5250

On 27.01.2023 20:40, Krzysztof Kozlowski wrote:
> The DisplayPort and MIPI phys are actually part of the Power Management
> Unit system controller. They do not have their own address space, thus
> keeping the nodes under soc causes warnings:
>
> exynos5250-arndale.dtb: soc: video-phy-0: {'compatible': ['samsung,exynos5250-dp-video-phy'],
> 'samsung,pmu-syscon': [[20]], '#phy-cells': [[0]], 'phandle': [[24]]} should not be valid under {'type': 'object'}
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
Tested-by: Marek Szyprowski <[email protected]>
> ---
> arch/arm/boot/dts/exynos5250.dtsi | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi
> index 97e89859ba3d..a35c00f055a3 100644
> --- a/arch/arm/boot/dts/exynos5250.dtsi
> +++ b/arch/arm/boot/dts/exynos5250.dtsi
> @@ -290,7 +290,7 @@ pinctrl_3: pinctrl@3860000 {
> };
>
> pmu_system_controller: system-controller@10040000 {
> - compatible = "samsung,exynos5250-pmu", "syscon";
> + compatible = "samsung,exynos5250-pmu", "simple-mfd", "syscon";
> reg = <0x10040000 0x5000>;
> clock-names = "clkout16";
> clocks = <&clock CLK_FIN_PLL>;
> @@ -298,6 +298,16 @@ pmu_system_controller: system-controller@10040000 {
> interrupt-controller;
> #interrupt-cells = <3>;
> interrupt-parent = <&gic>;
> +
> + dp_phy: dp-phy {
> + compatible = "samsung,exynos5250-dp-video-phy";
> + #phy-cells = <0>;
> + };
> +
> + mipi_phy: mipi-phy {
> + compatible = "samsung,s5pv210-mipi-video-phy";
> + #phy-cells = <1>;
> + };
> };
>
> watchdog@101d0000 {
> @@ -810,18 +820,6 @@ mixer: mixer@14450000 {
> status = "disabled";
> };
>
> - dp_phy: video-phy-0 {
> - compatible = "samsung,exynos5250-dp-video-phy";
> - samsung,pmu-syscon = <&pmu_system_controller>;
> - #phy-cells = <0>;
> - };
> -
> - mipi_phy: video-phy-1 {
> - compatible = "samsung,s5pv210-mipi-video-phy";
> - #phy-cells = <1>;
> - syscon = <&pmu_system_controller>;
> - };
> -
> dsi_0: dsi@14500000 {
> compatible = "samsung,exynos4210-mipi-dsi";
> reg = <0x14500000 0x10000>;

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


2023-01-27 22:54:41

by Marek Szyprowski

[permalink] [raw]
Subject: Re: [PATCH 6/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5420

On 27.01.2023 20:40, Krzysztof Kozlowski wrote:
> The DisplayPort and MIPI phys are actually part of the Power Management
> Unit system controller. They do not have their own address space, thus
> keeping the nodes under soc causes warnings:
>
> exynos5420-smdk5420.dtb: soc: dp-video-phy: {'compatible': ['samsung,exynos5420-dp-video-phy'],
> 'samsung,pmu-syscon': [[11]], '#phy-cells': [[0]], 'phandle': [[16]]} should not be valid under {'type': 'object'}
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
Tested-by: Marek Szyprowski <[email protected]>
> ---
> arch/arm/boot/dts/exynos5420.dtsi | 24 +++++++++++-------------
> 1 file changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi
> index b1051a7d07af..6cdb1a832fb9 100644
> --- a/arch/arm/boot/dts/exynos5420.dtsi
> +++ b/arch/arm/boot/dts/exynos5420.dtsi
> @@ -585,18 +585,6 @@ spi_2: spi@12d40000 {
> status = "disabled";
> };
>
> - dp_phy: dp-video-phy {
> - compatible = "samsung,exynos5420-dp-video-phy";
> - samsung,pmu-syscon = <&pmu_system_controller>;
> - #phy-cells = <0>;
> - };
> -
> - mipi_phy: mipi-video-phy {
> - compatible = "samsung,exynos5420-mipi-video-phy";
> - syscon = <&pmu_system_controller>;
> - #phy-cells = <1>;
> - };
> -
> dsi: dsi@14500000 {
> compatible = "samsung,exynos5410-mipi-dsi";
> reg = <0x14500000 0x10000>;
> @@ -822,7 +810,7 @@ jpeg_1: jpeg@11f60000 {
> };
>
> pmu_system_controller: system-controller@10040000 {
> - compatible = "samsung,exynos5420-pmu", "syscon";
> + compatible = "samsung,exynos5420-pmu", "simple-mfd", "syscon";
> reg = <0x10040000 0x5000>;
> clock-names = "clkout16";
> clocks = <&clock CLK_FIN_PLL>;
> @@ -830,6 +818,16 @@ pmu_system_controller: system-controller@10040000 {
> interrupt-controller;
> #interrupt-cells = <3>;
> interrupt-parent = <&gic>;
> +
> + dp_phy: dp-phy {
> + compatible = "samsung,exynos5420-dp-video-phy";
> + #phy-cells = <0>;
> + };
> +
> + mipi_phy: mipi-phy {
> + compatible = "samsung,exynos5420-mipi-video-phy";
> + #phy-cells = <1>;
> + };
> };
>
> tmu_cpu0: tmu@10060000 {

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


2023-01-29 10:40:51

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 1/8] dt-bindings: soc: samsung: exynos-pmu: allow phys as child

On Fri, 27 Jan 2023 20:40:50 +0100, Krzysztof Kozlowski wrote:
> The MIPI and DisplayPort phys are actually part of the Power Management
> Unit system controller, thus allow them as its children, instead of
> specifying as separate device nodes with syscon phandle.
>
>

Applied, thanks!

[1/8] dt-bindings: soc: samsung: exynos-pmu: allow phys as child
https://git.kernel.org/krzk/linux/c/fe6a952b567f6a771d087d2e969914f31574d6ab

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-01-30 21:16:04

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 2/8] dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle


On Fri, 27 Jan 2023 20:40:51 +0100, Krzysztof Kozlowski wrote:
> The DisplayPort phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../devicetree/bindings/phy/samsung,dp-video-phy.yaml | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2023-01-30 21:16:24

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 3/8] dt-bindings: phy: samsung,mipi-video-phy: deprecate syscon phandle


On Fri, 27 Jan 2023 20:40:52 +0100, Krzysztof Kozlowski wrote:
> The MIPI phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/phy/samsung,mipi-video-phy.yaml | 11 +++++------
> 1 file changed, 5 insertions(+), 6 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2023-01-31 17:32:17

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 2/8] dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle

On 27/01/2023 20:40, Krzysztof Kozlowski wrote:
> The DisplayPort phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../devicetree/bindings/phy/samsung,dp-video-phy.yaml | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)

Hi Vinod,

It turns out, my previous patch (1/8, which I took via Samsung SoC)
actually depends on these here. Without these here it causes warning.
That 1/8 patch is already in soc tree and will be for v6.3. Will you be
taking these for v6.3? If not, could you Ack and I will take them.

Best regards,
Krzysztof


2023-02-03 13:38:51

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH 2/8] dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle

On 27-01-23, 20:40, Krzysztof Kozlowski wrote:
> The DisplayPort phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.

Acked-By: Vinod Koul <[email protected]>

--
~Vinod

2023-02-03 13:42:01

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH 4/8] phy: samsung,dp-video-phy: deprecate syscon phandle

On 27-01-23, 20:40, Krzysztof Kozlowski wrote:
> The DisplayPort phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.

Acked-By: Vinod Koul <[email protected]>

--
~Vinod

2023-02-03 13:42:13

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH 5/8] phy: samsung,mipi-video-phy: deprecate syscon phandle

On 27-01-23, 20:40, Krzysztof Kozlowski wrote:
> The MIPI phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.

Acked-By: Vinod Koul <[email protected]>

--
~Vinod

2023-02-03 15:13:50

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 2/8] dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle

On Fri, 27 Jan 2023 20:40:51 +0100, Krzysztof Kozlowski wrote:
> The DisplayPort phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
>

Applied, thanks!

[2/8] dt-bindings: phy: samsung,dp-video-phy: deprecate syscon phandle
https://git.kernel.org/krzk/linux/c/0092b7ab96e77e6e315d0f5d3965608da32b3843

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-02-03 15:13:52

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 3/8] dt-bindings: phy: samsung,mipi-video-phy: deprecate syscon phandle

On Fri, 27 Jan 2023 20:40:52 +0100, Krzysztof Kozlowski wrote:
> The MIPI phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
>

Applied, thanks!

[3/8] dt-bindings: phy: samsung,mipi-video-phy: deprecate syscon phandle
https://git.kernel.org/krzk/linux/c/4694dd1b9d43f5b8af710b8e4efc25d3cf388a00

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-02-03 15:14:01

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 4/8] phy: samsung,dp-video-phy: deprecate syscon phandle

On Fri, 27 Jan 2023 20:40:53 +0100, Krzysztof Kozlowski wrote:
> The DisplayPort phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
>

Applied, thanks!

[4/8] phy: samsung,dp-video-phy: deprecate syscon phandle
https://git.kernel.org/krzk/linux/c/f765360d291e5f44d454eceb250008fc2e07badf

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-02-03 15:14:04

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 5/8] phy: samsung,mipi-video-phy: deprecate syscon phandle

On Fri, 27 Jan 2023 20:40:54 +0100, Krzysztof Kozlowski wrote:
> The MIPI phy is actually part of the Power Management Unit system
> controller, thus it should be its child, instead of sibling node with
> syscon phandle.
>
>

Applied, thanks!

[5/8] phy: samsung,mipi-video-phy: deprecate syscon phandle
https://git.kernel.org/krzk/linux/c/965e69f2c95e5be90ef8aa009aca4294d0433e33

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-03-06 11:39:43

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 6/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5420

On Fri, 27 Jan 2023 20:40:55 +0100, Krzysztof Kozlowski wrote:
> The DisplayPort and MIPI phys are actually part of the Power Management
> Unit system controller. They do not have their own address space, thus
> keeping the nodes under soc causes warnings:
>
> exynos5420-smdk5420.dtb: soc: dp-video-phy: {'compatible': ['samsung,exynos5420-dp-video-phy'],
> 'samsung,pmu-syscon': [[11]], '#phy-cells': [[0]], 'phandle': [[16]]} should not be valid under {'type': 'object'}
>
> [...]

Applied, thanks!

[6/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5420
https://git.kernel.org/krzk/linux/c/972b567075845a55d525f1ed5d7cd7b6d524afdc

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-03-06 11:40:07

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 7/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5250

On Fri, 27 Jan 2023 20:40:56 +0100, Krzysztof Kozlowski wrote:
> The DisplayPort and MIPI phys are actually part of the Power Management
> Unit system controller. They do not have their own address space, thus
> keeping the nodes under soc causes warnings:
>
> exynos5250-arndale.dtb: soc: video-phy-0: {'compatible': ['samsung,exynos5250-dp-video-phy'],
> 'samsung,pmu-syscon': [[20]], '#phy-cells': [[0]], 'phandle': [[24]]} should not be valid under {'type': 'object'}
>
> [...]

Applied, thanks!

[7/8] ARM: dts: exynos: move DP and MIPI phys to PMU node in Exynos5250
https://git.kernel.org/krzk/linux/c/6dc01bc640b1278f225ed73b891645202be72b55

Best regards,
--
Krzysztof Kozlowski <[email protected]>

2023-03-06 11:40:14

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: (subset) [PATCH 8/8] arm64: dts: exynos: move MIPI phy to PMU node in Exynos5433

On Fri, 27 Jan 2023 20:40:57 +0100, Krzysztof Kozlowski wrote:
> The MIPI phy is actually part of the Power Management Unit system
> controller. It does not have own address space, thus keeping the node
> under soc causes warnings:
>
> exynos5433-tm2e.dtb: soc@0: video-phy: {'compatible': ['samsung,exynos5433-mipi-video-phy'], ...
> should not be valid under {'type': 'object'}
>
> [...]

Applied, thanks!

[8/8] arm64: dts: exynos: move MIPI phy to PMU node in Exynos5433
https://git.kernel.org/krzk/linux/c/2a9c708411834661e5b0ffb817a8f82f1a2f108e

Best regards,
--
Krzysztof Kozlowski <[email protected]>