2017-03-08 05:06:57

by Hoegeun Kwon

[permalink] [raw]
Subject: [PATCH v5 0/5] Fix the parse_dt of exynos dsi and remove the OF graph

Hi All,

The dsi + panel is a parental relationship, so OF grpah is not needed.
Therefore, the current dsi_parse_dt function will throw an error,
because there is no linked OF graph for case such as fimd + dsi +
panel.

So the 1/5 patch parse the Pll, burst and esc clock frequency
properties in dsi_parse_dt and modified to create a bridge_node only
if there is an OF graph associated with dsi.

Also fixed the dts, which depend on the 1/5 patch. So removed the
ports node and move burst and esc clock frequency properties to the
parent (DSI node).

Changes for V5:
- Added Reviewed-by: Andi Shyti <[email protected]> (all patches).
- Reworded commit messages.

Changes for V4:
- Squashed patch 2, 3 and 4.
- Added Reviewed-by: Andrzej Hajda <[email protected]> (all patches).

Changes for V3:
- Split the patches considering the bisectability problem.

Changes for V2:
- Added the clear explanation for commit. (1/5 patch)
- Fixed it to the same subject as the actual work. (2/5 ~ 5/5 patches)

Best Regards,
Hoegeun

Hoegeun Kwon (5):
arm64: dts: exynos: Add the burst and esc clock frequency properties
to DSI node
arm: dts: Add the burst and esc clock frequency properties to DSI node
drm/exynos: dsi: Fix the parse_dt function
arm64: dts: exynos: Remove the OF graph from DSI node
arm: dts: Remove the OF graph from DSI node

arch/arm/boot/dts/exynos3250-rinato.dts | 23 ++--------------
arch/arm/boot/dts/exynos4210-trats.dts | 23 ++--------------
arch/arm/boot/dts/exynos4412-trats2.dts | 23 ++--------------
.../boot/dts/exynos/exynos5433-tm2-common.dtsi | 16 ++---------
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 32 ++++++----------------
5 files changed, 16 insertions(+), 101 deletions(-)

--
1.9.1


2017-03-08 04:57:10

by Hoegeun Kwon

[permalink] [raw]
Subject: [PATCH v5 4/5] arm64: dts: exynos: Remove the OF graph from DSI node

The OF graph is not needed because the panel is a child of dsi. Remove
the ports node in DSI node.

Signed-off-by: Hoegeun Kwon <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>
Reviewed-by: Andi Shyti <[email protected]>
---
arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 14 --------------
1 file changed, 14 deletions(-)

diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
index e31e20c..77ba238 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
@@ -303,20 +303,6 @@
samsung,pll-clock-frequency = <24000000>;
pinctrl-names = "default";
pinctrl-0 = <&te_irq>;
-
- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port@1 {
- reg = <1>;
-
- dsi_out: endpoint {
- samsung,burst-clock-frequency = <512000000>;
- samsung,esc-clock-frequency = <16000000>;
- };
- };
- };
};

