mbox series

[v2,00/15] arm64: renesas: Add R-Car V4M and Gray Hawk Single support

Message ID cover.1706194617.git.geert+renesas@glider.be
Headers show
Series arm64: renesas: Add R-Car V4M and Gray Hawk Single support | expand

Message

Geert Uytterhoeven Jan. 25, 2024, 3:34 p.m. UTC
Hi all,

This patch series adds initial support for the Renesas R-Car V4M
(R8A779G0) SoC and the Renesas Gray Hawk Single development board.

As both driver code and DTS have hard dependencies on DT binding
definitions, most patches in this series are supposed to go in through
the renesas-devel and/or renesas-clk trees, using a shared branch for DT
binding definitions, as usual.  For the PM domain patches (03, 04, 09),
Ulf already offered to apply these to his pmdomain tree, and provide an
immutable "dt" branch, to be pulled in my renesas-devel tree.

Changes compared to v1[1]:
  - Add Acked-by, Reviewed-by,
  - Add vendor-prefix to DT binding definition header file names and
    update include guards,
  - Add "board" to compatible comment,
  - Add missing CP core clock,
  - Add SoC name to top-level comment.

For testing, this series can be found at
https://git.kernel.org/pub/scm/linux/kernel/git/geert/renesas-drivers.git/log/?h=topic/v4m-gray-hawk-single-v2

Thanks for your comments!

[1] "[PATCH 00/15] arm64: renesas: Add R-Car V4M and Gray Hawk Single
    support"
    https://lore.kernel.org/linux-renesas-soc/cover.1704726960.git.geert+renesas@glider.be

Cong Dang (1):
  clk: renesas: cpg-mssr: Add support for R-Car V4M

Duy Nguyen (6):
  dt-bindings: clock: Add R8A779H0 V4M CPG Core Clock Definitions
  dt-bindings: power: renesas,rcar-sysc: Document R-Car V4M support
  dt-bindings: power: Add r8a779h0 SYSC power domain definitions
  pmdomain: renesas: r8a779h0-sysc: Add r8a779h0 support
  soc: renesas: Identify R-Car V4M
  soc: renesas: rcar-rst: Add support for R-Car V4M

Geert Uytterhoeven (6):
  dt-bindings: clock: renesas,cpg-mssr: Document R-Car V4M support
  dt-bindings: reset: renesas,rst: Document R-Car V4M support
  dt-bindings: soc: renesas: Document R-Car V4M Gray Hawk Single
  clk: renesas: rcar-gen4: Add support for FRQCRC1
  soc: renesas: Introduce ARCH_RCAR_GEN4
  arm64: dts: renesas: Add Gray Hawk Single board support

Hai Pham (1):
  arm64: dts: renesas: Add Renesas R8A779H0 SoC support

Linh Phung (1):
  arm64: defconfig: Enable R8A779H0 SoC

 .../bindings/clock/renesas,cpg-mssr.yaml      |   1 +
 .../bindings/power/renesas,rcar-sysc.yaml     |   1 +
 .../bindings/reset/renesas,rst.yaml           |   1 +
 .../bindings/soc/renesas/renesas.yaml         |   6 +
 arch/arm64/boot/dts/renesas/Makefile          |   2 +
 .../dts/renesas/r8a779h0-gray-hawk-single.dts |  52 ++++
 arch/arm64/boot/dts/renesas/r8a779h0.dtsi     | 121 +++++++++
 arch/arm64/configs/defconfig                  |   1 +
 drivers/clk/renesas/Kconfig                   |   5 +
 drivers/clk/renesas/Makefile                  |   1 +
 drivers/clk/renesas/r8a779h0-cpg-mssr.c       | 241 ++++++++++++++++++
 drivers/clk/renesas/rcar-gen4-cpg.c           |  10 +-
 drivers/clk/renesas/renesas-cpg-mssr.c        |   6 +
 drivers/clk/renesas/renesas-cpg-mssr.h        |   1 +
 drivers/pmdomain/renesas/Kconfig              |   4 +
 drivers/pmdomain/renesas/Makefile             |   1 +
 drivers/pmdomain/renesas/r8a779h0-sysc.c      |  55 ++++
 drivers/pmdomain/renesas/rcar-gen4-sysc.c     |   3 +
 drivers/pmdomain/renesas/rcar-gen4-sysc.h     |   1 +
 drivers/soc/renesas/Kconfig                   |  17 +-
 drivers/soc/renesas/rcar-rst.c                |   1 +
 drivers/soc/renesas/renesas-soc.c             |   8 +
 .../clock/renesas,r8a779h0-cpg-mssr.h         |  96 +++++++
 .../dt-bindings/power/renesas,r8a779h0-sysc.h |  49 ++++
 24 files changed, 679 insertions(+), 5 deletions(-)
 create mode 100644 arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
 create mode 100644 arch/arm64/boot/dts/renesas/r8a779h0.dtsi
 create mode 100644 drivers/clk/renesas/r8a779h0-cpg-mssr.c
 create mode 100644 drivers/pmdomain/renesas/r8a779h0-sysc.c
 create mode 100644 include/dt-bindings/clock/renesas,r8a779h0-cpg-mssr.h
 create mode 100644 include/dt-bindings/power/renesas,r8a779h0-sysc.h

Comments

Niklas Söderlund Jan. 25, 2024, 7:16 p.m. UTC | #1
Hi Geert,

On 2024-01-25 16:34:42 +0100, Geert Uytterhoeven wrote:
> Add initial support for the Renesas Gray Hawk Single board, which is
> based on the R-Car V4M (R8A779H0) SoC:
>   - Memory,
>   - Crystal oscillators,
>   - Serial console.
> 
> Based on the White Hawk Single DTS, and on a patch for the Gray Hawk
> board stack in the BSP by Hai Pham.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>

Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>

> ---
> v2:
>   - Add SoC name to top-level comment.
> ---
>  arch/arm64/boot/dts/renesas/Makefile          |  2 +
>  .../dts/renesas/r8a779h0-gray-hawk-single.dts | 52 +++++++++++++++++++
>  2 files changed, 54 insertions(+)
>  create mode 100644 arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
> 
> diff --git a/arch/arm64/boot/dts/renesas/Makefile b/arch/arm64/boot/dts/renesas/Makefile
> index 1d7d69657a1f0559..4c5ac5f02829ff58 100644
> --- a/arch/arm64/boot/dts/renesas/Makefile
> +++ b/arch/arm64/boot/dts/renesas/Makefile
> @@ -86,6 +86,8 @@ dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g0-white-hawk-ard-audio-da7212.dtbo
>  r8a779g0-white-hawk-ard-audio-da7212-dtbs := r8a779g0-white-hawk.dtb r8a779g0-white-hawk-ard-audio-da7212.dtbo
>  dtb-$(CONFIG_ARCH_R8A779G0) += r8a779g0-white-hawk-ard-audio-da7212.dtb
>  
> +dtb-$(CONFIG_ARCH_R8A779H0) += r8a779h0-gray-hawk-single.dtb
> +
>  dtb-$(CONFIG_ARCH_R8A77951) += r8a779m1-salvator-xs.dtb
>  r8a779m1-salvator-xs-panel-aa104xd12-dtbs := r8a779m1-salvator-xs.dtb salvator-panel-aa104xd12.dtbo
>  dtb-$(CONFIG_ARCH_R8A77951) += r8a779m1-salvator-xs-panel-aa104xd12.dtb
> diff --git a/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts b/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
> new file mode 100644
> index 0000000000000000..1ed404712d823871
> --- /dev/null
> +++ b/arch/arm64/boot/dts/renesas/r8a779h0-gray-hawk-single.dts
> @@ -0,0 +1,52 @@
> +// SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +/*
> + * Device Tree Source for the R-Car V4M Gray Hawk Single board
> + *
> + * Copyright (C) 2023 Renesas Electronics Corp.
> + * Copyright (C) 2024 Glider bv
> + */
> +
> +/dts-v1/;
> +#include "r8a779h0.dtsi"
> +
> +/ {
> +	model = "Renesas Gray Hawk Single board based on r8a779h0";
> +	compatible = "renesas,gray-hawk-single", "renesas,r8a779h0";
> +
> +	aliases {
> +		serial0 = &hscif0;
> +	};
> +
> +	chosen {
> +		bootargs = "ignore_loglevel";
> +		stdout-path = "serial0:921600n8";
> +	};
> +
> +	memory@48000000 {
> +		device_type = "memory";
> +		/* first 128MB is reserved for secure area. */
> +		reg = <0x0 0x48000000 0x0 0x78000000>;
> +	};
> +
> +	memory@480000000 {
> +		device_type = "memory";
> +		reg = <0x4 0x80000000 0x1 0x80000000>;
> +	};
> +};
> +
> +&extal_clk {
> +	clock-frequency = <16666666>;
> +};
> +
> +&extalr_clk {
> +	clock-frequency = <32768>;
> +};
> +
> +&hscif0 {
> +	uart-has-rtscts;
> +	status = "okay";
> +};
> +
> +&scif_clk {
> +	clock-frequency = <24000000>;
> +};
> -- 
> 2.34.1
> 
>
Geert Uytterhoeven Jan. 31, 2024, 2:56 p.m. UTC | #2
Hi Ulf,

