lkml.org 
[lkml]   [2018]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH v12 3/4] iommu/arm-smmu: Add the device_link between masters and smmu
From
Date


On 7/16/2018 2:25 PM, Rafael J. Wysocki wrote:
> On Thu, Jul 12, 2018 at 2:41 PM, Vivek Gautam
> <vivek.gautam@codeaurora.org> wrote:
>> Hi Rafael,
>>
>>
>> On Wed, Jul 11, 2018 at 4:06 PM, Vivek Gautam
>> <vivek.gautam@codeaurora.org> wrote:
>>> Hi Rafael,
>>>
>>>
>>>
>>> On 7/11/2018 3:23 PM, Rafael J. Wysocki wrote:
>>>> On Sunday, July 8, 2018 7:34:12 PM CEST Vivek Gautam wrote:
>>>>> From: Sricharan R <sricharan@codeaurora.org>
>>>>>
>>>>> Finally add the device link between the master device and
>>>>> smmu, so that the smmu gets runtime enabled/disabled only when the
>>>>> master needs it. This is done from add_device callback which gets
>>>>> called once when the master is added to the smmu.
>>>>>
>>>>> Signed-off-by: Sricharan R <sricharan@codeaurora.org>
>>>>> Signed-off-by: Vivek Gautam <vivek.gautam@codeaurora.org>
>>>>> Reviewed-by: Tomasz Figa <tfiga@chromium.org>
>>>>> Cc: Rafael J. Wysocki <rjw@rjwysocki.net>
>>>>> Cc: Lukas Wunner <lukas@wunner.de>
>>>>> ---
>>>>>
>>>>> - Change since v11
>>>>> * Replaced DL_FLAG_AUTOREMOVE flag with DL_FLAG_AUTOREMOVE_SUPPLIER.
>>>>>
>>>>> drivers/iommu/arm-smmu.c | 12 ++++++++++++
>>>>> 1 file changed, 12 insertions(+)
>>>>>
>>>>> diff --git a/drivers/iommu/arm-smmu.c b/drivers/iommu/arm-smmu.c
>>>>> index 09265e206e2d..916cde4954d2 100644
>>>>> --- a/drivers/iommu/arm-smmu.c
>>>>> +++ b/drivers/iommu/arm-smmu.c
>>>>> @@ -1461,8 +1461,20 @@ static int arm_smmu_add_device(struct device *dev)
>>>>> iommu_device_link(&smmu->iommu, dev);
>>>>> + if (pm_runtime_enabled(smmu->dev) &&
>>>> Why does the creation of the link depend on whether or not runtime PM
>>>> is enabled for the MMU device?
>>>
>>> The main purpose of this device link is to handle the runtime PM
>>> synchronization
>>> between the supplier (iommu) and consumer (client devices, such as
>>> GPU/display).
>>> Moreover, the runtime pm is conditionally enabled for smmu devices that
>>> support
>>> such [1].
>> Is there something you would like me to modify in this patch?
> Not really, as long as you are sure that it is correct. :-)
>
> You need to remember, however, that if you add system-wide PM
> callbacks to the driver, the ordering between them and the client
> device callbacks during system-wide suspend matters as well. Don't
> you need the link the ensure the correct system-wide suspend ordering
> too?

The fact that currently we handle clocks only through runtime pm callbacks,
would it be better to call runtime pm put/get in system-wide PM callbacks.
This would be same as i mentioned in the other thread.

Best regards
Vivek

> --
> To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html

\
 
 \ /
  Last update: 2018-07-16 13:47    [W:0.085 / U:0.168 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site