&hdmi {
--
1.9.1

2017-03-08 04:57:07

by Hoegeun Kwon

[permalink] [raw]
Subject: [PATCH v5 2/5] arm: dts: Add the burst and esc clock frequency properties to DSI node

Add the burst and esc clock frequency properties to the parent (DSI node).
Currently the clock is parsed from the port node, while it should be
taken from the dsi node.

Signed-off-by: Hoegeun Kwon <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>
Reviewed-by: Andi Shyti <[email protected]>
---
arch/arm/boot/dts/exynos3250-rinato.dts | 2 ++
arch/arm/boot/dts/exynos4210-trats.dts | 2 ++
arch/arm/boot/dts/exynos4412-trats2.dts | 2 ++
3 files changed, 6 insertions(+)

diff --git a/arch/arm/boot/dts/exynos3250-rinato.dts b/arch/arm/boot/dts/exynos3250-rinato.dts
index 548413e..c9f191c 100644
--- a/arch/arm/boot/dts/exynos3250-rinato.dts
+++ b/arch/arm/boot/dts/exynos3250-rinato.dts
@@ -215,6 +215,8 @@
&dsi_0 {
vddcore-supply = <&ldo6_reg>;
vddio-supply = <&ldo6_reg>;
+ samsung,burst-clock-frequency = <250000000>;
+ samsung,esc-clock-frequency = <20000000>;
samsung,pll-clock-frequency = <24000000>;
status = "okay";

diff --git a/arch/arm/boot/dts/exynos4210-trats.dts b/arch/arm/boot/dts/exynos4210-trats.dts
index 0ca1b4d..1743ca8 100644
--- a/arch/arm/boot/dts/exynos4210-trats.dts
+++ b/arch/arm/boot/dts/exynos4210-trats.dts
@@ -197,6 +197,8 @@
&dsi_0 {
vddcore-supply = <&vusb_reg>;
vddio-supply = <&vmipi_reg>;
+ samsung,burst-clock-frequency = <500000000>;
+ samsung,esc-clock-frequency = <20000000>;
samsung,pll-clock-frequency = <24000000>;
status = "okay";

diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
index 41ecd6d..82221a0 100644
--- a/arch/arm/boot/dts/exynos4412-trats2.dts
+++ b/arch/arm/boot/dts/exynos4412-trats2.dts
@@ -385,6 +385,8 @@
&dsi_0 {
vddcore-supply = <&ldo8_reg>;
vddio-supply = <&ldo10_reg>;
+ samsung,burst-clock-frequency = <500000000>;
+ samsung,esc-clock-frequency = <20000000>;
samsung,pll-clock-frequency = <24000000>;
status = "okay";

--
1.9.1

2017-03-08 04:57:04

by Hoegeun Kwon

[permalink] [raw]
Subject: [PATCH v5 1/5] arm64: dts: exynos: Add the burst and esc clock frequency properties to DSI node

Add the burst and esc clock frequency properties to the parent (DSI node).
Currently the clock is parsed from the port node, while it should be
taken from the dsi node.

Signed-off-by: Hoegeun Kwon <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>
Reviewed-by: Andi Shyti <[email protected]>
---
arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
index 6ce93a3..e31e20c 100644
--- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
+++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi
@@ -298,6 +298,8 @@
status = "okay";
vddcore-supply = <&ldo6_reg>;
vddio-supply = <&ldo7_reg>;
+ samsung,burst-clock-frequency = <512000000>;
+ samsung,esc-clock-frequency = <16000000>;
samsung,pll-clock-frequency = <24000000>;
pinctrl-names = "default";
pinctrl-0 = <&te_irq>;
--
1.9.1

2017-03-08 04:57:46

by Hoegeun Kwon

[permalink] [raw]
Subject: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function

The dsi + panel is a parental relationship, so OF grpah is not needed.
Therefore, the current dsi_parse_dt function will throw an error,
because there is no linked OF graph for the case fimd + dsi + panel.

Parse the Pll burst and esc clock frequency properties in dsi_parse_dt()
and create a bridge_node only if there is an OF graph associated with dsi.

Signed-off-by: Hoegeun Kwon <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>
Reviewed-by: Andi Shyti <[email protected]>
---
drivers/gpu/drm/exynos/exynos_drm_dsi.c | 32 ++++++++------------------------
1 file changed, 8 insertions(+), 24 deletions(-)

diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
index f5c04d0..2d4e118 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
@@ -1652,39 +1652,23 @@ static int exynos_dsi_parse_dt(struct exynos_dsi *dsi)
if (ret < 0)
return ret;

- ep = of_graph_get_endpoint_by_regs(node, DSI_PORT_OUT, 0);
- if (!ep) {
- dev_err(dev, "no output port with endpoint specified\n");
- return -EINVAL;
- }
-
- ret = exynos_dsi_of_read_u32(ep, "samsung,burst-clock-frequency",
+ ret = exynos_dsi_of_read_u32(node, "samsung,burst-clock-frequency",
&dsi->burst_clk_rate);
if (ret < 0)
- goto end;
+ return ret;

- ret = exynos_dsi_of_read_u32(ep, "samsung,esc-clock-frequency",
+ ret = exynos_dsi_of_read_u32(node, "samsung,esc-clock-frequency",
&dsi->esc_clk_rate);
if (ret < 0)
- goto end;
-
- of_node_put(ep);
+ return ret;

ep = of_graph_get_next_endpoint(node, NULL);
- if (!ep) {
- ret = -EINVAL;
- goto end;
- }
-
- dsi->bridge_node = of_graph_get_remote_port_parent(ep);
- if (!dsi->bridge_node) {
- ret = -EINVAL;
- goto end;
+ if (ep) {
+ dsi->bridge_node = of_graph_get_remote_port_parent(ep);
+ of_node_put(ep);
}
-end:
- of_node_put(ep);

- return ret;
+ return 0;
}

static int exynos_dsi_bind(struct device *dev, struct device *master,
--
1.9.1

2017-03-08 04:58:41

by Hoegeun Kwon

[permalink] [raw]
Subject: [PATCH v5 5/5] arm: dts: Remove the OF graph from DSI node

The OF graph is not needed because the panel is a child of dsi. Remove
the ports node in DSI node, and port node in panel node.

Signed-off-by: Hoegeun Kwon <[email protected]>
Reviewed-by: Andrzej Hajda <[email protected]>
Reviewed-by: Andi Shyti <[email protected]>
---
arch/arm/boot/dts/exynos3250-rinato.dts | 21 ---------------------
arch/arm/boot/dts/exynos4210-trats.dts | 21 ---------------------
arch/arm/boot/dts/exynos4412-trats2.dts | 21 ---------------------
3 files changed, 63 deletions(-)

diff --git a/arch/arm/boot/dts/exynos3250-rinato.dts b/arch/arm/boot/dts/exynos3250-rinato.dts
index c9f191c..82e676a 100644
--- a/arch/arm/boot/dts/exynos3250-rinato.dts
+++ b/arch/arm/boot/dts/exynos3250-rinato.dts
@@ -220,21 +220,6 @@
samsung,pll-clock-frequency = <24000000>;
status = "okay";

- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port@1 {
- reg = <1>;
-
- dsi_out: endpoint {
- remote-endpoint = <&dsi_in>;
- samsung,burst-clock-frequency = <250000000>;
- samsung,esc-clock-frequency = <20000000>;
- };
- };
- };
-
panel@0 {
compatible = "samsung,s6e63j0x03";
reg = <0>;
@@ -264,12 +249,6 @@
vsync-len = <2>;
};
};
-
- port {
- dsi_in: endpoint {
- remote-endpoint = <&dsi_out>;
- };
- };
};
};

diff --git a/arch/arm/boot/dts/exynos4210-trats.dts b/arch/arm/boot/dts/exynos4210-trats.dts
index 1743ca8..9452bed 100644
--- a/arch/arm/boot/dts/exynos4210-trats.dts
+++ b/arch/arm/boot/dts/exynos4210-trats.dts
@@ -202,21 +202,6 @@
samsung,pll-clock-frequency = <24000000>;
status = "okay";

- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port@1 {
- reg = <1>;
-
- dsi_out: endpoint {
- remote-endpoint = <&dsi_in>;
- samsung,burst-clock-frequency = <500000000>;
- samsung,esc-clock-frequency = <20000000>;
- };
- };
- };
-
panel@0 {
reg = <0>;
compatible = "samsung,s6e8aa0";
@@ -244,12 +229,6 @@
vsync-len = <2>;
};
};
-
- port {
- dsi_in: endpoint {
- remote-endpoint = <&dsi_out>;
- };
- };
};
};

diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
index 82221a0..86ce5e5 100644
--- a/arch/arm/boot/dts/exynos4412-trats2.dts
+++ b/arch/arm/boot/dts/exynos4412-trats2.dts
@@ -390,21 +390,6 @@
samsung,pll-clock-frequency = <24000000>;
status = "okay";

- ports {
- #address-cells = <1>;
- #size-cells = <0>;
-
- port@1 {
- reg = <1>;
-
- dsi_out: endpoint {
- remote-endpoint = <&dsi_in>;
- samsung,burst-clock-frequency = <500000000>;
- samsung,esc-clock-frequency = <20000000>;
- };
- };
- };
-
panel@0 {
compatible = "samsung,s6e8aa0";
reg = <0>;
@@ -432,12 +417,6 @@
vsync-len = <2>;
};
};
-
- port {
- dsi_in: endpoint {
- remote-endpoint = <&dsi_out>;
- };
- };
};
};

--
1.9.1

2017-03-08 06:59:09

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 2/5] arm: dts: Add the burst and esc clock frequency properties to DSI node

On Wed, Mar 08, 2017 at 01:54:09PM +0900, Hoegeun Kwon wrote:
> Add the burst and esc clock frequency properties to the parent (DSI node).
> Currently the clock is parsed from the port node, while it should be
> taken from the dsi node.
>
> Signed-off-by: Hoegeun Kwon <[email protected]>
> Reviewed-by: Andrzej Hajda <[email protected]>
> Reviewed-by: Andi Shyti <[email protected]>
> ---
> arch/arm/boot/dts/exynos3250-rinato.dts | 2 ++
> arch/arm/boot/dts/exynos4210-trats.dts | 2 ++
> arch/arm/boot/dts/exynos4412-trats2.dts | 2 ++
> 3 files changed, 6 insertions(+)
>

Thanks, applied.

Best regards,
Krzysztof

2017-03-08 06:59:34

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 1/5] arm64: dts: exynos: Add the burst and esc clock frequency properties to DSI node

On Wed, Mar 08, 2017 at 01:54:08PM +0900, Hoegeun Kwon wrote:
> Add the burst and esc clock frequency properties to the parent (DSI node).
> Currently the clock is parsed from the port node, while it should be
> taken from the dsi node.
>
> Signed-off-by: Hoegeun Kwon <[email protected]>
> Reviewed-by: Andrzej Hajda <[email protected]>
> Reviewed-by: Andi Shyti <[email protected]>
> ---
> arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 2 ++
> 1 file changed, 2 insertions(+)
>

Thanks, applied.

I'll prepare tags with these.

Best regards,
Krzysztof

