mbox series

[0/5] dts: amlogic: switch to the new PWM controller binding

Message ID 20241227212514.1376682-1-martin.blumenstingl@googlemail.com (mailing list archive)
Headers show
Series dts: amlogic: switch to the new PWM controller binding | expand

Message

Martin Blumenstingl Dec. 27, 2024, 9:25 p.m. UTC
This series switches all Amlogic SoCs to use the new PWM controller
binding. The main benefits of the new binding are:
- the pwm controller driver now picks the best possible clock to
  achieve the most accurate pwm output
- board.dts don't have to know about the pwm clock inputs anymore (as
  the driver picks the best one automatically)
- new SoCs only need a new compatible string but no pwm-meson driver
  changes, assuming only the clock inputs differ from older IP
  revisions

This silences the following warning(s) at boot (for each pwm
controller instance):
  using obsolete compatible, please consider updating dt

I have tested this on two devices:
- meson8b: odroidc1 (boots fine and cycling through all CPU
  frequencies and thus voltages works fine)
- meson-sm1: x96-air-gbit (boots and the rtw8822cs SDIO card is
  detected, so the 32kHz clock for the SDIO card works)

Since I cannot test all devices I'm asking for this series to be
applied so the Kernel CI board farm can help verify it works on all
boards available there.


Martin Blumenstingl (5):
  ARM: dts: amlogic: meson8: switch to the new PWM controller binding
  ARM: dts: amlogic: meson8b: switch to the new PWM controller binding
  arm64: dts: amlogic: gx: switch to the new PWM controller binding
  arm64: dts: amlogic: axg: switch to the new PWM controller binding
  arm64: dts: amlogic: g12: switch to the new PWM controller binding

 arch/arm/boot/dts/amlogic/meson8.dtsi         | 18 ++++++++--
 arch/arm/boot/dts/amlogic/meson8b-ec100.dts   |  2 --
 arch/arm/boot/dts/amlogic/meson8b-mxq.dts     |  2 --
 .../arm/boot/dts/amlogic/meson8b-odroidc1.dts |  2 --
 arch/arm/boot/dts/amlogic/meson8b.dtsi        | 18 ++++++++--
 arch/arm64/boot/dts/amlogic/meson-axg.dtsi    | 24 +++++++++++---
 .../boot/dts/amlogic/meson-g12-common.dtsi    | 33 ++++++++++++++++---
 .../boot/dts/amlogic/meson-g12a-fbx8am.dts    |  4 ---
 .../dts/amlogic/meson-g12a-radxa-zero.dts     |  4 ---
 .../boot/dts/amlogic/meson-g12a-sei510.dts    |  4 ---
 .../boot/dts/amlogic/meson-g12a-u200.dts      |  2 --
 .../boot/dts/amlogic/meson-g12a-x96-max.dts   |  4 ---
 .../amlogic/meson-g12b-a311d-libretech-cc.dts |  2 --
 .../dts/amlogic/meson-g12b-bananapi-cm4.dtsi  |  4 ---
 .../boot/dts/amlogic/meson-g12b-bananapi.dtsi |  4 ---
 .../dts/amlogic/meson-g12b-khadas-vim3.dtsi   |  4 ---
 .../boot/dts/amlogic/meson-g12b-odroid.dtsi   |  4 ---
 .../dts/amlogic/meson-g12b-radxa-zero2.dts    |  8 -----
 .../boot/dts/amlogic/meson-g12b-w400.dtsi     |  6 ----
 .../dts/amlogic/meson-gx-libretech-pc.dtsi    |  6 ----
 .../boot/dts/amlogic/meson-gx-p23x-q20x.dtsi  |  2 --
 arch/arm64/boot/dts/amlogic/meson-gx.dtsi     |  8 ++---
 .../boot/dts/amlogic/meson-gxbb-nanopi-k2.dts |  2 --
 .../dts/amlogic/meson-gxbb-nexbox-a95x.dts    |  2 --
 .../boot/dts/amlogic/meson-gxbb-p20x.dtsi     |  2 --
 .../boot/dts/amlogic/meson-gxbb-vega-s95.dtsi |  2 --
 .../boot/dts/amlogic/meson-gxbb-wetek.dtsi    |  2 --
 arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi   | 25 ++++++++++++++
 .../boot/dts/amlogic/meson-gxl-s805x-p241.dts |  2 --
 .../meson-gxl-s905w-jethome-jethub-j80.dts    |  2 --
 .../meson-gxl-s905x-hwacom-amazetv.dts        |  2 --
 .../amlogic/meson-gxl-s905x-khadas-vim.dts    |  2 --
 .../amlogic/meson-gxl-s905x-nexbox-a95x.dts   |  2 --
 .../dts/amlogic/meson-gxl-s905x-p212.dtsi     |  2 --
 arch/arm64/boot/dts/amlogic/meson-gxl.dtsi    | 25 ++++++++++++++
 .../dts/amlogic/meson-gxm-khadas-vim2.dts     |  4 ---
 .../boot/dts/amlogic/meson-gxm-rbox-pro.dts   |  2 --
 .../amlogic/meson-libretech-cottonwood.dtsi   |  6 ----
 .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi     |  6 ----
 .../boot/dts/amlogic/meson-sm1-bananapi.dtsi  |  2 --
 .../dts/amlogic/meson-sm1-khadas-vim3l.dts    |  2 --
 .../boot/dts/amlogic/meson-sm1-odroid.dtsi    |  2 --
 .../boot/dts/amlogic/meson-sm1-sei610.dts     |  6 ----
 43 files changed, 132 insertions(+), 135 deletions(-)

