Quoting AngeloGioacchino Del Regno (2021-01-14 14:10:53) > The GPU IOMMU depends on this clock and the hypervisor will crash > the SoC if this clock gets disabled because the secure contexts > that have been set on this IOMMU by the bootloader will become > unaccessible (or they get reset). > Mark this clock as critical to avoid this issue when the Adreno > GPU is enabled. > > Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@xxxxxxxxxxxxxx> > --- > drivers/clk/qcom/gcc-msm8998.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/drivers/clk/qcom/gcc-msm8998.c b/drivers/clk/qcom/gcc-msm8998.c > index c8d4c0348952..afea60a3ef43 100644 > --- a/drivers/clk/qcom/gcc-msm8998.c > +++ b/drivers/clk/qcom/gcc-msm8998.c > @@ -2081,6 +2081,12 @@ static struct clk_branch gcc_gpu_cfg_ahb_clk = { > .hw.init = &(struct clk_init_data){ > .name = "gcc_gpu_cfg_ahb_clk", > .ops = &clk_branch2_ops, > + /* > + * The GPU IOMMU depends on this clock and hypervisor > + * will crash the SoC if this clock goes down, due to > + * secure contexts protection. > + */ > + .flags = CLK_IS_CRITICAL, > }, > }, Please send a followup patch that hits the branch on at probe time and removes this clk from the kernel. That will save some memory and overhead of worrying about this clk.