boards: arm64: add support of Renesas Spider S4 A55 board
Add support of 'rcar_spider_s4/r8a779f0/a55' board: minimal dts and configuration. Signed-off-by: Mykola Kvach <mykola_kvach@epam.com>
This commit is contained in:
parent
c572614b8b
commit
797158997f
24 changed files with 366 additions and 19 deletions
5
boards/renesas/rcar_spider_s4/Kconfig.defconfig
Normal file
5
boards/renesas/rcar_spider_s4/Kconfig.defconfig
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Copyright (c) 2024 EPAM Systems
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config BUILD_OUTPUT_BIN
|
||||
default y if BOARD_RCAR_SPIDER_S4_R8A779F0_A55
|
|
@ -2,4 +2,5 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
config BOARD_RCAR_SPIDER_S4
|
||||
select SOC_R8A779F0
|
||||
select SOC_R8A779F0_R52 if BOARD_RCAR_SPIDER_S4_R8A779F0_R52
|
||||
select SOC_R8A779F0_A55 if BOARD_RCAR_SPIDER_S4_R8A779F0_A55
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# SPDX-License-Identifier: Apache-2.0
|
||||
board_runner_args(openocd "--use-elf")
|
||||
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
|
||||
if(CONFIG_BOARD_RCAR_SPIDER_S4_R8A779F0_R52)
|
||||
board_runner_args(openocd "--use-elf")
|
||||
include(${ZEPHYR_BASE}/boards/common/openocd.board.cmake)
|
||||
endif()
|
||||
|
|
83
boards/renesas/rcar_spider_s4/doc/rcar_spider_a55.rst
Normal file
83
boards/renesas/rcar_spider_s4/doc/rcar_spider_a55.rst
Normal file
|
@ -0,0 +1,83 @@
|
|||
.. _rcar_spider_a55:
|
||||
|
||||
R-CAR Spider S4 (ARM64)
|
||||
#######################
|
||||
|
||||
Overview
|
||||
********
|
||||
R-Car S4 enables to launch Car Server/CoGW with high performance, high-speed networking,
|
||||
high security and high functional safety levels that are required as E/E architectures
|
||||
evolve into domains and zones. The R-Car S4 solution allows designers to re-use up to 88
|
||||
percent of software code developed for 3rd generation R-Car SoCs and RH850 MCU applications.
|
||||
The software package supports the real-time cores with various drivers and basic software
|
||||
such as Linux BSP and hypervisors.
|
||||
|
||||
Hardware
|
||||
********
|
||||
The R-Car S4 includes:
|
||||
|
||||
* eight 1.2GHz Arm Cortex-A55 cores, 2 cores x 4 clusters;
|
||||
* 1.0 GHz Arm Cortex-R52 core (hardware Lock step is supported);
|
||||
* two 400MHz G4MH cores (hardware Lock step is supported);
|
||||
* memory controller for LPDDR4X-3200 with 32bit bus (16bit x 1ch + 16bit x 1ch) with ECC;
|
||||
* SD card host interface / eMMC;
|
||||
* UFS 3.0 x 1 channel;
|
||||
* PCI Express Gen4.0 interface (Dual lane x 2ch);
|
||||
* ICUMX;
|
||||
* ICUMH;
|
||||
* SHIP-S x 3 channels;
|
||||
* AES Accerator x 8 channels;
|
||||
* CAN FD interface x 16 channels;
|
||||
* R-Switch2 (Ether);
|
||||
* 100base EtherAVB x 1 channel;
|
||||
* Gbit-EtherTSN x 3 channels;
|
||||
* 1 unit FlexRay (A,B 2ch) interface.
|
||||
|
||||
Supported Features
|
||||
==================
|
||||
The Renesas ``rcar_spider_s4/r8a779f0/a55`` board configuration supports the following
|
||||
hardware features:
|
||||
|
||||
+-----------+------------------------------+--------------------------------+
|
||||
| Interface | Driver/components | Support level |
|
||||
+===========+==============================+================================+
|
||||
| PINCTRL | pinctrl | |
|
||||
+-----------+------------------------------+--------------------------------+
|
||||
| CLOCK | clock_control | |
|
||||
+-----------+------------------------------+--------------------------------+
|
||||
| UART | serial | interrupt-driven/polling |
|
||||
+-----------+------------------------------+--------------------------------+
|
||||
|
||||
Other hardware features have not been enabled yet for this board.
|
||||
|
||||
Programming and Debugging
|
||||
*************************
|
||||
|
||||
The onboard flash is not supported by Zephyr at this time. However, it is possible to
|
||||
load the Zephyr binary using U-Boot commands.
|
||||
|
||||
One of the ways to load Zephyr is shown below.
|
||||
|
||||
.. code-block:: console
|
||||
|
||||
tftp 0x48000000 <tftp_server_path/zephyr.bin>
|
||||
booti 0x48000000
|
||||
|
||||
Here is an example for the :ref:`hello_world` application.
|
||||
|
||||
.. zephyr-app-commands::
|
||||
:zephyr-app: samples/hello_world
|
||||
:board: rcar_spider_s4/r8a779f0/a55
|
||||
:goals: build
|
||||
|
||||
References
|
||||
**********
|
||||
|
||||
- `Renesas R-Car Development Support website`_
|
||||
- `eLinux Spider page`_
|
||||
|
||||
.. _Renesas R-Car Development Support website:
|
||||
https://www.renesas.com/us/en/support/partners/r-car-consortium/r-car-development-support
|
||||
|
||||
.. _eLinux Spider page:
|
||||
https://elinux.org/R-Car/Boards/Spider
|
|
@ -141,12 +141,12 @@ Flashing
|
|||
|
||||
First of all, open your serial terminal.
|
||||
|
||||
Applications for the ``rcar_spider_s4`` board configuration can be built in the
|
||||
Applications for the ``rcar_spider_s4/r8a779f0/r52`` board configuration can be built in the
|
||||
usual way (see :ref:`build_an_application` for more details).
|
||||
|
||||
.. zephyr-app-commands::
|
||||
:zephyr-app: samples/hello_world
|
||||
:board: rcar_spider_s4
|
||||
:board: rcar_spider_s4/r8a779f0/r52
|
||||
:goals: flash
|
||||
|
||||
You should see the following message in the terminal:
|
||||
|
@ -165,7 +165,7 @@ Here is an example for the :ref:`hello_world` application.
|
|||
|
||||
.. zephyr-app-commands::
|
||||
:zephyr-app: samples/hello_world
|
||||
:board: rcar_spider_s4
|
||||
:board: rcar_spider_s4/r8a779f0/r52
|
||||
:goals: debug
|
||||
|
||||
You will then get access to a GDB session for debugging.
|
|
@ -0,0 +1,17 @@
|
|||
/*
|
||||
* Copyright (c) 2023 EPAM Systems
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*/
|
||||
|
||||
#include <zephyr/dt-bindings/pinctrl/renesas/pinctrl-r8a779f0.h>
|
||||
|
||||
&pfc {
|
||||
hscif0_data_tx_default: hscif0_data_tx_default {
|
||||
pin = <PIN_HTX0 FUNC_HTX0>;
|
||||
};
|
||||
|
||||
hscif0_data_rx_default: hscif0_data_rx_default {
|
||||
pin = <PIN_HRX0 FUNC_HRX0>;
|
||||
};
|
||||
};
|
|
@ -0,0 +1,32 @@
|
|||
/*
|
||||
* Copyright (c) 2023-2024 EPAM Systems
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
*
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include <mem.h>
|
||||
#include <arm64/renesas/r8a779f0.dtsi>
|
||||
#include "rcar_spider_s4_r8a779f0_a55-pinctrl.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Renesas Spider CA55";
|
||||
chosen {
|
||||
zephyr,sram = &ram;
|
||||
zephyr,console = &hscif0;
|
||||
zephyr,shell-uart = &hscif0;
|
||||
};
|
||||
|
||||
ram: memory@48000000 {
|
||||
device_type = "mmio-sram";
|
||||
reg = <0x0 0x48000000 0x0 DT_SIZE_M(512)>;
|
||||
};
|
||||
};
|
||||
|
||||
&hscif0 {
|
||||
pinctrl-0 = <&hscif0_data_tx_default &hscif0_data_rx_default>;
|
||||
pinctrl-names = "default";
|
||||
current-speed = <1843200>;
|
||||
status = "okay";
|
||||
};
|
|
@ -0,0 +1,12 @@
|
|||
identifier: rcar_spider_s4/r8a779f0/a55
|
||||
name: Cortex A55 for Renesas Spider
|
||||
type: mcu
|
||||
arch: arm64
|
||||
toolchain:
|
||||
- zephyr
|
||||
- cross-compile
|
||||
supported:
|
||||
- pinctrl
|
||||
- gpio
|
||||
- clock_control
|
||||
- uart
|
|
@ -0,0 +1,19 @@
|
|||
# Cache management
|
||||
CONFIG_CACHE_MANAGEMENT=y
|
||||
|
||||
# Enable UART driver
|
||||
CONFIG_SERIAL=y
|
||||
|
||||
# Enable console
|
||||
CONFIG_CONSOLE=y
|
||||
CONFIG_UART_CONSOLE=y
|
||||
CONFIG_UART_INTERRUPT_DRIVEN=y
|
||||
|
||||
# Enable clock control
|
||||
CONFIG_CLOCK_CONTROL=y
|
||||
CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=16666666
|
||||
|
||||
CONFIG_AARCH64_IMAGE_HEADER=y
|
||||
CONFIG_XIP=n
|
||||
CONFIG_MAX_XLAT_TABLES=24
|
||||
CONFIG_ARMV8_A_NS=y
|
|
@ -7,12 +7,12 @@
|
|||
|
||||
/dts-v1/;
|
||||
#include <arm/renesas/rcar/gen4/r8a779f0.dtsi>
|
||||
#include "rcar_spider_s4-pinctrl.dtsi"
|
||||
#include "rcar_spider_s4_r8a779f0_r52-pinctrl.dtsi"
|
||||
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
||||
|
||||
/ {
|
||||
model = "Renesas Spider board";
|
||||
compatible = "renesas,spider-s4";
|
||||
compatible = "renesas,spider-s4-cr52";
|
||||
|
||||
chosen {
|
||||
zephyr,sram = &sram0;
|
|
@ -1,4 +1,4 @@
|
|||
identifier: rcar_spider_s4
|
||||
identifier: rcar_spider_s4/r8a779f0/r52
|
||||
name: Cortex r52 for Renesas Spider
|
||||
type: mcu
|
||||
arch: arm
|
Loading…
Add table
Add a link
Reference in a new issue