diff --git a/dts/riscv/gigadevice/gd32vf103.dtsi b/dts/riscv/gigadevice/gd32vf103.dtsi index 4713d2def1f..0f08ed9c951 100644 --- a/dts/riscv/gigadevice/gd32vf103.dtsi +++ b/dts/riscv/gigadevice/gd32vf103.dtsi @@ -7,6 +7,8 @@ #include #include +#include + / { #address-cells = <1>; #size-cells = <1>; @@ -187,5 +189,132 @@ label = "GPIOE"; }; }; + + timer0: timer@40012c00 { + compatible = "gd,gd32-timer"; + reg = <0x40012c00 0x400>; + interrupt-parent = <&eclic>; + interrupts = <43 0>, <44 0>, <45 0>, <46 0>; + interrupt-names = "brk", "up", "trgcom", "cc"; + rcu-periph-clock = <0x60b>; + rcu-periph-reset = <0x30b>; + is-advanced; + channels = <4>; + status = "disabled"; + label = "TIMER_0"; + + pwm { + compatible = "gd,gd32-pwm"; + status = "disabled"; + label = "PWM_0"; + #pwm-cells = <2>; + }; + }; + + timer1: timer@40000000 { + compatible = "gd,gd32-timer"; + reg = <0x40000000 0x400>; + interrupt-parent = <&eclic>; + interrupts = <47 0>; + interrupt-names = "global"; + rcu-periph-clock = <0x700>; + rcu-periph-reset = <0x400>; + channels = <4>; + status = "disabled"; + label = "TIMER_1"; + + pwm { + compatible = "gd,gd32-pwm"; + status = "disabled"; + label = "PWM_1"; + #pwm-cells = <2>; + }; + }; + + timer2: timer@40000400 { + compatible = "gd,gd32-timer"; + reg = <0x40000400 0x400>; + interrupt-parent = <&eclic>; + interrupts = <48 0>; + interrupt-names = "global"; + rcu-periph-clock = <0x701>; + rcu-periph-reset = <0x401>; + channels = <4>; + status = "disabled"; + label = "TIMER_2"; + + pwm { + compatible = "gd,gd32-pwm"; + status = "disabled"; + label = "PWM_2"; + #pwm-cells = <2>; + }; + }; + + timer3: timer@40000800 { + compatible = "gd,gd32-timer"; + reg = <0x40000800 0x400>; + interrupt-parent = <&eclic>; + interrupts = <49 0>; + interrupt-names = "global"; + rcu-periph-clock = <0x702>; + rcu-periph-reset = <0x402>; + channels = <4>; + status = "disabled"; + label = "TIMER_3"; + + pwm { + compatible = "gd,gd32-pwm"; + status = "disabled"; + label = "PWM_3"; + #pwm-cells = <2>; + }; + }; + + timer4: timer@40000c00 { + compatible = "gd,gd32-timer"; + reg = <0x40000c00 0x400>; + interrupt-parent = <&eclic>; + interrupts = <69 0>; + interrupt-names = "global"; + rcu-periph-clock = <0x703>; + rcu-periph-reset = <0x403>; + channels = <4>; + status = "disabled"; + label = "TIMER_4"; + + pwm { + compatible = "gd,gd32-pwm"; + status = "disabled"; + label = "PWM_4"; + #pwm-cells = <2>; + }; + }; + + timer5: timer@40001000 { + compatible = "gd,gd32-timer"; + reg = <0x40001000 0x400>; + interrupt-parent = <&eclic>; + interrupts = <73 0>; + interrupt-names = "global"; + rcu-periph-clock = <0x704>; + rcu-periph-reset = <0x404>; + channels = <0>; + status = "disabled"; + label = "TIMER_5"; + }; + + timer6: timer@40001400 { + compatible = "gd,gd32-timer"; + reg = <0x40001400 0x400>; + interrupt-parent = <&eclic>; + interrupts = <74 0>; + interrupt-names = "global"; + rcu-periph-clock = <0x705>; + rcu-periph-reset = <0x405>; + channels = <0>; + status = "disabled"; + label = "TIMER_6"; + }; }; };