[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5A8FEEC1.5040303@rock-chips.com>
Date: Fri, 23 Feb 2018 18:36:49 +0800
From: JeffyChen <jeffy.chen@...k-chips.com>
To: Randy Li <randy.li@...k-chips.com>, tfiga@...omium.org
CC: Robin Murphy <robin.murphy@....com>, linux-kernel@...r.kernel.org,
Mark Rutland <mark.rutland@....com>,
devicetree@...r.kernel.org, xxm@...k-chips.com,
Joerg Roedel <joro@...tes.org>, jcliang@...omium.org,
linux-rockchip@...ts.infradead.org,
iommu@...ts.linux-foundation.org, Rob Herring <robh+dt@...nel.org>,
linux-arm-kernel@...ts.infradead.org,
Heiko Stuebner <heiko@...ech.de>
Subject: Re: [PATCH v4 08/13] iommu/rockchip: Control clocks needed to access
the IOMMU
Hi guys,
On 01/25/2018 06:24 PM, JeffyChen wrote:
> On 01/25/2018 05:42 PM, Randy Li wrote:
>>>>
>>>
>>> confirmed with Simon, there might be some iommus don't have a pd, and
>> We use the pd to control the NIU node(not on upstream), without a pd or
>> fake pd, none of the platform would work.
> after talked offline, it's possible to have iommu without pd in upstream
> kernel(and chromeos kernel), but on our internal kernel, the drivers
> would require pd(or fake pd) to reset modules when error happens.
>
> anyway, i think that means we do need clock control here.
found another reason to not depend on pd to control clocks.
currently we are using pd's pm_clk to keep clocks enabled during power
on. but in our pd binding doc, that is not needed:
- clocks (optional): phandles to clocks which need to be enabled while
power domain
switches state.
confirmed with Caesar, the pm_clk only required for some old
chips(rk3288 for example) due to hardware issue.
and i tested my chromebook kevin(rk3399), it works well after remove the
pm_clk:
+++ b/drivers/soc/rockchip/pm_domains.c
@@ -478,7 +478,6 @@ static int rockchip_pm_add_one_domain(struct
rockchip_pmu *pmu,
pd->genpd.power_on = rockchip_pd_power_on;
pd->genpd.attach_dev = rockchip_pd_attach_dev;
pd->genpd.detach_dev = rockchip_pd_detach_dev;
- pd->genpd.flags = GENPD_FLAG_PM_CLK;
will do more tests and send patch tomorrow.
>
>>> the CONFIG_PM could be disabled.I am hard to believe a modern platform
>>> can work without that.
>>>
>>> so it might be better to control clocks in iommu driver itself.
>> I won't
>> insist how the version of the iommu patch on the upstream, I
>> just post an idea here.
>> The version for kernel 4.4 is under internal review, the implementation
>> has been modified many times.
>>
>> I would suggest the managing clocks in pd is a more easy way and don't
>> need to spare those thing in two places.
Powered by blists - more mailing lists