clock-debug uses a clock flag (CLKFLAG_HWCG) to determine if a clock is capable of hardware gating. Unfortunately, recent changes to clock handoff cause this flag to not always be set. Take mdp_axi_clk for example. It is a depends of mdp_clk, and so if mdp_clk is on out of the bootloader, mdp_axi_clk is indirectly enabled by the clk_prepare_enable() call in __handoff_clk() when mdp_clk is enabled. We could add support for handing off depends clocks, but we're planning on removing the depends code and there isn't a real problem in failing to hand off branches that are depends since they're hidden from consumers anyway. The only problem with this scenario is that branch_handoff() is not called and so mdp_axi_clk is not marked as supporting hardware clock gating. The clock flag is only used to indicate support for hardware clock gating, so let's just read the hardware anytime a users wants to know if the clock has hardware gating or not. This changes the semantics of the has_hw_gating file because we read the hardware instead of returning a cached value and the state of the hardware changes at runtime (e.g. if the clock is put into reset hardware gating is turned off). In practice these clocks aren't switching in and out of hardware gating mode while a clock test is in progress so the impact of this change is minimal to zero. Change-Id: I4f646b1b32b42e3ef00067b47ffb78df8fb761d5 Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>