1/ { 2 #address-cells = <1>; 3 #size-cells = <1>; 4 5 cpus { 6 timebase-frequency = <5000000>; 7 #address-cells = <1>; 8 #size-cells = <0>; 9 10 cpu0: cpu@0 { 11 compatible = "snps,av5rmx", "riscv"; 12 device_type = "cpu"; 13 reg = <0>; 14 clock-frequency = <5000000>; 15 riscv,isa = "rv32imac_zicsr_zifencei"; 16 17 cpu0_intc: interrupt-controller { 18 compatible = "riscv,cpu-intc"; 19 interrupt-controller; 20 #address-cells = <0>; 21 #interrupt-cells = <1>; 22 }; 23 }; 24 }; 25 26 soc { 27 compatible = "simple-bus"; 28 ranges; 29 interrupt-parent = <&clint>; 30 #address-cells = <1>; 31 #size-cells = <1>; 32 33 clint: clint@2000000 { 34 compatible = "sifive,clint0"; 35 reg = <0x2000000 0x1000>; 36 interrupts-extended = <&cpu0_intc 3 &cpu0_intc 7>; 37 interrupt-names = "soft0", "timer0"; 38 }; 39 40 uart0: serial@10000000{ 41 compatible = "ns16550", "snps,dw-apb-uart"; 42 reg = <0x10000000 0x400>; 43 reg-shift = <2>; 44 45 /* AIA interrupt controller is not currently implemented, 46 * so connect UART interrupt to 17th line as a stub to 47 * make build system and test framework happy. 48 */ 49 interrupt-parent = <&cpu0_intc>; 50 interrupts = <17>; 51 clock-frequency = <50000000>; 52 status = "disabled"; 53 }; 54 }; 55}; 56