hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/drivers/soc/renesas/rcar-rst.c
....@@ -1,11 +1,8 @@
1
+// SPDX-License-Identifier: GPL-2.0
12 /*
23 * R-Car Gen1 RESET/WDT, R-Car Gen2, Gen3, and RZ/G RST Driver
34 *
45 * Copyright (C) 2016 Glider bvba
5
- *
6
- * This file is subject to the terms and conditions of the GNU General Public
7
- * License. See the file "COPYING" in the main directory of this archive
8
- * for more details.
96 */
107
118 #include <linux/err.h>
....@@ -24,7 +21,7 @@
2421
2522 struct rst_config {
2623 unsigned int modemr; /* Mode Monitoring Register Offset */
27
- int (*configure)(void *base); /* Platform specific configuration */
24
+ int (*configure)(void __iomem *base); /* Platform specific config */
2825 };
2926
3027 static const struct rst_config rcar_rst_gen1 __initconst = {
....@@ -40,11 +37,22 @@
4037 .modemr = 0x60,
4138 };
4239
40
+static const struct rst_config rcar_rst_r8a779a0 __initconst = {
41
+ .modemr = 0x00, /* MODEMR0 and it has CPG related bits */
42
+};
43
+
4344 static const struct of_device_id rcar_rst_matches[] __initconst = {
44
- /* RZ/G is handled like R-Car Gen2 */
45
+ /* RZ/G1 is handled like R-Car Gen2 */
46
+ { .compatible = "renesas,r8a7742-rst", .data = &rcar_rst_gen2 },
4547 { .compatible = "renesas,r8a7743-rst", .data = &rcar_rst_gen2 },
48
+ { .compatible = "renesas,r8a7744-rst", .data = &rcar_rst_gen2 },
4649 { .compatible = "renesas,r8a7745-rst", .data = &rcar_rst_gen2 },
4750 { .compatible = "renesas,r8a77470-rst", .data = &rcar_rst_gen2 },
51
+ /* RZ/G2 is handled like R-Car Gen3 */
52
+ { .compatible = "renesas,r8a774a1-rst", .data = &rcar_rst_gen3 },
53
+ { .compatible = "renesas,r8a774b1-rst", .data = &rcar_rst_gen3 },
54
+ { .compatible = "renesas,r8a774c0-rst", .data = &rcar_rst_gen3 },
55
+ { .compatible = "renesas,r8a774e1-rst", .data = &rcar_rst_gen3 },
4856 /* R-Car Gen1 */
4957 { .compatible = "renesas,r8a7778-reset-wdt", .data = &rcar_rst_gen1 },
5058 { .compatible = "renesas,r8a7779-reset-wdt", .data = &rcar_rst_gen1 },
....@@ -57,11 +65,14 @@
5765 /* R-Car Gen3 */
5866 { .compatible = "renesas,r8a7795-rst", .data = &rcar_rst_gen3 },
5967 { .compatible = "renesas,r8a7796-rst", .data = &rcar_rst_gen3 },
68
+ { .compatible = "renesas,r8a77961-rst", .data = &rcar_rst_gen3 },
6069 { .compatible = "renesas,r8a77965-rst", .data = &rcar_rst_gen3 },
6170 { .compatible = "renesas,r8a77970-rst", .data = &rcar_rst_gen3 },
6271 { .compatible = "renesas,r8a77980-rst", .data = &rcar_rst_gen3 },
6372 { .compatible = "renesas,r8a77990-rst", .data = &rcar_rst_gen3 },
6473 { .compatible = "renesas,r8a77995-rst", .data = &rcar_rst_gen3 },
74
+ /* R-Car V3U */
75
+ { .compatible = "renesas,r8a779a0-rst", .data = &rcar_rst_r8a779a0 },
6576 { /* sentinel */ }
6677 };
6778