Comments

Neil Armstrong Dec. 30, 2024, 9:56 a.m. UTC | #1
On 27/12/2024 22:25, Martin Blumenstingl wrote:
> This series switches all Amlogic SoCs to use the new PWM controller
> binding. The main benefits of the new binding are:
> - the pwm controller driver now picks the best possible clock to
>    achieve the most accurate pwm output
> - board.dts don't have to know about the pwm clock inputs anymore (as
>    the driver picks the best one automatically)
> - new SoCs only need a new compatible string but no pwm-meson driver
>    changes, assuming only the clock inputs differ from older IP
>    revisions
> 
> This silences the following warning(s) at boot (for each pwm
> controller instance):
>    using obsolete compatible, please consider updating dt
> 
> I have tested this on two devices:
> - meson8b: odroidc1 (boots fine and cycling through all CPU
>    frequencies and thus voltages works fine)
> - meson-sm1: x96-air-gbit (boots and the rtw8822cs SDIO card is
>    detected, so the 32kHz clock for the SDIO card works)
> 
> Since I cannot test all devices I'm asking for this series to be
> applied so the Kernel CI board farm can help verify it works on all
> boards available there.

Ack I'll appply them for the next release so it stays in -next for a while.

For the serie:
Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>

Thanks!
Neil

> 
> 
> Martin Blumenstingl (5):
>    ARM: dts: amlogic: meson8: switch to the new PWM controller binding
>    ARM: dts: amlogic: meson8b: switch to the new PWM controller binding
>    arm64: dts: amlogic: gx: switch to the new PWM controller binding
>    arm64: dts: amlogic: axg: switch to the new PWM controller binding
>    arm64: dts: amlogic: g12: switch to the new PWM controller binding
> 
>   arch/arm/boot/dts/amlogic/meson8.dtsi         | 18 ++++++++--
>   arch/arm/boot/dts/amlogic/meson8b-ec100.dts   |  2 --
>   arch/arm/boot/dts/amlogic/meson8b-mxq.dts     |  2 --
>   .../arm/boot/dts/amlogic/meson8b-odroidc1.dts |  2 --
>   arch/arm/boot/dts/amlogic/meson8b.dtsi        | 18 ++++++++--
>   arch/arm64/boot/dts/amlogic/meson-axg.dtsi    | 24 +++++++++++---
>   .../boot/dts/amlogic/meson-g12-common.dtsi    | 33 ++++++++++++++++---
>   .../boot/dts/amlogic/meson-g12a-fbx8am.dts    |  4 ---
>   .../dts/amlogic/meson-g12a-radxa-zero.dts     |  4 ---
>   .../boot/dts/amlogic/meson-g12a-sei510.dts    |  4 ---
>   .../boot/dts/amlogic/meson-g12a-u200.dts      |  2 --
>   .../boot/dts/amlogic/meson-g12a-x96-max.dts   |  4 ---
>   .../amlogic/meson-g12b-a311d-libretech-cc.dts |  2 --
>   .../dts/amlogic/meson-g12b-bananapi-cm4.dtsi  |  4 ---
>   .../boot/dts/amlogic/meson-g12b-bananapi.dtsi |  4 ---
>   .../dts/amlogic/meson-g12b-khadas-vim3.dtsi   |  4 ---
>   .../boot/dts/amlogic/meson-g12b-odroid.dtsi   |  4 ---
>   .../dts/amlogic/meson-g12b-radxa-zero2.dts    |  8 -----
>   .../boot/dts/amlogic/meson-g12b-w400.dtsi     |  6 ----
>   .../dts/amlogic/meson-gx-libretech-pc.dtsi    |  6 ----
>   .../boot/dts/amlogic/meson-gx-p23x-q20x.dtsi  |  2 --
>   arch/arm64/boot/dts/amlogic/meson-gx.dtsi     |  8 ++---
>   .../boot/dts/amlogic/meson-gxbb-nanopi-k2.dts |  2 --
>   .../dts/amlogic/meson-gxbb-nexbox-a95x.dts    |  2 --
>   .../boot/dts/amlogic/meson-gxbb-p20x.dtsi     |  2 --
>   .../boot/dts/amlogic/meson-gxbb-vega-s95.dtsi |  2 --
>   .../boot/dts/amlogic/meson-gxbb-wetek.dtsi    |  2 --
>   arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi   | 25 ++++++++++++++
>   .../boot/dts/amlogic/meson-gxl-s805x-p241.dts |  2 --
>   .../meson-gxl-s905w-jethome-jethub-j80.dts    |  2 --
>   .../meson-gxl-s905x-hwacom-amazetv.dts        |  2 --
>   .../amlogic/meson-gxl-s905x-khadas-vim.dts    |  2 --
>   .../amlogic/meson-gxl-s905x-nexbox-a95x.dts   |  2 --
>   .../dts/amlogic/meson-gxl-s905x-p212.dtsi     |  2 --
>   arch/arm64/boot/dts/amlogic/meson-gxl.dtsi    | 25 ++++++++++++++
>   .../dts/amlogic/meson-gxm-khadas-vim2.dts     |  4 ---
>   .../boot/dts/amlogic/meson-gxm-rbox-pro.dts   |  2 --
>   .../amlogic/meson-libretech-cottonwood.dtsi   |  6 ----
>   .../boot/dts/amlogic/meson-sm1-ac2xx.dtsi     |  6 ----
>   .../boot/dts/amlogic/meson-sm1-bananapi.dtsi  |  2 --
>   .../dts/amlogic/meson-sm1-khadas-vim3l.dts    |  2 --
>   .../boot/dts/amlogic/meson-sm1-odroid.dtsi    |  2 --
>   .../boot/dts/amlogic/meson-sm1-sei610.dts     |  6 ----
>   43 files changed, 132 insertions(+), 135 deletions(-)
>
Neil Armstrong Dec. 30, 2024, 9:59 a.m. UTC | #2
Hi,

