zephyr/boards/phytec/phyboard_nash/doc/index.rst

179 lines
5.9 KiB
ReStructuredText

.. _phyboard_nash:
phyBOARD-Nash i.MX93
####################
Overview
********
The phyBOARD-Nash is based on the phyCORE-i.MX93 SoM is based on the NXP i.MX93
SoC. It features common industrial interfaces and can be used as a reference for
development or in the final product. It is an entry-level development board,
which helps developers to get familiar with the module before investing a large
amount of resources in more specific designs.
i.MX93 MPU is composed of one cluster of 2x Cortex-A55 cores and a single
Cortex-M33 core. Zephyr OS is ported to run on one of the Cortex-A55 core as
well as the Cortex-M33 core.
- Memory:
- RAM: 512 MB - 2GB LPDDR4
- EEPROM: 4 kB - 32 kB
- eMMC: 8 GB - 256 GB
- Interfaces:
- Ethernet: 2x 10/100BASE-T (1x TSN Support)
- USB: 2x 2.0 Host / OTG
- Serial: 1x RS232 / RS485 Full Duplex / Half Duplex
- CAN: 1x CAN FD
- Digital I/O: via Expansion Connector
- MMX/SD/SDIO: microSD slot
- Display: LVDS(1x4 or 1x8), MIPI DSI(1x4), HDMI
- Audio: SAI
- Camera: 1x MIPI CSI-2 (phyCAM-M), 1x Parallel
- Expansion Bus: I2C, SPI, SDIO, UART, USB
- Debug:
- JTAG 10-pin connector
- USB-C for UART debug, 2x serial ports for A55 and M33
.. image:: img/phyboard_nash.webp
:width: 720px
:align: center
:height: 405px
:alt: phyBOARD-Nash
More information about the board can be found at the `PHYTEC website`_.
Supported Features
==================
The ``phyboard_nash/mimx9352/a55`` board target supports the following hardware
features:
+-----------+------------+-------------------------------------+
| Interface | Controller | Driver/Component |
+===========+============+=====================================+
| GIC-v4 | on-chip | interrupt controller |
+-----------+------------+-------------------------------------+
| ARM TIMER | on-chip | system clock |
+-----------+------------+-------------------------------------+
| CLOCK | on-chip | clock_control |
+-----------+------------+-------------------------------------+
| PINMUX | on-chip | pinmux |
+-----------+------------+-------------------------------------+
| UART | on-chip | serial port |
+-----------+------------+-------------------------------------+
| TPM | on-chip | TPM Counter |
+-----------+------------+-------------------------------------+
The ``phyboard_nash/mimx9352/m33`` board target supports the following hardware
features:
+-----------+------------+-------------------------------------+
| Interface | Controller | Driver/Component |
+===========+============+=====================================+
| NVIC | on-chip | interrupt controller |
+-----------+------------+-------------------------------------+
| SYSTICK | on-chip | systick |
+-----------+------------+-------------------------------------+
| CLOCK | on-chip | clock_control |
+-----------+------------+-------------------------------------+
| PINMUX | on-chip | pinmux |
+-----------+------------+-------------------------------------+
| UART | on-chip | serial port |
+-----------+------------+-------------------------------------+
Devices
========
System Clock
------------
This board configuration uses a system clock frequency of 24 MHz. Cortex-A55
Core runs up to 1.7 GHz. Cortex-M33 Core runs up to 200MHz in which SYSTICK runs
on same frequency.
Serial Port
-----------
This board configuration uses a single serial communication channel with the
CPU's UART2 for A55 core and M33 core. The u-boot bootloader or Linux use the
second serial port for debug output.
Programming and Debugging (A55)
*******************************
Copy the compiled ``zephyr.bin`` to the ``BOOT`` partition of the SD card and
plug the SD card into the board. Power it up and stop the u-boot execution at
prompt.
Use U-Boot to load and execute zephyr.bin on Cortex-A55 Core0:
.. code-block:: console
fatload mmc 1:1 0xd0000000 zephyr.bin; dcache flush; icache flush; dcache off; icache off; go 0xd0000000
Use this configuration to run basic Zephyr applications and kernel tests,
for example:
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: phyboard_nash/mimx9352/a55
:goals: build
Use this configuration to run basic Zephyr applications, for example:
.. code-block:: console
*** Booting Zephyr OS build v3.7.0-848-gb4d99b124c6d ***
Hello World! phyboard_nash/mimx9352/a55
Programming and Debugging (M33)
*******************************
Copy the compiled ``zephyr.bin`` to the ``BOOT`` partition of the SD card and
plug the SD card into the board. Power it up and stop the u-boot execution at
prompt.
Use U-Boot to load and kick zephyr.bin to Cortex-M33 Core:
.. code-block:: console
load mmc 1:1 0x80000000 zephyr.bin;cp.b 0x80000000 0x201e0000 0x30000;bootaux 0x1ffe0000 0
Use this configuration to run basic Zephyr applications, for example:
.. zephyr-app-commands::
:zephyr-app: samples/hello_world
:board: phyboard_nash/mimx9352/m33
:goals: build
This will build an image with the synchronization sample app, boot it and
display the following console output:
.. code-block:: console
*** Booting Zephyr OS build v3.7.0-848-gb4d99b124c6d ***
Hello World! phyboard_nash/mimx9352/m33
Starting the M7-Core from U-Boot and Linux
==========================================
Loading binaries and starting the M33-Core is supported from Linux via
remoteproc. Please check the `phyCORE-i.MX93 BSP Manual`_ for more information.
References
==========
For more information refer to the `PHYTEC website`_.
.. _PHYTEC website:
https://www.phytec.eu/en/produkte/development-kits/phyboard-nash/
.. _phyCORE-i.MX93 BSP Manual:
https://phytec.github.io/doc-bsp-yocto/bsp/imx9/imx93/imx93.html