mbox series

[RFC,0/9] reset: amlogic: move reset drivers out of CCF

Message ID 20240516150842.705844-1-jbrunet@baylibre.com (mailing list archive)
Headers show
Series reset: amlogic: move reset drivers out of CCF | expand

Message

Jerome Brunet May 16, 2024, 3:08 p.m. UTC
This RFC follows the discussion about having reset driver in the clock tree
[1]. Ideally those should reside in the reset part of tree.

Also the code of the amlogic reset driver is very similar between the 2 trees
and could use the same driver code.

This RFC moves the reset driver of audio clock controller of the g12 and
sm1 SoC family to the reset tree, using the auxiliary bus.

The infrastructure put in place is meant to be generic enough so we may
eventually also move the reset drivers in the meson8b and aoclk clock
controllers.

[1] https://lore.kernel.org/linux-clk/e3a85852b911fdf16dd9ae158f42b3ef.sboyd@kernel.org

Jerome Brunet (9):
  reset: amlogic: convert driver to regmap
  reset: amlogic: add driver parameters
  reset: amlogic: split the device and platform probe
  reset: amlogic: use reset number instead of register count
  reset: amlogic: add reset status support
  reset: amlogic: add toggle reset support
  reset: amlogic: add auxiliary reset driver support
  clk: meson: add auxiliary reset helper driver
  clk: amlogic: axg-audio: use the auxiliary reset driver

 drivers/clk/meson/Kconfig                     |   6 +
 drivers/clk/meson/Makefile                    |   1 +
 drivers/clk/meson/axg-audio.c                 | 108 +--------
 drivers/clk/meson/meson-clk-rst-aux.c         |  84 +++++++
 drivers/clk/meson/meson-clk-rst-aux.h         |  14 ++
 drivers/reset/Kconfig                         |   1 +
 drivers/reset/reset-meson.c                   | 210 ++++++++++++++----
 include/soc/amlogic/meson8b-auxiliary-reset.h |  17 ++
 8 files changed, 293 insertions(+), 148 deletions(-)
 create mode 100644 drivers/clk/meson/meson-clk-rst-aux.c
 create mode 100644 drivers/clk/meson/meson-clk-rst-aux.h
 create mode 100644 include/soc/amlogic/meson8b-auxiliary-reset.h

Comments

Jan Dakinevich May 18, 2024, 1:43 a.m. UTC | #1
This is a nice rework! But unfortunately after applying these patches at
least USB doesn't work on A1 SoC. My assumption it is because
RESET_MESON is now unselected due to dependency on AUXILIARY_BUS.

On 5/16/24 18:08, Jerome Brunet wrote:
> This RFC follows the discussion about having reset driver in the clock tree
> [1]. Ideally those should reside in the reset part of tree.
> 
> Also the code of the amlogic reset driver is very similar between the 2 trees
> and could use the same driver code.
> 
> This RFC moves the reset driver of audio clock controller of the g12 and
> sm1 SoC family to the reset tree, using the auxiliary bus.
> 
> The infrastructure put in place is meant to be generic enough so we may
> eventually also move the reset drivers in the meson8b and aoclk clock
> controllers.
> 
> [1] https://lore.kernel.org/linux-clk/e3a85852b911fdf16dd9ae158f42b3ef.sboyd@kernel.org
> 
> Jerome Brunet (9):
>   reset: amlogic: convert driver to regmap
>   reset: amlogic: add driver parameters
>   reset: amlogic: split the device and platform probe
>   reset: amlogic: use reset number instead of register count
>   reset: amlogic: add reset status support
>   reset: amlogic: add toggle reset support
>   reset: amlogic: add auxiliary reset driver support
>   clk: meson: add auxiliary reset helper driver
>   clk: amlogic: axg-audio: use the auxiliary reset driver
> 
>  drivers/clk/meson/Kconfig                     |   6 +
>  drivers/clk/meson/Makefile                    |   1 +
>  drivers/clk/meson/axg-audio.c                 | 108 +--------
>  drivers/clk/meson/meson-clk-rst-aux.c         |  84 +++++++
>  drivers/clk/meson/meson-clk-rst-aux.h         |  14 ++
>  drivers/reset/Kconfig                         |   1 +
>  drivers/reset/reset-meson.c                   | 210 ++++++++++++++----
>  include/soc/amlogic/meson8b-auxiliary-reset.h |  17 ++
>  8 files changed, 293 insertions(+), 148 deletions(-)
>  create mode 100644 drivers/clk/meson/meson-clk-rst-aux.c
>  create mode 100644 drivers/clk/meson/meson-clk-rst-aux.h
>  create mode 100644 include/soc/amlogic/meson8b-auxiliary-reset.h
>
Jan Dakinevich June 24, 2024, 1:48 p.m. UTC | #2
Jerome,

