Part 1
요약·해설
A53 Zephyr target의 GIC·timer·UART 구성과 U-Boot 단일/SMP boot, synchronization sample, Jailhouse cell 실행을 설명합니다.
4× Cortex-A53 · 1× Cortex-M7
2 GB LPDDR4 · eMMC · QSPI
U-Boot · SMP · Jailhouse
Part 2
접을 수 있는 영어 원문 전체
영어 원문 전체 펼치기
C0D6D2603B3A758B53EE0FC9B6BCE5F4E1329F072021FBC711903B5FC10E67E7
.. _imx8mn_evk:
NXP i.MX8MN EVK (Cortex-A53)
############################
Overview
********
i.MX8M Nano LPDDR4 EVK board is based on NXP i.MX8M Nano applications
processor, composed of a quad Cortex®-A53 cluster and a single Cortex®-M7 core.
Zephyr OS is ported to run on the Cortex®-A53 core.
- Board features:
- RAM: 2GB LPDDR4
- Storage:
- SanDisk 16GB eMMC5.1
- Micron 32MB QSPI NOR
- microSD Socket
- Wireless:
- WiFi: 2.4/5GHz IEEE 802.11b/g/n
- Bluetooth: v4.1
- USB:
- OTG - 2x type C
- Ethernet
- PCI-E M.2
- Connectors:
- 40-Pin Dual Row Header
- LEDs:
- 1x Power status LED
- 1x UART LED
- Debug
- JTAG 20-pin connector
- MicroUSB for UART debug, two COM ports for A53 and M7
More information about the board can be found at the
`NXP website`_.
Supported Features
==================
The Zephyr mimx8mn_evk board configuration supports the following hardware
features:
+-----------+------------+-------------------------------------+
| Interface | Controller | Driver/Component |
+===========+============+=====================================+
| GIC-v3 | on-chip | interrupt controller |
+-----------+------------+-------------------------------------+
| ARM TIMER | on-chip | system clock |
+-----------+------------+-------------------------------------+
| UART | on-chip | serial port |
+-----------+------------+-------------------------------------+
Devices
========
System Clock
------------
This board configuration uses a system clock frequency of 8 MHz.
Serial Port
-----------
This board configuration uses a single serial communication channel with the
CPU's UART4.
Programming and Debugging
*************************
Copy the compiled ``zephyr.bin`` to the first FAT 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:
.. code-block:: console
fatload mmc 1:1 0x93c00000 zephyr.bin; dcache flush; icache flush; dcache off; icache off; go 0x93c00000
Or kick SMP zephyr.bin:
.. code-block:: console
fatload mmc 1:1 0x93c00000 zephyr.bin; dcache flush; icache flush; dcache off; icache off; cpu 2 release 0x93c00000
Use this configuration to run basic Zephyr applications and kernel tests,
for example, with the :zephyr:code-sample:`synchronization` sample:
.. zephyr-app-commands::
:zephyr-app: samples/synchronization
:host-os: unix
:board: imx8mn_evk/mimx8mn6/a53
:goals: run
This will build an image with the synchronization sample app, boot it and
display the following ram console output:
.. code-block:: console
*** Booting Zephyr OS build zephyr-v3.1.0-3575-g44dd713bd883 ***
thread_a: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_b: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_a: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_b: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_a: Hello World from cpu 0 on mimx8mn_evk_a53!
Use Jailhouse hypervisor, after root cell linux is up:
.. code-block:: console
#jailhouse enable imx8mn.cell
#jailhouse cell create imx8mn-zephyr.cell
#jailhouse cell load 1 zephyr.bin -a 0x93c00000
#jailhouse cell start 1
References
==========
.. _NXP website:
https://www.nxp.com/design/development-boards/i-mx-evaluation-and-development-boards/evaluation-kit-for-the-i-mx-8m-nano-applications-processor:8MNANOD4-EVK
.. _i.MX 8M Applications Processor Reference Manual:
https://www.nxp.com/webapp/Download?colCode=IMX8MNRM
Part 3
한국어 전문 번역
개요
i.MX8M Nano LPDDR4 EVK는 NXP i.MX8M Nano application processor 기반 보드입니다. quad Cortex-A53 cluster와 single Cortex-M7 core로 구성되며 Zephyr OS는 Cortex-A53 core에서 실행되도록 port되어 있습니다.
보드 기능
- 2 GB LPDDR4 RAM
- SanDisk 16 GB eMMC 5.1, Micron 32 MB QSPI NOR, microSD socket
- 2.4/5 GHz IEEE 802.11b/g/n Wi-Fi와 Bluetooth v4.1
- USB OTG Type-C 2개, Ethernet, PCIe M.2
- 40-pin dual-row header
- power status LED와 UART LED
- 20-pin JTAG connector
- A53와 M7 각각의 COM port를 제공하는 UART debug용 MicroUSB
지원 기능
| 인터페이스 | 컨트롤러 | 드라이버/컴포넌트 |
|---|---|---|
GIC-v3 | on-chip | interrupt controller |
ARM TIMER | on-chip | system clock |
UART | on-chip | serial port |
Device
System clock
board configuration의 system clock frequency는 8 MHz입니다.
Serial port
CPU의 UART4 하나를 serial communication channel로 사용합니다.
프로그래밍과 디버깅
compile한 zephyr.bin을 SD card 첫 번째 FAT partition에 복사하고 보드에 꽂은 뒤 전원을 켜고 U-Boot prompt에서 실행을 중지합니다.
단일 image 기동
fatload mmc 1:1 0x93c00000 zephyr.bin; dcache flush; icache flush; dcache off; icache off; go 0x93c00000SMP image 기동
fatload mmc 1:1 0x93c00000 zephyr.bin; dcache flush; icache flush; dcache off; icache off; cpu 2 release 0x93c00000
기본 Zephyr application과 kernel test는 samples/synchronization으로 실행할 수 있습니다.
west build -b imx8mn_evk/mimx8mn6/a53 samples/synchronization
west build -t runimage를 build하고 boot하면 RAM console에 다음 출력이 표시됩니다.
*** Booting Zephyr OS build zephyr-v3.1.0-3575-g44dd713bd883 ***
thread_a: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_b: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_a: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_b: Hello World from cpu 0 on mimx8mn_evk_a53!
thread_a: Hello World from cpu 0 on mimx8mn_evk_a53!
Jailhouse 사용
root-cell Linux가 기동한 뒤 다음과 같이 Zephyr cell을 시작합니다.
jailhouse enable imx8mn.cell
jailhouse cell create imx8mn-zephyr.cell
jailhouse cell load 1 zephyr.bin -a 0x93c00000
jailhouse cell start 1참고 자료
Source
출처
영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.