Re: [PATCH v8 0/7] clk/resets: baikal-t1: Add DDR/PCIe resets and xGMAC/SATA fixes

From: Serge Semin
Date: Tue Jul 12 2022 - 08:16:58 EST


Hi @Stephen.

Philipp has completed the reset-related patches review. Could you
please merge the series in so it would make it into the kernel v5.20?

-Sergey

On Tue, Jul 12, 2022 at 03:14:58PM +0300, Serge Semin wrote:
> Folks! It has been over four months since the first series submission for
> review. Please merge it in.
>
> Short summary regarding this patchset. The series starts from fixing of
> the clocks glitching cause by the Renesas 5P49V6901 chip in some
> circumstances. Afterwards a few more modifications are introduced to
> finally finish the Baikal-T1 CCU unit support up and prepare the code
> before adding the Baikal-T1 PCIe/xGMAC support. First of all it turned out
> I specified wrong DW xGMAC PTP reference clock divider in my initial
> patches. It must be 8, not 10. Secondly I was wrong to add a joint xGMAC
> Ref and PTP clock instead of having them separately defined. The SoC
> manual describes these clocks as separate fixed clock wrappers. Finally
> in order to close the SoC clock/reset support up we need to add the DDR
> and PCIe interfaces reset controls support. It's done in two steps. First
> I've moved the reset-controls-related code into a dedicated module. Then
> the DDR/PCIe reset-control functionality is added. As the series
> finalization we've decided to convert the Baikal-T1 clock/reset source
> drivers to mainly being the platform device driver and pre-initialize the
> basic clocks only at the early kernel boot stages.
>
> Link: https://lore.kernel.org/linux-pci/20220324010905.15589-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v2:
> - Resubmit the series with adding @Philipp to the list of the recipients.
>
> Link: https://lore.kernel.org/linux-pci/20220330144320.27039-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v3:
> - No comments. Just resend the series.
> - Rebased from v5.17 onto v5.18-rc3.
>
> Link: https://lore.kernel.org/linux-clk/20220503205722.24755-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v4:
> - Completely split the CCU Dividers and Resets functionality up. (@Stephen)
> - Add a new fixes patch: "clk: baikal-t1: Actually enable SATA internal
> ref clock".
> - Add a new fixes patch: "reset: Fix devm bulk optional exclusive control
> getter".
> - Add a new fixes patch: "clk: vc5: Fix 5P49V6901 outputs disabling when
> enabling FOD".
> - Add a new feagure patch: "clk: baikal-t1: Convert to platform device
> driver".
> - Change the internal clock ID to the XGMAC-referred name.
> - Rebase onto the kernel v5.18.
>
> Link: https://lore.kernel.org/lkml/20220610072124.8714-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v5:
> - Just resend.
> - Rebase onto the kernel v5.19-rcX.
>
> Link: https://lore.kernel.org/linux-clk/20220624141853.7417-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v6:
> - Drop the patch
> [PATCH RESEND v5 1/8] reset: Fix devm bulk optional exclusive control getter
> since it has already been accepted by @Philipp.
> - Refactor the reset-control code to support the linear reset IDs only.
> (@Philipp)
> - Combine the reset-related code into a single file. (@Philipp)
> - Drop CCU_DIV_RST_MAP() macro. It's no longer used.
>
> Link: https://lore.kernel.org/linux-clk/20220708192725.9501-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v7:
> - Fix "Alignment should match open parenthesis" warning for the
> pr_err() method invocations. (@Philipp)
> - Drop empty line from the sys_rst_info structure initialization block.
> (@Philipp)
>
> Link: https://lore.kernel.org/linux-clk/20220711154433.15415-1-Sergey.Semin@xxxxxxxxxxxxxxxxxxxx/
> Changelog v8:
> - Fix "sef-deasserted" spelling in the CLK_BT1_CCU_RST config help
> text. (@Randy)
>
> Signed-off-by: Serge Semin <Sergey.Semin@xxxxxxxxxxxxxxxxxxxx>
> Cc: Alexey Malahov <Alexey.Malahov@xxxxxxxxxxxxxxxxxxxx>
> Cc: Pavel Parkhomenko <Pavel.Parkhomenko@xxxxxxxxxxxxxxxxxxxx>
> Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx>
> Cc: linux-clk@xxxxxxxxxxxxxxx
> Cc: linux-mips@xxxxxxxxxxxxxxx
> Cc: linux-kernel@xxxxxxxxxxxxxxx
>
> Serge Semin (7):
> clk: vc5: Fix 5P49V6901 outputs disabling when enabling FOD
> clk: baikal-t1: Fix invalid xGMAC PTP clock divider
> clk: baikal-t1: Add shared xGMAC ref/ptp clocks internal parent
> clk: baikal-t1: Add SATA internal ref clock buffer
> clk: baikal-t1: Move reset-controls code into a dedicated module
> clk: baikal-t1: Add DDR/PCIe directly controlled resets support
> clk: baikal-t1: Convert to platform device driver
>
> drivers/clk/baikal-t1/Kconfig | 12 +-
> drivers/clk/baikal-t1/Makefile | 1 +
> drivers/clk/baikal-t1/ccu-div.c | 84 +++++++--
> drivers/clk/baikal-t1/ccu-div.h | 17 +-
> drivers/clk/baikal-t1/ccu-pll.h | 8 +
> drivers/clk/baikal-t1/ccu-rst.c | 217 +++++++++++++++++++++++
> drivers/clk/baikal-t1/ccu-rst.h | 67 +++++++
> drivers/clk/baikal-t1/clk-ccu-div.c | 263 ++++++++++++++++------------
> drivers/clk/baikal-t1/clk-ccu-pll.c | 128 +++++++++++---
> drivers/clk/clk-versaclock5.c | 2 +-
> include/dt-bindings/reset/bt1-ccu.h | 9 +
> 11 files changed, 647 insertions(+), 161 deletions(-)
> create mode 100644 drivers/clk/baikal-t1/ccu-rst.c
> create mode 100644 drivers/clk/baikal-t1/ccu-rst.h
>
> --
> 2.35.1
>