On Fri, 27 Dec 2024 22:25:09 +0100, Martin Blumenstingl wrote:
> This series switches all Amlogic SoCs to use the new PWM controller
> binding. The main benefits of the new binding are:
> - the pwm controller driver now picks the best possible clock to
>   achieve the most accurate pwm output
> - board.dts don't have to know about the pwm clock inputs anymore (as
>   the driver picks the best one automatically)
> - new SoCs only need a new compatible string but no pwm-meson driver
>   changes, assuming only the clock inputs differ from older IP
>   revisions
> 
> [...]

Thanks, Applied to https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git (v6.15/arm-dt)

[1/5] ARM: dts: amlogic: meson8: switch to the new PWM controller binding
      https://git.kernel.org/amlogic/c/d352e8fc91526bdbb70468e8dea13581b905891f
[2/5] ARM: dts: amlogic: meson8b: switch to the new PWM controller binding
      https://git.kernel.org/amlogic/c/39786592bfdd92b64a68283fa896e108ca9822de

These changes has been applied on the intermediate git tree [1].

The v6.15/arm-dt branch will then be sent via a formal Pull Request to the Linux SoC maintainers
for inclusion in their intermediate git branches in order to be sent to Linus during
the next merge window, or sooner if it's a set of fixes.

In the cases of fixes, those will be merged in the current release candidate
kernel and as soon they appear on the Linux master branch they will be
backported to the previous Stable and Long-Stable kernels [2].

The intermediate git branches are merged daily in the linux-next tree [3],
people are encouraged testing these pre-release kernels and report issues on the
relevant mailing-lists.

If problems are discovered on those changes, please submit a signed-off-by revert
patch followed by a corrective changeset.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
[3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
Neil Armstrong Dec. 30, 2024, 9:59 a.m. UTC | #3
Hi,

On Fri, 27 Dec 2024 22:25:09 +0100, Martin Blumenstingl wrote:
> This series switches all Amlogic SoCs to use the new PWM controller
> binding. The main benefits of the new binding are:
> - the pwm controller driver now picks the best possible clock to
>   achieve the most accurate pwm output
> - board.dts don't have to know about the pwm clock inputs anymore (as
>   the driver picks the best one automatically)
> - new SoCs only need a new compatible string but no pwm-meson driver
>   changes, assuming only the clock inputs differ from older IP
>   revisions
> 
> [...]

Thanks, Applied to https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git (v6.15/arm64-dt)

[3/5] arm64: dts: amlogic: gx: switch to the new PWM controller binding
      https://git.kernel.org/amlogic/c/12abaac5a70994490e565249dcffbb5c329b30bd
[4/5] arm64: dts: amlogic: axg: switch to the new PWM controller binding
      https://git.kernel.org/amlogic/c/77747dbb11466d5ac2ee11a260e8de0b65f3fd1c
[5/5] arm64: dts: amlogic: g12: switch to the new PWM controller binding
      https://git.kernel.org/amlogic/c/06c993691a2fdcabc43053a8fdd813cdeef516c4

These changes has been applied on the intermediate git tree [1].

The v6.15/arm64-dt branch will then be sent via a formal Pull Request to the Linux SoC maintainers
for inclusion in their intermediate git branches in order to be sent to Linus during
the next merge window, or sooner if it's a set of fixes.

In the cases of fixes, those will be merged in the current release candidate
kernel and as soon they appear on the Linux master branch they will be
backported to the previous Stable and Long-Stable kernels [2].

The intermediate git branches are merged daily in the linux-next tree [3],
people are encouraged testing these pre-release kernels and report issues on the
relevant mailing-lists.

If problems are discovered on those changes, please submit a signed-off-by revert
patch followed by a corrective changeset.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/amlogic/linux.git
[2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
[3] https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git