soc: renesas: Identify RZ/G3S SoC
authorClaudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Tue, 12 Sep 2023 04:51:24 +0000 (07:51 +0300)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Mon, 18 Sep 2023 08:39:13 +0000 (10:39 +0200)
Add support to identify the RZ/G3S (R9A08G045) SoC.

Signed-off-by: Claudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20230912045157.177966-5-claudiu.beznea.uj@bp.renesas.com
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
drivers/soc/renesas/Kconfig
drivers/soc/renesas/renesas-soc.c

index 5a75ab64d1ed33d7b28bc5e70e7b1f3a9b9a9402..631b17c627a8f4e4ae1b7d81717a86e72b81369b 100644 (file)
@@ -319,6 +319,12 @@ config ARCH_R9A07G054
        help
          This enables support for the Renesas RZ/V2L SoC variants.
 
+config ARCH_R9A08G045
+       bool "ARM64 Platform support for RZ/G3S"
+       select ARCH_RZG2L
+       help
+         This enables support for the Renesas RZ/G3S SoC variants.
+
 config ARCH_R9A09G011
        bool "ARM64 Platform support for RZ/V2M"
        select PM
index 42af7c09f743340626fc43d7116f5ec890b00fb4..1598b66ffb51066c0c8195cf90655a0ec70e83f2 100644 (file)
@@ -72,6 +72,10 @@ static const struct renesas_family fam_rzg2ul __initconst __maybe_unused = {
        .name   = "RZ/G2UL",
 };
 
+static const struct renesas_family fam_rzg3s __initconst __maybe_unused = {
+       .name   = "RZ/G3S",
+};
+
 static const struct renesas_family fam_rzv2l __initconst __maybe_unused = {
        .name   = "RZ/V2L",
 };
@@ -170,6 +174,11 @@ static const struct renesas_soc soc_rz_g2ul __initconst __maybe_unused = {
        .id     = 0x8450447,
 };
 
+static const struct renesas_soc soc_rz_g3s __initconst __maybe_unused = {
+       .family = &fam_rzg3s,
+       .id     = 0x85e0447,
+};
+
 static const struct renesas_soc soc_rz_v2l __initconst __maybe_unused = {
        .family = &fam_rzv2l,
        .id     = 0x8447447,
@@ -386,6 +395,9 @@ static const struct of_device_id renesas_socs[] __initconst __maybe_unused = {
 #ifdef CONFIG_ARCH_R9A07G054
        { .compatible = "renesas,r9a07g054",    .data = &soc_rz_v2l },
 #endif
+#ifdef CONFIG_ARCH_R9A08G045
+       { .compatible = "renesas,r9a08g045",    .data = &soc_rz_g3s },
+#endif
 #ifdef CONFIG_ARCH_R9A09G011
        { .compatible = "renesas,r9a09g011",    .data = &soc_rz_v2m },
 #endif
@@ -429,6 +441,7 @@ static const struct of_device_id renesas_ids[] __initconst = {
        { .compatible = "renesas,r9a07g043-sysc",       .data = &id_rzg2l },
        { .compatible = "renesas,r9a07g044-sysc",       .data = &id_rzg2l },
        { .compatible = "renesas,r9a07g054-sysc",       .data = &id_rzg2l },
+       { .compatible = "renesas,r9a08g045-sysc",       .data = &id_rzg2l },
        { .compatible = "renesas,r9a09g011-sys",        .data = &id_rzv2m },
        { .compatible = "renesas,prr",                  .data = &id_prr },
        { /* sentinel */ }