[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <a54e4275-012e-77d9-bdbe-1aab64b5c12b@samsung.com>
Date: Fri, 27 Dec 2019 09:09:58 +0900
From: Chanwoo Choi <cw00.choi@...sung.com>
To: Rob Herring <robh@...nel.org>
Cc: krzk@...nel.org, mark.rutland@....com, heiko@...ech.de,
leonard.crestez@....com, lukasz.luba@....com, a.swigon@...sung.com,
m.szyprowski@...sung.com, kgene@...nel.org,
myungjoo.ham@...sung.com, kyungmin.park@...sung.com,
linux-pm@...r.kernel.org, linux-samsung-soc@...r.kernel.org,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org, linux-rockchip@...ts.infradead.org
Subject: Re: [PATCH 4/9] PM / devfreq: exynos-bus: Replace deprecated
'devfreq' property
On 12/27/19 6:01 AM, Rob Herring wrote:
> On Tue, Dec 17, 2019 at 02:57:33PM +0900, Chanwoo Choi wrote:
>> In order to remove the deprecated 'devfreq' property, replace with
>> new 'exynos,parent-bus' property in order to get the parent devfreq device
>> in devicetree file instead of 'devfreq' property. But, to guarantee the
>> backward-compatibility, keep the support 'devfreq' property.
>>
>> Signed-off-by: Chanwoo Choi <cw00.choi@...sung.com>
>> ---
>> .../bindings/devfreq/exynos-bus.txt | 16 +++++++--------
>> drivers/devfreq/exynos-bus.c | 20 ++++++++++++-------
>> 2 files changed, 21 insertions(+), 15 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/devfreq/exynos-bus.txt b/Documentation/devicetree/bindings/devfreq/exynos-bus.txt
>> index e71f752cc18f..c948cee01124 100644
>> --- a/Documentation/devicetree/bindings/devfreq/exynos-bus.txt
>> +++ b/Documentation/devicetree/bindings/devfreq/exynos-bus.txt
>> @@ -45,7 +45,7 @@ Required properties only for parent bus device:
>> of buses.
>>
>> Required properties only for passive bus device:
>> -- devfreq: the parent bus device.
>> +- exynos,parent-bus: the parent bus device.
>
> If you are going to do something new, why not use the interconnect
> binding here?
As I knew, interconnect make the data path among multiple nodes
and set the average and peak bandwidth to the specific data path.
It means that some data will be flowed from node_a to node_d
or the reverse way because each node has the tightly coupled
dependency for data flow.
node_a <-> node_b <-> node_c <-> node_d
On the other hand, exynos-bus.c driver is not related to 'data path'.
Each bus just need to control the their own frequency and voltage.
But, share the power line (regulator) between exynos-bus device
even if there are no any dependency of data flow.
'exynos,parent-bus' property just indicate the specific
devfreq device(parent bus device) which controls
the shared power line(regulator) in order to prevent
the h/w problem due to the wrong pair of frequency and voltage.
'exynos,parent-bus' property is only used to catch
the change timing of shared power line.
And,
as you commented, there are some data path among the exynos-bus
devices for the display h/w as following:
bus_display -> bus_leftbus -> bus_dmc
In order to make the data path between bus devices,
interconnect binding is required. This approach[1] was posted.
[1] https://patchwork.kernel.org/cover/11305265/
- [RFC,v3,0/7] PM / devfreq: Simple QoS for exynos-bus using interconnect
--
Best Regards,
Chanwoo Choi
Samsung Electronics
Powered by blists - more mailing lists