]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
clk: clk-axi-clkgen: make sure to enable the AXI bus clock
authorNuno Sa <nuno.sa@analog.com>
Tue, 29 Oct 2024 13:59:42 +0000 (14:59 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 14 Dec 2024 18:51:03 +0000 (19:51 +0100)
commit1b26918fd8493062e3e59d847ce43e70fdcdf065
tree222583fac24f183604d84afb6b5ef1c0872ed0e7
parent5a254ffef286b0d4e4f6b5d746adc9c2f10fe1ed
clk: clk-axi-clkgen: make sure to enable the AXI bus clock

[ Upstream commit c64ef7e4851d1a9abbb7f7833e4936973ac5ba79 ]

In order to access the registers of the HW, we need to make sure that
the AXI bus clock is enabled. Hence let's increase the number of clocks
by one.

In order to keep backward compatibility and make sure old DTs still work
we check if clock-names is available or not. If it is, then we can
disambiguate between really having the AXI clock or a parent clock and
so we can enable the bus clock. If not, we fallback to what was done
before and don't explicitly enable the AXI bus clock.

Note that if clock-names is given, the axi clock must be the last one in
the phandle array (also enforced in the DT bindings) so that we can reuse
as much code as possible.

Fixes: 0e646c52cf0e ("clk: Add axi-clkgen driver")
Signed-off-by: Nuno Sa <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20241029-axi-clkgen-fix-axiclk-v2-2-bc5e0733ad76@analog.com
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/clk/clk-axi-clkgen.c