Thread (51 messages) 51 messages, 7 authors, 2019-08-19

Re: [RFC PATCH 08/11] arm: dts: exynos: Add parents and #interconnect-cells to Exynos4412

From: Marek Szyprowski <m.szyprowski@samsung.com>
Date: 2019-07-26 12:02:44
Also in: dri-devel, linux-devicetree, linux-pm, linux-samsung-soc, lkml

Hi

On 2019-07-25 15:13, Chanwoo Choi wrote:
2019년 7월 24일 (수) 오전 8:07, Artur Świgoń [off-list ref]님이 작성:
quoted
This patch adds two fields tp the Exynos4412 DTS:
   - parent: to declare connections between nodes that are not in a
     parent-child relation in devfreq;
   - #interconnect-cells: required by the interconnect framework.

Please note that #interconnect-cells is always zero and node IDs are not
hardcoded anywhere.

Signed-off-by: Artur Świgoń <redacted>
---
  arch/arm/boot/dts/exynos4412-odroid-common.dtsi | 1 +
  arch/arm/boot/dts/exynos4412.dtsi               | 9 +++++++++
  2 files changed, 10 insertions(+)
diff --git a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi
index ea55f377d17c..bdd61ae86103 100644
--- a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi
+++ b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi
@@ -106,6 +106,7 @@
  &bus_leftbus {
         devfreq-events = <&ppmu_leftbus_3>, <&ppmu_rightbus_3>;
         vdd-supply = <&buck3_reg>;
+       parent = <&bus_dmc>;
It is wrong. 'bus_leftbus' has not any h/w dependency of 'bus_dmc'
and 'bus_leftbus' is not child of 'bus_dmc'.

Even it there are some PMQoS requirement between them,
it it not proper to tie both 'bus_leftbus' and 'bus_dmc'.
There is strict dependency between them. DMC bus running at frequency 
lower than left (or right) bus really doesn't make much sense, because 
it will limit the left bus performance. This dependency should be 
modeled somehow.
quoted
         status = "okay";
  };
diff --git a/arch/arm/boot/dts/exynos4412.dtsi b/arch/arm/boot/dts/exynos4412.dtsi
index d20db2dfe8e2..a70a671acacd 100644
--- a/arch/arm/boot/dts/exynos4412.dtsi
+++ b/arch/arm/boot/dts/exynos4412.dtsi
@@ -390,6 +390,7 @@
                         clocks = <&clock CLK_DIV_DMC>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_dmc_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -398,6 +399,7 @@
                         clocks = <&clock CLK_DIV_ACP>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_acp_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -406,6 +408,7 @@
                         clocks = <&clock CLK_DIV_C2C>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_dmc_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -459,6 +462,7 @@
                         clocks = <&clock CLK_DIV_GDL>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_leftbus_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -467,6 +471,7 @@
                         clocks = <&clock CLK_DIV_GDR>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_leftbus_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -475,6 +480,7 @@
                         clocks = <&clock CLK_ACLK160>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_display_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -483,6 +489,7 @@
                         clocks = <&clock CLK_ACLK133>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_fsys_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -491,6 +498,7 @@
                         clocks = <&clock CLK_ACLK100>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_peri_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };
@@ -499,6 +507,7 @@
                         clocks = <&clock CLK_SCLK_MFC>;
                         clock-names = "bus";
                         operating-points-v2 = <&bus_leftbus_opp_table>;
+                       #interconnect-cells = <0>;
                         status = "disabled";
                 };

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


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help