On Tue, Jan 30, 2024 at 2:11 PM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> On Thu, 25 Jan 2024 at 16:34, Geert Uytterhoeven
> <geert+renesas@glider.be> wrote:
> > This patch series adds initial support for the Renesas R-Car V4M
> > (R8A779G0) SoC and the Renesas Gray Hawk Single development board.
> >
> > As both driver code and DTS have hard dependencies on DT binding
> > definitions, most patches in this series are supposed to go in through
> > the renesas-devel and/or renesas-clk trees, using a shared branch for DT
> > binding definitions, as usual.  For the PM domain patches (03, 04, 09),
> > Ulf already offered to apply these to his pmdomain tree, and provide an
> > immutable "dt" branch, to be pulled in my renesas-devel tree.
>
> Patch 3,4 and 9 (I dropped the copyright line in patch9, as pointed
> out by Niklas) applied for next, thanks!
>
> Patch 3,4 are also available at the immutable dt branch for you to pull in.

Thank you!

I have pulled the immutable branch, added the remaining DT binding
definitions, and queued all remaining patches.

Gr{oetje,eeting}s,

                        Geert
Geert Uytterhoeven Feb. 14, 2024, 8:35 a.m. UTC | #3
Hi Ulf,

On Wed, Jan 31, 2024 at 3:56 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> On Tue, Jan 30, 2024 at 2:11 PM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > On Thu, 25 Jan 2024 at 16:34, Geert Uytterhoeven
> > <geert+renesas@glider.be> wrote:
> > > This patch series adds initial support for the Renesas R-Car V4M
> > > (R8A779G0) SoC and the Renesas Gray Hawk Single development board.
> > >
> > > As both driver code and DTS have hard dependencies on DT binding
> > > definitions, most patches in this series are supposed to go in through
> > > the renesas-devel and/or renesas-clk trees, using a shared branch for DT
> > > binding definitions, as usual.  For the PM domain patches (03, 04, 09),
> > > Ulf already offered to apply these to his pmdomain tree, and provide an
> > > immutable "dt" branch, to be pulled in my renesas-devel tree.
> >
> > Patch 3,4 and 9 (I dropped the copyright line in patch9, as pointed
> > out by Niklas) applied for next, thanks!
> >
> > Patch 3,4 are also available at the immutable dt branch for you to pull in.
>
> Thank you!
>
> I have pulled the immutable branch, added the remaining DT binding
> definitions, and queued all remaining patches.

It looks like you have applied copies of all commits on the "dt"
branch to the "next"
branch, so now there are two copies?

See the output of "git range-diff v6.8-rc1..pmdomain/dt
v6.8-rc4..pmdomain/next".

Gr{oetje,eeting}s,

                        Geert
Ulf Hansson Feb. 14, 2024, 9:30 a.m. UTC | #4
On Wed, 14 Feb 2024 at 09:35, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>
> Hi Ulf,
>
> On Wed, Jan 31, 2024 at 3:56 PM Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> > On Tue, Jan 30, 2024 at 2:11 PM Ulf Hansson <ulf.hansson@linaro.org> wrote:
> > > On Thu, 25 Jan 2024 at 16:34, Geert Uytterhoeven
> > > <geert+renesas@glider.be> wrote:
> > > > This patch series adds initial support for the Renesas R-Car V4M
> > > > (R8A779G0) SoC and the Renesas Gray Hawk Single development board.
> > > >
> > > > As both driver code and DTS have hard dependencies on DT binding
> > > > definitions, most patches in this series are supposed to go in through
> > > > the renesas-devel and/or renesas-clk trees, using a shared branch for DT
> > > > binding definitions, as usual.  For the PM domain patches (03, 04, 09),
> > > > Ulf already offered to apply these to his pmdomain tree, and provide an
> > > > immutable "dt" branch, to be pulled in my renesas-devel tree.
> > >
> > > Patch 3,4 and 9 (I dropped the copyright line in patch9, as pointed
> > > out by Niklas) applied for next, thanks!
> > >
> > > Patch 3,4 are also available at the immutable dt branch for you to pull in.
> >
> > Thank you!
> >
> > I have pulled the immutable branch, added the remaining DT binding
> > definitions, and queued all remaining patches.
>
> It looks like you have applied copies of all commits on the "dt"
> branch to the "next"
> branch, so now there are two copies?
>
> See the output of "git range-diff v6.8-rc1..pmdomain/dt
> v6.8-rc4..pmdomain/next".

I screwed up - and thanks for pointing this out! Problem is taken care of now.

Kind regards
Uffe