Do you have any updates? I'm looking forward to these changes so I can
continue my work on a1 audio clock controller driver.

On 5/16/24 18:08, Jerome Brunet wrote:
> This RFC follows the discussion about having reset driver in the clock tree
> [1]. Ideally those should reside in the reset part of tree.
> 
> Also the code of the amlogic reset driver is very similar between the 2 trees
> and could use the same driver code.
> 
> This RFC moves the reset driver of audio clock controller of the g12 and
> sm1 SoC family to the reset tree, using the auxiliary bus.
> 
> The infrastructure put in place is meant to be generic enough so we may
> eventually also move the reset drivers in the meson8b and aoclk clock
> controllers.
> 
> [1] https://lore.kernel.org/linux-clk/e3a85852b911fdf16dd9ae158f42b3ef.sboyd@kernel.org
> 
> Jerome Brunet (9):
>   reset: amlogic: convert driver to regmap
>   reset: amlogic: add driver parameters
>   reset: amlogic: split the device and platform probe
>   reset: amlogic: use reset number instead of register count
>   reset: amlogic: add reset status support
>   reset: amlogic: add toggle reset support
>   reset: amlogic: add auxiliary reset driver support
>   clk: meson: add auxiliary reset helper driver
>   clk: amlogic: axg-audio: use the auxiliary reset driver
> 
>  drivers/clk/meson/Kconfig                     |   6 +
>  drivers/clk/meson/Makefile                    |   1 +
>  drivers/clk/meson/axg-audio.c                 | 108 +--------
>  drivers/clk/meson/meson-clk-rst-aux.c         |  84 +++++++
>  drivers/clk/meson/meson-clk-rst-aux.h         |  14 ++
>  drivers/reset/Kconfig                         |   1 +
>  drivers/reset/reset-meson.c                   | 210 ++++++++++++++----
>  include/soc/amlogic/meson8b-auxiliary-reset.h |  17 ++
>  8 files changed, 293 insertions(+), 148 deletions(-)
>  create mode 100644 drivers/clk/meson/meson-clk-rst-aux.c
>  create mode 100644 drivers/clk/meson/meson-clk-rst-aux.h
>  create mode 100644 include/soc/amlogic/meson8b-auxiliary-reset.h
>
Jerome Brunet June 27, 2024, 7:37 a.m. UTC | #3
On Mon 24 Jun 2024 at 16:48, Jan Dakinevich <jan.dakinevich@salutedevices.com> wrote:

> Jerome,
>
> Do you have any updates? I'm looking forward to these changes so I can
> continue my work on a1 audio clock controller driver.

You have been CCed on the whole series.
You can see for yourself that there is still discussion going on.

>
> On 5/16/24 18:08, Jerome Brunet wrote:
>> This RFC follows the discussion about having reset driver in the clock tree
>> [1]. Ideally those should reside in the reset part of tree.
>> 
>> Also the code of the amlogic reset driver is very similar between the 2 trees
>> and could use the same driver code.
>> 
>> This RFC moves the reset driver of audio clock controller of the g12 and
>> sm1 SoC family to the reset tree, using the auxiliary bus.
>> 
>> The infrastructure put in place is meant to be generic enough so we may
>> eventually also move the reset drivers in the meson8b and aoclk clock
>> controllers.
>> 
>> [1] https://lore.kernel.org/linux-clk/e3a85852b911fdf16dd9ae158f42b3ef.sboyd@kernel.org
>> 
>> Jerome Brunet (9):
>>   reset: amlogic: convert driver to regmap
>>   reset: amlogic: add driver parameters
>>   reset: amlogic: split the device and platform probe
>>   reset: amlogic: use reset number instead of register count
>>   reset: amlogic: add reset status support
>>   reset: amlogic: add toggle reset support
>>   reset: amlogic: add auxiliary reset driver support
>>   clk: meson: add auxiliary reset helper driver
>>   clk: amlogic: axg-audio: use the auxiliary reset driver
>> 
>>  drivers/clk/meson/Kconfig                     |   6 +
>>  drivers/clk/meson/Makefile                    |   1 +
>>  drivers/clk/meson/axg-audio.c                 | 108 +--------
>>  drivers/clk/meson/meson-clk-rst-aux.c         |  84 +++++++
>>  drivers/clk/meson/meson-clk-rst-aux.h         |  14 ++
>>  drivers/reset/Kconfig                         |   1 +
>>  drivers/reset/reset-meson.c                   | 210 ++++++++++++++----
>>  include/soc/amlogic/meson8b-auxiliary-reset.h |  17 ++
>>  8 files changed, 293 insertions(+), 148 deletions(-)
>>  create mode 100644 drivers/clk/meson/meson-clk-rst-aux.c
>>  create mode 100644 drivers/clk/meson/meson-clk-rst-aux.h
>>  create mode 100644 include/soc/amlogic/meson8b-auxiliary-reset.h
>>