Skip to content

Commit ca91def

Browse files
hcodinageertu
authored andcommitted
ARM: dts: r9a06g032: Add GPIO controllers
Add GPIO controllers (Synopsys DesignWare IPs) available in the r9a06g032 (RZ/N1D) SoC. Signed-off-by: Herve Codina (Schneider Electric) <herve.codina@bootlin.com> Reviewed-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Tested-by: Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Linus Walleij <linus.walleij@linaro.org> Link: https://patch.msgid.link/20260114093938.1089936-6-herve.codina@bootlin.com Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
1 parent 4ef81dc commit ca91def

1 file changed

Lines changed: 118 additions & 0 deletions

File tree

arch/arm/boot/dts/renesas/r9a06g032.dtsi

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -515,6 +515,124 @@
515515
<GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>;
516516
};
517517

518+
/*
519+
* The GPIO mapping to the corresponding pins is not obvious.
520+
* See the hardware documentation for details.
521+
*/
522+
gpio0: gpio@5000b000 {
523+
compatible = "snps,dw-apb-gpio";
524+
reg = <0x5000b000 0x80>;
525+
#address-cells = <1>;
526+
#size-cells = <0>;
527+
clocks = <&sysctrl R9A06G032_HCLK_GPIO0>;
528+
clock-names = "bus";
529+
530+
/* GPIO0a[0] connected to pin GPIO0 */
531+
/* GPIO0a[1..2] connected to pins GPIO3..4 */
532+
/* GPIO0a[3..4] connected to pins GPIO9..10 */
533+
/* GPIO0a[5] connected to pin GPIO12 */
534+
/* GPIO0a[6..7] connected to pins GPIO15..16 */
535+
/* GPIO0a[8..9] connected to pins GPIO21..22 */
536+
/* GPIO0a[10] connected to pin GPIO24 */
537+
/* GPIO0a[11..12] connected to pins GPIO27..28 */
538+
/* GPIO0a[13..14] connected to pins GPIO33..34 */
539+
/* GPIO0a[15] connected to pin GPIO36 */
540+
/* GPIO0a[16..17] connected to pins GPIO39..40 */
541+
/* GPIO0a[18..19] connected to pins GPIO45..46 */
542+
/* GPIO0a[20] connected to pin GPIO48 */
543+
/* GPIO0a[21..22] connected to pins GPIO51..52 */
544+
/* GPIO0a[23..24] connected to pins GPIO57..58 */
545+
/* GPIO0a[25..31] connected to pins GPIO62..68 */
546+
gpio0a: gpio-port@0 {
547+
compatible = "snps,dw-apb-gpio-port";
548+
reg = <0>;
549+
gpio-controller;
550+
#gpio-cells = <2>;
551+
snps,nr-gpios = <32>;
552+
};
553+
554+
/* GPIO0b[0..1] connected to pins GPIO1..2 */
555+
/* GPIO0b[2..5] connected to pins GPIO5..8 */
556+
/* GPIO0b[6] connected to pin GPIO11 */
557+
/* GPIO0b[7..8] connected to pins GPIO13..14 */
558+
/* GPIO0b[9..12] connected to pins GPIO17..20 */
559+
/* GPIO0b[13] connected to pin GPIO23 */
560+
/* GPIO0b[14..15] connected to pins GPIO25..26 */
561+
/* GPIO0b[16..19] connected to pins GPIO29..32 */
562+
/* GPIO0b[20] connected to pin GPIO35 */
563+
/* GPIO0b[21..22] connected to pins GPIO37..38 */
564+
/* GPIO0b[23..26] connected to pins GPIO41..44 */
565+
/* GPIO0b[27] connected to pin GPIO47 */
566+
/* GPIO0b[28..29] connected to pins GPIO49..50 */
567+
/* GPIO0b[30..31] connected to pins GPIO53..54 */
568+
gpio0b: gpio-port@1 {
569+
compatible = "snps,dw-apb-gpio-port";
570+
reg = <1>;
571+
gpio-controller;
572+
#gpio-cells = <2>;
573+
snps,nr-gpios = <32>;
574+
};
575+
};
576+
577+
gpio1: gpio@5000c000 {
578+
compatible = "snps,dw-apb-gpio";
579+
reg = <0x5000c000 0x80>;
580+
#address-cells = <1>;
581+
#size-cells = <0>;
582+
clocks = <&sysctrl R9A06G032_HCLK_GPIO1>;
583+
clock-names = "bus";
584+
585+
/* GPIO1a[0..4] connected to pins GPIO69..73 */
586+
/* GPIO1a[5..31] connected to pins GPIO95..121 */
587+
gpio1a: gpio-port@0 {
588+
compatible = "snps,dw-apb-gpio-port";
589+
reg = <0>;
590+
gpio-controller;
591+
#gpio-cells = <2>;
592+
snps,nr-gpios = <32>;
593+
};
594+
595+
/* GPIO1b[0..1] connected to pins GPIO55..56 */
596+
/* GPIO1b[2..4] connected to pins GPIO59..61 */
597+
/* GPIO1b[5..25] connected to pins GPIO74..94 */
598+
/* GPIO1b[26..31] connected to pins GPIO150..155 */
599+
gpio1b: gpio-port@1 {
600+
compatible = "snps,dw-apb-gpio-port";
601+
reg = <1>;
602+
gpio-controller;
603+
#gpio-cells = <2>;
604+
snps,nr-gpios = <32>;
605+
};
606+
};
607+
608+
gpio2: gpio@5000d000 {
609+
compatible = "snps,dw-apb-gpio";
610+
reg = <0x5000d000 0x80>;
611+
#address-cells = <1>;
612+
#size-cells = <0>;
613+
clocks = <&sysctrl R9A06G032_HCLK_GPIO2>;
614+
clock-names = "bus";
615+
616+
/* GPIO2a[0..27] connected to pins GPIO122..149 */
617+
/* GPIO2a[28..31] connected to pins GPIO156..159 */
618+
gpio2a: gpio-port@0 {
619+
compatible = "snps,dw-apb-gpio-port";
620+
reg = <0>;
621+
gpio-controller;
622+
#gpio-cells = <2>;
623+
snps,nr-gpios = <32>;
624+
};
625+
626+
/* GPIO2b[0..9] connected to pins GPIO160..169 */
627+
gpio2b: gpio-port@1 {
628+
compatible = "snps,dw-apb-gpio-port";
629+
reg = <1>;
630+
gpio-controller;
631+
#gpio-cells = <2>;
632+
snps,nr-gpios = <10>;
633+
};
634+
};
635+
518636
can0: can@52104000 {
519637
compatible = "renesas,r9a06g032-sja1000", "renesas,rzn1-sja1000";
520638
reg = <0x52104000 0x800>;

0 commit comments

Comments
 (0)