2017-03-08 07:15:11

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 2/5] arm: dts: Add the burst and esc clock frequency properties to DSI node

On Wed, Mar 08, 2017 at 01:54:09PM +0900, Hoegeun Kwon wrote:
> Add the burst and esc clock frequency properties to the parent (DSI node).
> Currently the clock is parsed from the port node, while it should be
> taken from the dsi node.
>
> Signed-off-by: Hoegeun Kwon <[email protected]>
> Reviewed-by: Andrzej Hajda <[email protected]>
> Reviewed-by: Andi Shyti <[email protected]>
> ---
> arch/arm/boot/dts/exynos3250-rinato.dts | 2 ++
> arch/arm/boot/dts/exynos4210-trats.dts | 2 ++
> arch/arm/boot/dts/exynos4412-trats2.dts | 2 ++
> 3 files changed, 6 insertions(+)
>

If anyone needs this, then:


The following changes since commit c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201:

Linux 4.11-rc1 (2017-03-05 12:59:56 -0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git tags/samsung-dt-clock-dsi-property-4.12

for you to fetch changes up to 4c74ea4e20b582bf90a2cf509d88aa7c2dbffb12:

ARM: dts: exynos: Add the burst and esc clock frequency properties to DSI node (2017-03-08 09:09:05 +0200)

----------------------------------------------------------------
Add the burst and esc clock frequency properties to DSI node in Exynos ARM
DeviceTree, before the OF graph could be parsed.

----------------------------------------------------------------
Hoegeun Kwon (1):
ARM: dts: exynos: Add the burst and esc clock frequency properties to DSI node

Jaehoon Chung (1):
ARM: dts: exynos: Add phy-pcie node for pcie to Exynos5440

Krzysztof Kozlowski (1):
ARM: dts: exynos: Do not ignore real-world fuse values for thermal zone 0 on Exynos5420

arch/arm/boot/dts/exynos3250-rinato.dts | 2 ++
arch/arm/boot/dts/exynos4210-trats.dts | 2 ++
arch/arm/boot/dts/exynos4412-trats2.dts | 2 ++
arch/arm/boot/dts/exynos5420-tmu-sensor-conf.dtsi | 25 +++++++++++++++++++
arch/arm/boot/dts/exynos5420.dtsi | 10 ++++----
arch/arm/boot/dts/exynos5440.dtsi | 30 +++++++++++++++--------
6 files changed, 56 insertions(+), 15 deletions(-)
create mode 100644 arch/arm/boot/dts/exynos5420-tmu-sensor-conf.dtsi

2017-03-08 07:23:03

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 1/5] arm64: dts: exynos: Add the burst and esc clock frequency properties to DSI node

On Wed, Mar 08, 2017 at 01:54:08PM +0900, Hoegeun Kwon wrote:
> Add the burst and esc clock frequency properties to the parent (DSI node).
> Currently the clock is parsed from the port node, while it should be
> taken from the dsi node.
>
> Signed-off-by: Hoegeun Kwon <[email protected]>
> Reviewed-by: Andrzej Hajda <[email protected]>
> Reviewed-by: Andi Shyti <[email protected]>
> ---
> arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 2 ++
> 1 file changed, 2 insertions(+)

If anyone needs this, then:


The following changes since commit c1ae3cfa0e89fa1a7ecc4c99031f5e9ae99d9201:

Linux 4.11-rc1 (2017-03-05 12:59:56 -0800)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux.git tags/samsung-dt64-clock-dsi-property-4.12

for you to fetch changes up to e3c07546747cdec07ff15c984bc6cebc9c9f788c:

arm64: dts: exynos: Add the burst and esc clock frequency properties to DSI node (2017-03-08 08:55:39 +0200)

----------------------------------------------------------------
Add the burst and esc clock frequency properties to DSI node in Exynos ARM64
DeviceTree, before the OF graph could be parsed.

----------------------------------------------------------------
Andi Shyti (2):
arm64: dts: exynos: Enable ir-spi in the TM2 and TM2E boards
arm64: dts: exynos: Add stmfts touchscreen node for TM2 and TM2E

Hoegeun Kwon (1):
arm64: dts: exynos: Add the burst and esc clock frequency properties to DSI node

Hyungwon Hwang (1):
arm64: dts: exynos: Add support for S6E3HA2 panel device on TM2 board

.../boot/dts/exynos/exynos5433-tm2-common.dtsi | 43 +++++++++++++++++++++-
arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | 17 +++++++++
arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | 7 ++++
3 files changed, 65 insertions(+), 2 deletions(-)

2017-03-22 01:37:05

by Hoegeun Kwon

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function

Hi inki,

Could you check the this patch?
For reference, patch 1/5 and 2/5 have already been applied to Krzysztof
tree.

Best regards,
Hoegeun


