|
| 1 | +Renesas RZ/Five SoC (R9A07G043F) Platform |
| 2 | +========================================= |
| 3 | +The RZ/Five microprocessor includes a single RISC-V CPU Core (Andes AX45MP) |
| 4 | +1.0 GHz, 16-bit DDR3L/DDR4 interface. Supported interfaces include: |
| 5 | +- Memory controller for DDR4-1600 / DDR3L-1333 with 16 bits |
| 6 | +- System RAM (RAM of 128 Kbytes (ECC)) |
| 7 | +- SPI Multi I/O Bus Controller 1ch |
| 8 | +- SD Card Host Interface/Multimedia Card Interface (SD/MMC) 2ch |
| 9 | +- Serial Sound Interface (SSI) 4ch |
| 10 | +- Sampling Rate Converter (SRC) 1ch |
| 11 | +- USB2.0 host/function interface 2ch (ch0: Host-Function ch1: Host only) |
| 12 | +- Gigabit Ethernet Interface (GbE) 2ch |
| 13 | +- Controller Area Network Interface (CAN) 2ch (CAN-FD ISO 11898-1 (CD2014) compliant) |
| 14 | +- Multi-function Timer Pulse Unit 3 (MTU3a) 9 ch (16 bits × 8 channels, 32 bits × 1 channel) |
| 15 | +- Port Output Enable 3 (POE3) |
| 16 | +- Watchdog Timer (WDT) 1ch |
| 17 | +- General Timer (GTM) 3ch (32bits) |
| 18 | +- I2C Bus Interface (I2C) 4ch |
| 19 | +- Serial Communication Interface with FIFO (SCIFA) 5ch |
| 20 | +- Serial Communication Interface (SCI) 2ch |
| 21 | +- Renesas Serial Peripheral Interface (RSPI) 3ch |
| 22 | +- A/D Converter (ADC) 2ch |
| 23 | +making it ideal for applications such as entry-class social infrastructure |
| 24 | +gateway control and industrial gateway control. More details can be found at |
| 25 | +below link [0]. |
| 26 | + |
| 27 | +[0] https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rz-mpus/rzfive-general-purpose-microprocessors-risc-v-cpu-core-andes-ax45mp-single-10-ghz-2ch-gigabit-ethernet |
| 28 | + |
| 29 | +To build platform specific library and firmwares, provide the |
| 30 | +*PLATFORM=generic* parameter to the top level make command. |
| 31 | + |
| 32 | +Platform Options |
| 33 | +---------------- |
| 34 | + |
| 35 | +The Renesas RZ/Five platform does not have any platform-specific options. |
| 36 | + |
| 37 | +Building Renesas RZ/Five Platform |
| 38 | +--------------------------------- |
| 39 | + |
| 40 | +``` |
| 41 | +make PLATFORM=generic |
| 42 | +``` |
| 43 | + |
| 44 | +DTS Example: (RZ/Five AX45MP) |
| 45 | +----------------------------- |
| 46 | + |
| 47 | +``` |
| 48 | + compatible = "renesas,r9a07g043f01", "renesas,r9a07g043"; |
| 49 | +
|
| 50 | + cpus { |
| 51 | + #address-cells = <1>; |
| 52 | + #size-cells = <0>; |
| 53 | + timebase-frequency = <12000000>; |
| 54 | +
|
| 55 | + cpu0: cpu@0 { |
| 56 | + compatible = "andestech,ax45mp", "riscv"; |
| 57 | + device_type = "cpu"; |
| 58 | + reg = <0x0>; |
| 59 | + status = "okay"; |
| 60 | + riscv,isa = "rv64imafdc"; |
| 61 | + mmu-type = "riscv,sv39"; |
| 62 | + i-cache-size = <0x8000>; |
| 63 | + i-cache-line-size = <0x40>; |
| 64 | + d-cache-size = <0x8000>; |
| 65 | + d-cache-line-size = <0x40>; |
| 66 | + clocks = <&cpg CPG_CORE R9A07G043_CLK_I>; |
| 67 | +
|
| 68 | + cpu0_intc: interrupt-controller { |
| 69 | + #interrupt-cells = <1>; |
| 70 | + compatible = "riscv,cpu-intc"; |
| 71 | + interrupt-controller; |
| 72 | + }; |
| 73 | + }; |
| 74 | + }; |
| 75 | +
|
| 76 | + soc { |
| 77 | + compatible = "simple-bus"; |
| 78 | + #address-cells = <1>; |
| 79 | + #size-cells = <0>; |
| 80 | + ranges; |
| 81 | +
|
| 82 | + scif0: serial@1004b800 { |
| 83 | + compatible = "renesas,scif-r9a07g043", |
| 84 | + "renesas,scif-r9a07g044"; |
| 85 | + reg = <0 0x1004b800 0 0x400>; |
| 86 | + interrupts = <412 IRQ_TYPE_LEVEL_HIGH>, |
| 87 | + <414 IRQ_TYPE_LEVEL_HIGH>, |
| 88 | + <415 IRQ_TYPE_LEVEL_HIGH>, |
| 89 | + <413 IRQ_TYPE_LEVEL_HIGH>, |
| 90 | + <416 IRQ_TYPE_LEVEL_HIGH>, |
| 91 | + <416 IRQ_TYPE_LEVEL_HIGH>; |
| 92 | + interrupt-names = "eri", "rxi", "txi", |
| 93 | + "bri", "dri", "tei"; |
| 94 | + clocks = <&cpg CPG_MOD R9A07G043_SCIF0_CLK_PCK>; |
| 95 | + clock-names = "fck"; |
| 96 | + power-domains = <&cpg>; |
| 97 | + resets = <&cpg R9A07G043_SCIF0_RST_SYSTEM_N>; |
| 98 | + status = "disabled"; |
| 99 | + }; |
| 100 | +
|
| 101 | + cpg: clock-controller@11010000 { |
| 102 | + compatible = "renesas,r9a07g043-cpg"; |
| 103 | + reg = <0 0x11010000 0 0x10000>; |
| 104 | + clocks = <&extal_clk>; |
| 105 | + clock-names = "extal"; |
| 106 | + #clock-cells = <2>; |
| 107 | + #reset-cells = <1>; |
| 108 | + #power-domain-cells = <0>; |
| 109 | + }; |
| 110 | +
|
| 111 | + sysc: system-controller@11020000 { |
| 112 | + compatible = "renesas,r9a07g043-sysc"; |
| 113 | + reg = <0 0x11020000 0 0x10000>; |
| 114 | + status = "disabled"; |
| 115 | + }; |
| 116 | +
|
| 117 | + pinctrl: pinctrl@11030000 { |
| 118 | + compatible = "renesas,r9a07g043-pinctrl"; |
| 119 | + reg = <0 0x11030000 0 0x10000>; |
| 120 | + gpio-controller; |
| 121 | + #gpio-cells = <2>; |
| 122 | + #interrupt-cells = <2>; |
| 123 | + interrupt-controller; |
| 124 | + gpio-ranges = <&pinctrl 0 0 152>; |
| 125 | + clocks = <&cpg CPG_MOD R9A07G043_GPIO_HCLK>; |
| 126 | + power-domains = <&cpg>; |
| 127 | + resets = <&cpg R9A07G043_GPIO_RSTN>, |
| 128 | + <&cpg R9A07G043_GPIO_PORT_RESETN>, |
| 129 | + <&cpg R9A07G043_GPIO_SPARE_RESETN>; |
| 130 | + }; |
| 131 | +
|
| 132 | + plmt0: plmt0@110c0000 { |
| 133 | + compatible = "andestech,plmt0", "riscv,plmt0"; |
| 134 | + reg = <0x0 0x110c0000 0x0 0x10000>; |
| 135 | + interrupts-extended = <&cpu0_intc 7>; |
| 136 | + }; |
| 137 | +
|
| 138 | + plic: interrupt-controller@12c00000 { |
| 139 | + compatible = "renesas,r9a07g043-plic", "andestech,nceplic100"; |
| 140 | + #interrupt-cells = <2>; |
| 141 | + #address-cells = <0>; |
| 142 | + riscv,ndev = <511>; |
| 143 | + interrupt-controller; |
| 144 | + reg = <0x0 0x12c00000 0x0 0x400000>; |
| 145 | + clocks = <&cpg CPG_MOD R9A07G043_NCEPLIC_ACLK>; |
| 146 | + power-domains = <&cpg>; |
| 147 | + resets = <&cpg R9A07G043_NCEPLIC_ARESETN>; |
| 148 | + interrupts-extended = <&cpu0_intc 11 &cpu0_intc 9>; |
| 149 | + }; |
| 150 | +
|
| 151 | + plicsw: interrupt-controller@13000000 { |
| 152 | + compatible = "andestech,plicsw"; |
| 153 | + reg = <0x0 0x13000000 0x0 0x400000>; |
| 154 | + interrupts-extended = <&cpu0_intc 3>; |
| 155 | + interrupt-controller; |
| 156 | + #address-cells = <2>; |
| 157 | + #interrupt-cells = <2>; |
| 158 | + }; |
| 159 | + }; |
| 160 | +``` |
0 commit comments