Re: [PATCH v15 0/6] add Amlogic A1 clock controller drivers

From: Jerome Brunet
Date: Tue May 30 2023 - 12:15:21 EST



On Wed 17 May 2023 at 16:33, Dmitry Rokosov <ddrokosov@xxxxxxxxxxxxxx> wrote:

> A1 SoC has four clock controllers on the board: PLL, Peripherals, CPU,
> and Audio. The audio clock controller is different from others, but the
> rest are very similar from a functional and regmap point of view.
> This patch series add support for Amlogic A1 PLL and Peripherals clock
> drivers.
> It blocks all A1 peripherals mainline support and a couple of patch series,
> which were already reviewed and acked, but weren't merged due to pending
> clock controller drivers series, e.g.
> https://lore.kernel.org/all/20230418111612.19479-1-ddrokosov@xxxxxxxxxxxxxx/
>
> TODO: CPU and Audio clock controllers are not included in this patch
> series, it will be sent later. The following clks from these controllers
> are not supported for now:
> * Audio clks - vad, mclk_vad, mclk_d, resample_a, locker_in, mclk_b,
> pdmdclk, pdmsysclk, eqdrc, spdifin, mclk_a, audio2_toaudiotop,
> audio2_tovad, audio2_toddr_vad, audio2_tdmin_vad, audio2_pdm,
> audio2_ddr_arb, audio_audiolocker, audio_eqdrc, audio_resamplea,
> audio_spdifin, audio_toddrb, audio_toddra, audio_frddrb, audio_frddra,
> audio_tdmoutb, audio_tdmouta, audio_loopbacka, audio_tdminlb,
> audio_tdminb, audio_tdmina, audio_ddr_arb, mclk_c
>
> * CPU clks: cpu_fixed_source_sel0, cpu_fixed_source_div0,
> cpu_fixed_source_sel1, cpu_fixed_source_div1, cpu_clk
>
> Validation:
> * to double check all clk flags run below helper script:
> pushd /sys/kernel/debug/clk
> for f in *; do
> if [[ -f "$f/clk_flags" ]]; then
> flags="$(cat $f/clk_flags | awk '{$1=$1};1' | sed ':a;N;$!ba;s/\n/ | /g')"
> echo -e "$f: $flags"
> fi
> done
> popd
>
> * to trace current clks state use '/sys/kernel/debug/clk/clk_dump' node
> with jq post-processing:
> $ cat /sys/kernel/debug/clk/clk_dump | jq '.' > clk_dump.json
>
> * to debug clk rate propagation, compile kernel with the following
> definition:
> $ sed -i "s/undef CLOCK_ALLOW_WRITE_DEBUGFS/define CLOCK_ALLOW_WRITE_DEBUGFS/g" drivers/clk/clk.c
> after that, clk_rate debug node for each clock will be available for
> write operation
>

Applied, Thx