1.. _rcar_spider_boards:
2
3Renesas R-Car Spider
4####################
5
6Overview
7********
8
9| R-Car S4 enables the launch of Car Server/CoGW with high performance, high-speed networking,
10| high security and high functional safety levels that are required as E/E architectures
11| evolve into domains and zones.
12
13| The R-Car S4 solution allows designers to re-use up to 88 percent of software code developed
14| for 3rd generation R-Car SoCs and RH850 MCU applications.\
15| The software package supports the real-time cores with various drivers and basic software
16| such as Linux BSP and hypervisors.
17
18The Renesas R-Car Spider board is the Renesas R-Car S4 reference board and is designed for
19evaluating features and performance of this SoC.
20
21.. figure:: img/rcar_s4_spider_full.jpg
22   :align: center
23   :alt: R-Car S4 Spider
24
25More information about the board can be found at `Renesas R-Car S4 Spider`_ website.
26
27Hardware
28********
29
30Hardware capabilities for the S4 Spider board can be found on the `eLinux S4 Spider`_ page.
31
32.. figure:: img/rcar_s4_block_diagram.jpg
33   :align: center
34   :alt: R-Car S4 Spider block diagram
35
36.. note:: We support Zephyr running on the CR52 processor that is provided for RTOS purpose.
37
38More information about the SoC that equips the board can be found here:
39
40- `Renesas R-Car S4 chip`_
41
42Supported Features
43==================
44
45Here are the current supported features when running Zephyr Project on the R-Car S4 Spider CR52:
46
47+-----------+------------------------------+--------------------------------+
48| Interface | Driver/components            | Support level                  |
49+===========+==============================+================================+
50| PINMUX    | pinmux                       |                                |
51+-----------+------------------------------+--------------------------------+
52| CLOCK     | clock_control                |                                |
53+-----------+------------------------------+--------------------------------+
54| GPIO      | gpio                         |                                |
55+-----------+------------------------------+--------------------------------+
56| UART      | uart                         | serial port-polling            |
57+           +                              +                                +
58|           | FT232RQ                      | serial port-interrupt          |
59+-----------+------------------------------+--------------------------------+
60| I2C       | i2c                          | interrupt driven               |
61+-----------+------------------------------+--------------------------------+
62| PWM       | pwm                          | All channels                   |
63+-----------+------------------------------+--------------------------------+
64
65It is also currently possible to write on the ram console.
66
67More features will be supported soon.
68
69Connections and IOs
70===================
71
72| The "Spider board" consists of a CPU board and a Breakout board.
73| The CPU board is stuck on top of the Breakout board.
74
75Here are the official IOs figures from eLinux for S4 board:
76
77`S4 Spider CPU board IOs`_
78
79`S4 Spider breakout board IOs`_
80
81GPIO
82----
83
84By running Zephyr on S4 Spider, the software controllable LED 'LED8' can be used as output.
85
86UART
87----
88
89Here is information about both serial ports provided on the S4 Spider board :
90
91+--------------------+----------+--------------------+-------------+------------------------+
92| Physical Interface | Location | Software Interface | Converter   | Further Information    |
93+====================+==========+====================+=============+========================+
94| CN20 USB Port      | CPU Board| SCIF0/HSCIF1       | FT232HQ     | Default Zephyr serial  |
95+--------------------+----------+--------------------+-------------+------------------------+
96| CN21 USB Port      | CPU Board| SCIF3/HSCIF0       | FT2232H-56Q | Used by U-BOOT & Linux |
97+--------------------+----------+--------------------+-------------+------------------------+
98
99.. note::
100   The Zephyr console output is assigned to SCIF0 (CN20 USB Port) with settings:
101   115200 8N1 without hardware flow control by default.
102
103I2C
104---
105
106I2C is mainly used to manage and power-on some onboard chips on the S4 Spider board.
107
108Embedded I2C devices and I/O expanders are not yet supported.
109The current I2C support therefore does not make any devices available to the user at this time.
110
111Programming and Debugging
112*************************
113
114Build and flash applications as usual (see :ref:`build_an_application` and
115:ref:`application_run` for more details).
116
117Supported Debug Probe
118=====================
119
120| The "Olimex ARM-USB-OCD-H" probe is the only officially supported probe.
121| This probe is supported by OpenOCD that is shipped with the Zephyr SDK.
122
123The "Olimex ARM-USB-OCD-H" probe needs to be connected with a "Coresight 20 pins"
124adapter to CN1 connector on Spider board.
125
126Configuring a Console
127=====================
128
129Connect a USB cable from your PC to CN20 USB port of your Spider board.
130
131Use the following settings with your serial terminal of choice (minicom, putty,
132etc.):
133
134- Speed: 115200
135- Data: 8 bits
136- Parity: None
137- Stop bits: 1
138
139Flashing
140========
141
142First of all, open your serial terminal.
143
144Applications for the ``rcar_spider_s4/r8a779f0/r52`` board configuration can be built in the
145usual way (see :ref:`build_an_application` for more details).
146
147.. zephyr-app-commands::
148   :zephyr-app: samples/hello_world
149   :board: rcar_spider_s4/r8a779f0/r52
150   :goals: flash
151
152You should see the following message in the terminal:
153
154.. code-block:: console
155
156	*** Booting Zephyr OS build v3.3.0-rc2 ***
157	Hello World! rcar_spider_s4
158
159Debugging
160=========
161
162First of all, open your serial terminal.
163
164Here is an example for the :zephyr:code-sample:`hello_world` application.
165
166.. zephyr-app-commands::
167   :zephyr-app: samples/hello_world
168   :board: rcar_spider_s4/r8a779f0/r52
169   :goals: debug
170
171You will then get access to a GDB session for debugging.
172
173By continuing the app, you should see the following message in the terminal:
174
175.. code-block:: console
176
177	*** Booting Zephyr OS build v3.3.0-rc2 ***
178	Hello World! rcar_spider_s4
179
180References
181**********
182
183- `Renesas R-Car S4 Spider`_
184- `Renesas R-Car S4 chip`_
185- `eLinux S4 Spider`_
186
187.. _Renesas R-Car S4 Spider:
188   https://www.renesas.com/us/en/products/automotive-products/automotive-system-chips-socs/rtp8a779f0askb0sp2s-r-car-s4-reference-boardspider
189
190.. _Renesas R-Car S4 chip:
191	https://www.renesas.com/us/en/products/automotive-products/automotive-system-chips-socs/r-car-s4-automotive-system-chip-soc-car-servercommunication-gateway
192
193.. _eLinux S4 Spider:
194	https://elinux.org/R-Car/Boards/Spider
195
196.. _S4 Spider CPU board IOs:
197	https://elinux.org/images/6/6d/Rcar_s4_spider_cpu_board.jpg
198
199.. _S4 Spider breakout board IOs:
200	https://elinux.org/images/2/29/Rcar_s4_spider_breakout_board.jpg
201