On 03/08/2017 01:54 PM, Hoegeun Kwon wrote:
> The dsi + panel is a parental relationship, so OF grpah is not needed.
> Therefore, the current dsi_parse_dt function will throw an error,
> because there is no linked OF graph for the case fimd + dsi + panel.
>
> Parse the Pll burst and esc clock frequency properties in dsi_parse_dt()
> and create a bridge_node only if there is an OF graph associated with dsi.
>
> Signed-off-by: Hoegeun Kwon <[email protected]>
> Reviewed-by: Andrzej Hajda <[email protected]>
> Reviewed-by: Andi Shyti <[email protected]>
> ---
> drivers/gpu/drm/exynos/exynos_drm_dsi.c | 32 ++++++++------------------------
> 1 file changed, 8 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> index f5c04d0..2d4e118 100644
> --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
> @@ -1652,39 +1652,23 @@ static int exynos_dsi_parse_dt(struct exynos_dsi *dsi)
> if (ret < 0)
> return ret;
>
> - ep = of_graph_get_endpoint_by_regs(node, DSI_PORT_OUT, 0);
> - if (!ep) {
> - dev_err(dev, "no output port with endpoint specified\n");
> - return -EINVAL;
> - }
> -
> - ret = exynos_dsi_of_read_u32(ep, "samsung,burst-clock-frequency",
> + ret = exynos_dsi_of_read_u32(node, "samsung,burst-clock-frequency",
> &dsi->burst_clk_rate);
> if (ret < 0)
> - goto end;
> + return ret;
>
> - ret = exynos_dsi_of_read_u32(ep, "samsung,esc-clock-frequency",
> + ret = exynos_dsi_of_read_u32(node, "samsung,esc-clock-frequency",
> &dsi->esc_clk_rate);
> if (ret < 0)
> - goto end;
> -
> - of_node_put(ep);
> + return ret;
>
> ep = of_graph_get_next_endpoint(node, NULL);
> - if (!ep) {
> - ret = -EINVAL;
> - goto end;
> - }
> -
> - dsi->bridge_node = of_graph_get_remote_port_parent(ep);
> - if (!dsi->bridge_node) {
> - ret = -EINVAL;
> - goto end;
> + if (ep) {
> + dsi->bridge_node = of_graph_get_remote_port_parent(ep);
> + of_node_put(ep);
> }
> -end:
> - of_node_put(ep);
>
> - return ret;
> + return 0;
> }
>
> static int exynos_dsi_bind(struct device *dev, struct device *master,

Subject: Re: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function

Merged.

Thanks,
Inki Dae

2017년 03월 22일 10:36에 Hoegeun Kwon 이(가) 쓴 글:
> Hi inki,
>
> Could you check the this patch?
> For reference, patch 1/5 and 2/5 have already been applied to Krzysztof tree.
>
> Best regards,
> Hoegeun
>
>
> On 03/08/2017 01:54 PM, Hoegeun Kwon wrote:
>> The dsi + panel is a parental relationship, so OF grpah is not needed.
>> Therefore, the current dsi_parse_dt function will throw an error,
>> because there is no linked OF graph for the case fimd + dsi + panel.
>>
>> Parse the Pll burst and esc clock frequency properties in dsi_parse_dt()
>> and create a bridge_node only if there is an OF graph associated with dsi.
>>
>> Signed-off-by: Hoegeun Kwon <[email protected]>
>> Reviewed-by: Andrzej Hajda <[email protected]>
>> Reviewed-by: Andi Shyti <[email protected]>
>> ---
>> drivers/gpu/drm/exynos/exynos_drm_dsi.c | 32 ++++++++------------------------
>> 1 file changed, 8 insertions(+), 24 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>> index f5c04d0..2d4e118 100644
>> --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>> +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>> @@ -1652,39 +1652,23 @@ static int exynos_dsi_parse_dt(struct exynos_dsi *dsi)
>> if (ret < 0)
>> return ret;
>> - ep = of_graph_get_endpoint_by_regs(node, DSI_PORT_OUT, 0);
>> - if (!ep) {
>> - dev_err(dev, "no output port with endpoint specified\n");
>> - return -EINVAL;
>> - }
>> -
>> - ret = exynos_dsi_of_read_u32(ep, "samsung,burst-clock-frequency",
>> + ret = exynos_dsi_of_read_u32(node, "samsung,burst-clock-frequency",
>> &dsi->burst_clk_rate);
>> if (ret < 0)
>> - goto end;
>> + return ret;
>> - ret = exynos_dsi_of_read_u32(ep, "samsung,esc-clock-frequency",
>> + ret = exynos_dsi_of_read_u32(node, "samsung,esc-clock-frequency",
>> &dsi->esc_clk_rate);
>> if (ret < 0)
>> - goto end;
>> -
>> - of_node_put(ep);
>> + return ret;
>> ep = of_graph_get_next_endpoint(node, NULL);
>> - if (!ep) {
>> - ret = -EINVAL;
>> - goto end;
>> - }
>> -
>> - dsi->bridge_node = of_graph_get_remote_port_parent(ep);
>> - if (!dsi->bridge_node) {
>> - ret = -EINVAL;
>> - goto end;
>> + if (ep) {
>> + dsi->bridge_node = of_graph_get_remote_port_parent(ep);
>> + of_node_put(ep);
>> }
>> -end:
>> - of_node_put(ep);
>> - return ret;
>> + return 0;
>> }
>> static int exynos_dsi_bind(struct device *dev, struct device *master,
>
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>

2017-03-28 08:38:41

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function

On Tue, Mar 28, 2017 at 11:26 AM, Inki Dae <[email protected]> wrote:
> Merged.

Hi,

I do not see the tag (with DT patches) merged by you which I provided
to you before. These are essential for bisectability. Without them,
kernel bisectability is broken. Did you merged the tag somewhere?

Best regards,
Krzysztof

> Thanks,
> Inki Dae
>
> 2017년 03월 22일 10:36에 Hoegeun Kwon 이(가) 쓴 글:
>> Hi inki,
>>
>> Could you check the this patch?
>> For reference, patch 1/5 and 2/5 have already been applied to Krzysztof tree.
>>
>> Best regards,
>> Hoegeun
>>
>>
>> On 03/08/2017 01:54 PM, Hoegeun Kwon wrote:
>>> The dsi + panel is a parental relationship, so OF grpah is not needed.
>>> Therefore, the current dsi_parse_dt function will throw an error,
>>> because there is no linked OF graph for the case fimd + dsi + panel.
>>>
>>> Parse the Pll burst and esc clock frequency properties in dsi_parse_dt()
>>> and create a bridge_node only if there is an OF graph associated with dsi.
>>>
>>> Signed-off-by: Hoegeun Kwon <[email protected]>
>>> Reviewed-by: Andrzej Hajda <[email protected]>
>>> Reviewed-by: Andi Shyti <[email protected]>
>>> ---
>>> drivers/gpu/drm/exynos/exynos_drm_dsi.c | 32 ++++++++------------------------
>>> 1 file changed, 8 insertions(+), 24 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>>> index f5c04d0..2d4e118 100644
>>> --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>>> +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>>> @@ -1652,39 +1652,23 @@ static int exynos_dsi_parse_dt(struct exynos_dsi *dsi)
>>> if (ret < 0)
>>> return ret;
>>> - ep = of_graph_get_endpoint_by_regs(node, DSI_PORT_OUT, 0);
>>> - if (!ep) {
>>> - dev_err(dev, "no output port with endpoint specified\n");
>>> - return -EINVAL;
>>> - }
>>> -
>>> - ret = exynos_dsi_of_read_u32(ep, "samsung,burst-clock-frequency",
>>> + ret = exynos_dsi_of_read_u32(node, "samsung,burst-clock-frequency",
>>> &dsi->burst_clk_rate);
>>> if (ret < 0)
>>> - goto end;
>>> + return ret;
>>> - ret = exynos_dsi_of_read_u32(ep, "samsung,esc-clock-frequency",
>>> + ret = exynos_dsi_of_read_u32(node, "samsung,esc-clock-frequency",
>>> &dsi->esc_clk_rate);
>>> if (ret < 0)
>>> - goto end;
>>> -
>>> - of_node_put(ep);
>>> + return ret;
>>> ep = of_graph_get_next_endpoint(node, NULL);
>>> - if (!ep) {
>>> - ret = -EINVAL;
>>> - goto end;
>>> - }
>>> -
>>> - dsi->bridge_node = of_graph_get_remote_port_parent(ep);
>>> - if (!dsi->bridge_node) {
>>> - ret = -EINVAL;
>>> - goto end;
>>> + if (ep) {
>>> + dsi->bridge_node = of_graph_get_remote_port_parent(ep);
>>> + of_node_put(ep);
>>> }
>>> -end:
>>> - of_node_put(ep);
>>> - return ret;
>>> + return 0;
>>> }
>>> static int exynos_dsi_bind(struct device *dev, struct device *master,
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe devicetree" in
>> the body of a message to [email protected]
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>
>>
>>

2017-04-04 15:38:52

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function

On Tue, Mar 28, 2017 at 11:38 AM, Krzysztof Kozlowski <[email protected]> wrote:
> On Tue, Mar 28, 2017 at 11:26 AM, Inki Dae <[email protected]> wrote:
>> Merged.
>
> Hi,
>
> I do not see the tag (with DT patches) merged by you which I provided
> to you before. These are essential for bisectability. Without them,
> kernel bisectability is broken. Did you merged the tag somewhere?
>
> Best regards,
> Krzysztof
>
>> Thanks,
>> Inki Dae

Inki,

I still do not see the DTS tag [1] merged in your tree but you applied
patches breaking the display. I looked at exynos-drm-next branch.

We talked already about bisectability and with Hoegeun we provided
proper solution. Hoegeun split the patchset and I sent you a stable
tag to merge. Be aware not to apply the DTS patch because you would
effectively duplicate it. Instead, deal like with any pull request -
merge the tag as dependency *before* applying DRM DSI patch.

I saw also a branch like this:
https://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git/log/?h=exynos-drm-next-tm2
but this is something obviously wrong. I do not know what are your
plans to do with it, but please drop it as it brings only confusion.

Best regards,
Krzysztof

[1] https://www.spinics.net/lists/arm-kernel/msg567053.html

>> 2017년 03월 22일 10:36에 Hoegeun Kwon 이(가) 쓴 글:
>>> Hi inki,
>>>
>>> Could you check the this patch?
>>> For reference, patch 1/5 and 2/5 have already been applied to Krzysztof tree.
>>>
>>> Best regards,
>>> Hoegeun
>>>

Subject: Re: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function



2017년 04월 05일 00:38에 Krzysztof Kozlowski 이(가) 쓴 글:
> On Tue, Mar 28, 2017 at 11:38 AM, Krzysztof Kozlowski <[email protected]> wrote:
>> On Tue, Mar 28, 2017 at 11:26 AM, Inki Dae <[email protected]> wrote:
>>> Merged.
>>
>> Hi,
>>
>> I do not see the tag (with DT patches) merged by you which I provided
>> to you before. These are essential for bisectability. Without them,
>> kernel bisectability is broken. Did you merged the tag somewhere?
>>
>> Best regards,
>> Krzysztof
>>
>>> Thanks,
>>> Inki Dae
>
> Inki,
>
> I still do not see the DTS tag [1] merged in your tree but you applied
> patches breaking the display. I looked at exynos-drm-next branch.
>
> We talked already about bisectability and with Hoegeun we provided
> proper solution. Hoegeun split the patchset and I sent you a stable
> tag to merge. Be aware not to apply the DTS patch because you would
> effectively duplicate it. Instead, deal like with any pull request -
> merge the tag as dependency *before* applying DRM DSI patch.

Krzysztof,

I think merging the DTS tag is not necessary because dt and drm patches will go to -next separately.
Anyway, confirmed your email just now. Seems better so did what you want.


Thanks,
Inki Dae

>
> I saw also a branch like this:
> https://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git/log/?h=exynos-drm-next-tm2
> but this is something obviously wrong. I do not know what are your
> plans to do with it, but please drop it as it brings only confusion.
>
> Best regards,
> Krzysztof
>
> [1] https://www.spinics.net/lists/arm-kernel/msg567053.html
>
>>> 2017년 03월 22일 10:36에 Hoegeun Kwon 이(가) 쓴 글:
>>>> Hi inki,
>>>>
>>>> Could you check the this patch?
>>>> For reference, patch 1/5 and 2/5 have already been applied to Krzysztof tree.
>>>>
>>>> Best regards,
>>>> Hoegeun
>>>>
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>

Subject: Re: [PATCH v5 3/5] drm/exynos: dsi: Fix the parse_dt function



2017년 04월 05일 00:38에 Krzysztof Kozlowski 이(가) 쓴 글:
> On Tue, Mar 28, 2017 at 11:38 AM, Krzysztof Kozlowski <[email protected]> wrote:
>> On Tue, Mar 28, 2017 at 11:26 AM, Inki Dae <[email protected]> wrote:
>>> Merged.
>>
>> Hi,
>>
>> I do not see the tag (with DT patches) merged by you which I provided
>> to you before. These are essential for bisectability. Without them,
>> kernel bisectability is broken. Did you merged the tag somewhere?
>>
>> Best regards,
>> Krzysztof
>>
>>> Thanks,
>>> Inki Dae
>
> Inki,
>
> I still do not see the DTS tag [1] merged in your tree but you applied
> patches breaking the display. I looked at exynos-drm-next branch.
>
> We talked already about bisectability and with Hoegeun we provided
> proper solution. Hoegeun split the patchset and I sent you a stable
> tag to merge. Be aware not to apply the DTS patch because you would
> effectively duplicate it. Instead, deal like with any pull request -
> merge the tag as dependency *before* applying DRM DSI patch.
>
> I saw also a branch like this:
> https://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos.git/log/?h=exynos-drm-next-tm2
> but this is something obviously wrong. I do not know what are your
> plans to do with it, but please drop it as it brings only confusion.

Krzysztof,

Do not make you confusing with above branch which is used just for internal test so never go -next maybe you know.
Why are you suffering from this?


Thanks,
Inki Dae

>
> Best regards,
> Krzysztof
>
> [1] https://www.spinics.net/lists/arm-kernel/msg567053.html
>
>>> 2017년 03월 22일 10:36에 Hoegeun Kwon 이(가) 쓴 글:
>>>> Hi inki,
>>>>
>>>> Could you check the this patch?
>>>> For reference, patch 1/5 and 2/5 have already been applied to Krzysztof tree.
>>>>
>>>> Best regards,
>>>> Hoegeun
>>>>
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
>
>

2017-06-07 06:14:26

by Hoegeun Kwon

[permalink] [raw]
Subject: Re: [PATCH v5 4/5] arm64: dts: exynos: Remove the OF graph from DSI node

On 05/19/2017 03:17 PM, Hoegeun Kwon wrote:
> On 05/16/2017 01:48 AM, Krzysztof Kozlowski wrote:
>> On Wed, Mar 08, 2017 at 01:54:11PM +0900, Hoegeun Kwon wrote:
>>> The OF graph is not needed because the panel is a child of dsi. Remove
>>> the ports node in DSI node.
>>>
>>> Signed-off-by: Hoegeun Kwon <[email protected]>
>>> Reviewed-by: Andrzej Hajda <[email protected]>
>>> Reviewed-by: Andi Shyti <[email protected]>
>>> ---
>>> arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 14
>>> --------------
>>> 1 file changed, 14 deletions(-)
>>>
>> Hi,
>>
>> I wanted to apply this (and 5/5) but it seems that DRM change is not
>> merged. Was it included in v4.12-rc1?
>>
>> Best regards,
>> Krzysztof
>
> Hi,
>
> Sorry for my belated reply.
>
> The DRM patch(3/5) is not merged in v4.12-rc1 (mainline)...
> I have checked the David's branch, but not merged.
> However it was merged into Inki's exynos drm branch.
>
> Inki, Could you check the patch(3/5).
>
> Best regards,
> Hoegeun

Hi Krzysztof,

The drm patch(3/5) has been merged into v4.12-rc4.

Best regards,
Hoegeun


2017-06-09 07:37:43

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 4/5] arm64: dts: exynos: Remove the OF graph from DSI node

On Wed, Jun 07, 2017 at 03:14:20PM +0900, Hoegeun Kwon wrote:
> On 05/19/2017 03:17 PM, Hoegeun Kwon wrote:
> >On 05/16/2017 01:48 AM, Krzysztof Kozlowski wrote:
> >>On Wed, Mar 08, 2017 at 01:54:11PM +0900, Hoegeun Kwon wrote:
> >>>The OF graph is not needed because the panel is a child of dsi. Remove
> >>>the ports node in DSI node.
> >>>
> >>>Signed-off-by: Hoegeun Kwon <[email protected]>
> >>>Reviewed-by: Andrzej Hajda <[email protected]>
> >>>Reviewed-by: Andi Shyti <[email protected]>
> >>>---
> >>> arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 14
> >>>--------------
> >>> 1 file changed, 14 deletions(-)
> >>>
> >>Hi,
> >>
> >>I wanted to apply this (and 5/5) but it seems that DRM change is not
> >>merged. Was it included in v4.12-rc1?
> >>
> >>Best regards,
> >>Krzysztof
> >
> >Hi,
> >
> >Sorry for my belated reply.
> >
> >The DRM patch(3/5) is not merged in v4.12-rc1 (mainline)...
> >I have checked the David's branch, but not merged.
> >However it was merged into Inki's exynos drm branch.
> >
> >Inki, Could you check the patch(3/5).
> >
> >Best regards,
> >Hoegeun
>
> Hi Krzysztof,
>
> The drm patch(3/5) has been merged into v4.12-rc4.

Thanks for letting me know. My branch is rebased on v4.12-rc1 so to
maintain bisectabiltiy I would have to merge v4.12-rc4... thus making a
messy history.

It is just a cleanup so I will take it after releasing v4.12, so this
will end up in v4.14. No need to resend, I'll keep it in Patchwork.

Best regards,
Krzysztof

2017-07-18 05:03:23

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH v5 4/5] arm64: dts: exynos: Remove the OF graph from DSI node

On Wed, Mar 08, 2017 at 01:54:11PM +0900, Hoegeun Kwon wrote:
> The OF graph is not needed because the panel is a child of dsi. Remove
> the ports node in DSI node.
>
> Signed-off-by: Hoegeun Kwon <[email protected]>
> Reviewed-by: Andrzej Hajda <[email protected]>
> Reviewed-by: Andi Shyti <[email protected]>
> ---
> arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | 14 --------------
> 1 file changed, 14 deletions(-)
>

Thanks, applied this and 5/5.

Best regards,
Krzysztof