Re: [PATCHv3 2/2] iommu/arm-smmu: Add SMMU clock
From: Thor Thayer
Date: Thu Oct 04 2018 - 17:02:40 EST
Hi Vivek,
On 10/04/2018 01:49 PM, Vivek Gautam wrote:
Hi Thor,
On 10/4/2018 3:58 AM, thor.thayer@xxxxxxxxxxxxxxx wrote:
From: Thor Thayer <thor.thayer@xxxxxxxxxxxxxxx>
Add a clock to the SMMU structure. In the device tree case,
check for a clock node and enable the clock if found.
This patch is dependent upon the following patches that add
a device tree bulk clock function.
"[V6, 1/4] clk: bulk: add of_clk_bulk_get()"
https://patchwork.kernel.org/patch/10583133/
"[V6, 2/4] clk: add new APIs to operation on all available
clocks"
https://patchwork.kernel.org/patch/10583131/
"[V6, 3/4] clk: add managed version of clk_bulk_get_all"
https://patchwork.kernel.org/patch/10583139/
Signed-off-by: Thor Thayer <thor.thayer@xxxxxxxxxxxxxxx>
---
 drivers/iommu/arm-smmu.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)
The clock part is already handled by one of the patch in the
runtime pm series of arm-smmu [1]. This patch should not be needed.
[1] https://patchwork.kernel.org/patch/10581899/
[...]
Regards
Vivek
Thanks. FYI, I had problems applying [v16,2/5] on [1] but was able to
apply [v17,2/5] cleanly.
The bigger issue is that with your patchset I need to create a new
structure for my variation of the ARM SMMUv2 due to the
of_device_get_match_data() call in arm_smmu_device_dt_probe(). I want to
use the default arm_mmu500 but it doesn't have a clock specified and I
end up with num_clks of 0.
Creating a new smmu_match_data structure for each variant feels wrong
because I have the clock data specified in my device tree. The
of_clk_bulk_get() call handles this nicely but that patchset isn't
getting much attention.
I'll investigate adding the of_clk_bulk_get() call on top of your
patches. This may simplify your patches too since the additional
structures in [v16,5/5] wouldn't be needed.
Thanks,
Thor
[1] git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git - next