linux/drivers/clk/baikal-t1
Serge Semin 70fa895488 clk: baikal-t1: Move reset-controls code into a dedicated module
Before adding the directly controlled resets support it's reasonable to
move the existing resets control functionality into a dedicated object for
the sake of the CCU dividers clock driver simplification. After the new
functionality was added clk-ccu-div.c would have got to a mixture of the
weakly dependent clocks and resets methods. Splitting the methods up into
the two objects will make the code easier to read and maintain. It shall
also improve the code scalability (though hopefully we won't need this
part that much in the future).

The reset control functionality is now implemented in the framework of a
single unit since splitting it up doesn't make much sense due to
relatively simple reset operations. The ccu-rst.c has been designed to be
looking like ccu-div.c or ccu-pll.c with two globally available methods
for the sake of the code unification and better code readability.

This commit doesn't provide any change in the CCU reset implementation
semantics. As before the driver will support the trigger-like CCU resets
only, which are responsible for the AXI-bus, APB-bus and SATA-ref blocks
reset. The assert/de-assert-capable reset controls support will be added
in the next commit.

Note the CCU Clock dividers and resets functionality split up was possible
due to not having any side-effects (at least we didn't found ones) of the
regmap-based concurrent access of the common CCU dividers/reset CSRs.

Signed-off-by: Serge Semin <Sergey.Semin@baikalelectronics.ru>
Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Link: https://lore.kernel.org/r/20220929225402.9696-6-Sergey.Semin@baikalelectronics.ru
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
2022-09-30 14:19:33 -07:00
..
ccu-div.c clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00
ccu-div.h clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00
ccu-pll.c
ccu-pll.h
ccu-rst.c clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00
ccu-rst.h clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00
clk-ccu-div.c clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00
clk-ccu-pll.c clk: baikal-t1: Mark Ethernet PLL as critical 2020-10-13 19:48:34 -07:00
Kconfig clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00
Makefile clk: baikal-t1: Move reset-controls code into a dedicated module 2022-09-30 14:19:33 -07:00