Re: [PATCH 02/14] soc: renesas: Identify R-Car H3e-2G and M3e-2G

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Geert,

Thank you for the patch.

On Thu, Jun 10, 2021 at 11:37:15AM +0200, Geert Uytterhoeven wrote:
> Add support for identifying the R-Car H3e-2G (R8A779M1) and R-Car M3e-2G
> (R8A779M3) SoCs.
> 
> As these are different gradings of the already supported R-Car H3 ES3.0
> (R8A77951) and M3-W+ (R8A77961) SoCs, support for them is enabled
> through the existing ARCH_R8A77951 and ARCH_R8A77961 configuration
> symbols.
> 
> Signed-off-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> ---
> Question: Should we drop fam_rcar_gen3e and soc_rcar_[hm]3e, and just
> 	  use the existing soc_rcar_h3 and soc_rcar_m3_w?

I'd vote for that, as there's no functional difference in the code below
between fam_rcar_gen3e and fam_rcar_gen3.

Reviewed-by: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx>

> ---
>  drivers/soc/renesas/Kconfig       |  2 ++
>  drivers/soc/renesas/renesas-soc.c | 19 +++++++++++++++++++
>  2 files changed, 21 insertions(+)
> 
> diff --git a/drivers/soc/renesas/Kconfig b/drivers/soc/renesas/Kconfig
> index 4fe0247189a615b0..089c7c50e3ca4c3b 100644
> --- a/drivers/soc/renesas/Kconfig
> +++ b/drivers/soc/renesas/Kconfig
> @@ -213,6 +213,7 @@ config ARCH_R8A77951
>  	help
>  	  This enables support for the Renesas R-Car H3 SoC (revisions 2.0 and
>  	  later).
> +	  This includes different gradings like R-Car H3e-2G.
>  
>  config ARCH_R8A77965
>  	bool "ARM64 Platform support for R-Car M3-N"
> @@ -234,6 +235,7 @@ config ARCH_R8A77961
>  	select SYSC_R8A77961
>  	help
>  	  This enables support for the Renesas R-Car M3-W+ SoC.
> +	  This includes different gradings like R-Car M3e-2G.
>  
>  config ARCH_R8A77980
>  	bool "ARM64 Platform support for R-Car V3H"
> diff --git a/drivers/soc/renesas/renesas-soc.c b/drivers/soc/renesas/renesas-soc.c
> index 0f8eff4a641a21b7..2851fd9c44ce8e3f 100644
> --- a/drivers/soc/renesas/renesas-soc.c
> +++ b/drivers/soc/renesas/renesas-soc.c
> @@ -33,6 +33,11 @@ static const struct renesas_family fam_rcar_gen3 __initconst __maybe_unused = {
>  	.reg	= 0xfff00044,		/* PRR (Product Register) */
>  };
>  
> +static const struct renesas_family fam_rcar_gen3e __initconst __maybe_unused = {
> +	.name	= "R-Car Gen3e",
> +	.reg	= 0xfff00044,		/* PRR (Product Register) */
> +};
> +
>  static const struct renesas_family fam_rmobile __initconst __maybe_unused = {
>  	.name	= "R-Mobile",
>  	.reg	= 0xe600101c,		/* CCCR (Common Chip Code Register) */
> @@ -205,6 +210,16 @@ static const struct renesas_soc soc_rcar_v3u __initconst __maybe_unused = {
>  	.id	= 0x59,
>  };
>  
> +static const struct renesas_soc soc_rcar_h3e __initconst __maybe_unused = {
> +	.family	= &fam_rcar_gen3e,
> +	.id	= 0x4f,
> +};
> +
> +static const struct renesas_soc soc_rcar_m3e __initconst __maybe_unused = {
> +	.family	= &fam_rcar_gen3e,
> +	.id	= 0x52,
> +};
> +
>  static const struct renesas_soc soc_shmobile_ag5 __initconst __maybe_unused = {
>  	.family	= &fam_shmobile,
>  	.id	= 0x37,
> @@ -275,11 +290,15 @@ static const struct of_device_id renesas_socs[] __initconst = {
>  #if defined(CONFIG_ARCH_R8A77950) || defined(CONFIG_ARCH_R8A77951)
>  	{ .compatible = "renesas,r8a7795",	.data = &soc_rcar_h3 },
>  #endif
> +#ifdef CONFIG_ARCH_R8A77951
> +	{ .compatible = "renesas,r8a779m1",	.data = &soc_rcar_h3e },
> +#endif
>  #ifdef CONFIG_ARCH_R8A77960
>  	{ .compatible = "renesas,r8a7796",	.data = &soc_rcar_m3_w },
>  #endif
>  #ifdef CONFIG_ARCH_R8A77961
>  	{ .compatible = "renesas,r8a77961",	.data = &soc_rcar_m3_w },
> +	{ .compatible = "renesas,r8a779m3",	.data = &soc_rcar_m3e },
>  #endif
>  #ifdef CONFIG_ARCH_R8A77965
>  	{ .compatible = "renesas,r8a77965",	.data = &soc_rcar_m3_n },

-- 
Regards,

Laurent Pinchart



[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux