boards/intel/ehl/doc/index.html · boards/intel/ehl/doc/index.rst 공식 원문 ↗

Zephyr 3.7.0 · Boards · Intel · x86

Intel Elkhart Lake CRB

Intel Atom 기반 Elkhart Lake reference board의 UEFI·network boot 안내서입니다.

Official pathboards/intel/ehl/doc/index.html
Source fileboards/intel/ehl/doc/index.rst
Source versionZephyr 3.7.0
TranslationFull · reviewed

본문 기준: Zephyr 3.7.0 LTS3 · 이후 유지보수 패치는 별도입니다.

Part 1

요약·해설

EHL CRB는 IoT edge용 compact x86 board이며 UEFI USB boot와 PXE network boot를 지원합니다.

SoC

Intel Atom · Elkhart Lake

SoC I/O

I2C · SMBus · NS16550

Boot

UEFI · PXE

Part 2

접을 수 있는 영어 원문 전체

영어 원문 전체 펼치기
원문 SHA-256 4D5CD4F202F59BB8B4B052B1DE627FA100D9008A38D73D0D9DDF659FE663B72E
.. _intel_ehl_crb:

Elkhart Lake CRB
################

Overview
********
Elkhart Lake Reference Board (EHL CRB) is an example implementation of a
compact single board computer with high performance for IoT edge devices.

This board configuration enables kernel support for the `EHL`_ board.

.. note::
   This board configuration works on the variant of `EHL`_
   boards containing Intel |reg| Atom |trade| SoC.

Hardware
********

General information about the board can be found at the `EHL`_ website.

.. include:: ../../../../../../../soc/intel/elkhart_lake/doc/supported_features.txt


Connections and IOs
===================

Refer to the `EHL`_ website for more information.

Programming and Debugging
*************************
Use the following procedures for booting an image on a EHL CRB board.

.. contents::
   :depth: 1
   :local:
   :backlinks: top

Build Zephyr application
========================

#. Build a Zephyr application; for instance, to build the ``hello_world``
   application on Elkhart Lake CRB:

   .. zephyr-app-commands::
      :zephyr-app: samples/hello_world
      :board: intel_ehl_crb
      :goals: build

   .. note::

      A Zephyr EFI image file named :file:`zephyr.efi` is automatically
      created in the build directory after the application is built.

Booting the Elkhart Lake CRB Board using UEFI
=============================================

.. include:: ../../../../../../../boards/intel/common/efi_boot.rst
   :start-after: start_include_here

Booting the Elkhart Lake CRB Board over network
===============================================

.. include:: ../../../../../../../boards/intel/common/net_boot.rst
   :start-after: start_include_here

.. note::
   To enable PXE boot for Elkhart Lake CRB board do the following:

   #. Enable boot from PXE. Go to EFI shell and make sure that the first boot
      option is ``UEFI PXEv4``.

      .. code-block:: console

         Shell> bcfg boot dump
         Option: 00. Variable: Boot0007
           Desc    - UEFI PXEv4 (MAC:6805CABC1997)
           DevPath - PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)/MAC(6805CABC1997,0x0)/IPv4(0.0.0.0)
           Optional- Y
         ...

   #. If UEFI PXEv4 is not the first boot option use ``bcfg boot mv`` command to
      change boot order

      .. code-block:: console

         Shell> bcfg boot mv 7 0

.. _EHL: https://www.intel.com/content/www/us/en/products/docs/processors/embedded/enhanced-for-iot-platform-brief.html

Part 3

한국어 전문 번역

개요

Elkhart Lake Reference Board(EHL CRB)는 IoT edge device용 고성능 compact single-board computer의 구현 예입니다. 이 board configuration은 EHL board의 Zephyr kernel support를 활성화하며, Intel Atom SoC를 포함한 EHL board variant에서 동작합니다.

Hardware

HPET, local APIC와 I/O APIC 같은 standard architecture device에 더해 Zephyr는 Elkhart Lake-specific SoC device인 I2C와 SMBus를 지원합니다.

UART serial port

Elkhart Lake UART는 NS16550-compatible이며 baud rate 115.2kbps를 지원합니다.

Board 일반 정보와 connection·I/O는 Intel EHL website에서 확인할 수 있습니다.

Programming과 Debugging

Zephyr application build

Elkhart Lake CRB용 hello_world를 build합니다.

west build -b intel_ehl_crb samples/hello_world

UEFI로 Elkhart Lake CRB boot

Boot device 준비

Board에서 Zephyr application image를 boot할 USB flash drive를 준비합니다.

  1. USB flash drive를 FAT32로 format합니다. Windows에서는 File Explorer에서 USB flash drive를 오른쪽 click하고 Format...을 선택한 뒤 File System을 FAT32로 지정하고 format이 끝날 때까지 기다립니다. Linux에서는 gparted 같은 graphical utility를 사용하거나 terminal에서 USB device node(예: /dev/sdd)를 찾아 다음 명령을 실행합니다.
    $ mkfs.vfat -F 32 <device-node>
  2. Zephyr EFI image file zephyr/zephyr.efi를 USB drive에 복사합니다.

Board에서 Zephyr boot

USB flash drive를 연결한 상태로 board를 EFI shell까지 boot합니다.

  1. 준비한 USB flash drive를 board에 삽입합니다.
  2. Serial cable로 board와 host system을 연결하고 serial data를 볼 수 있게 host를 설정합니다. Board website에서 세부사항을 확인하며 baud rate는 115200을 사용합니다.
  3. Board 전원을 켭니다.
  4. 다음 출력이 나타나면 F7을 누릅니다.
    Press <DEL> or <ESC> to enter setup.
  5. 표시된 menu에서 해당 EFI shell을 설명하는 entry를 선택합니다.
  6. EFI shell에서 Zephyr EFI image를 선택해 boot합니다.
    Shell> fs0:zephyr.efi
  7. Boot process가 끝나면 Zephyr application image의 boot가 완료됩니다.

Network로 Elkhart Lake CRB boot

Linux host 준비

  1. DHCP와 TFTP server를 설치합니다. 다음 예는 dnsmasq를 사용합니다.
    $ sudo apt-get install dnsmasq
  2. DHCP server를 구성합니다. 다음 dnsmasq 설정은 eno2 interface만 listen하고 10.1.1.20~10.1.1.30 address를 12시간 lease로 제공합니다.
    # Only listen to this interface
    interface=eno2
    dhcp-range=10.1.1.20,10.1.1.30,12h
  3. TFTP server를 구성합니다. 앞서 만든 Zephyr EFI binary zephyr.efi를 boot file로 지정합니다.
    # tftp
    enable-tftp
    tftp-root=/srv/tftp
    dhcp-boot=zephyr.efi
  4. Zephyr EFI image zephyr/zephyr.efi를 /srv/tftp directory에 복사합니다.
    $ cp zephyr/zephyr.efi /srv/tftp
  5. TFTP root가 다음과 같은지 확인합니다.
    $ tree /srv/tftp
    /srv/tftp
    └── zephyr.efi
  6. dnsmasq service를 restart합니다.
    $ sudo systemctl restart dnsmasq.service

Network boot용 board 준비

  1. BIOS setting에서 PXE network를 활성화합니다.
  2. Network boot를 첫 번째 boot option으로 설정합니다.

Board boot

  1. Serial cable로 board와 host를 연결하고 serial data를 볼 수 있게 host를 설정합니다. Baud rate는 115200입니다.
  2. Board 전원을 켭니다.
  3. Linux host에서 board가 IP address를 받았는지 확인합니다.
    $ journalctl -f -u dnsmasq
    dnsmasq-dhcp[5386]: DHCPDISCOVER(eno2) 00:07:32:52:25:88
    dnsmasq-dhcp[5386]: DHCPOFFER(eno2) 10.1.1.28 00:07:32:52:25:88
    dnsmasq-dhcp[5386]: DHCPREQUEST(eno2) 10.1.1.28 00:07:32:52:25:88
    dnsmasq-dhcp[5386]: DHCPACK(eno2) 10.1.1.28 00:07:32:52:25:88
  4. Network boot가 시작됐는지 확인합니다.
    $ journalctl -f -u dnsmasq
    dnsmasq-tftp[5386]: sent /srv/tftp/zephyr.efi to 10.1.1.28
  5. Boot process가 끝나면 Zephyr application image의 boot가 완료됩니다.

EHL CRB PXE boot order

  1. EFI shell에서 PXE boot를 활성화하고 첫 번째 boot option이 UEFI PXEv4인지 확인합니다.
    Shell> bcfg boot dump
    Option: 00. Variable: Boot0007
      Desc    - UEFI PXEv4 (MAC:6805CABC1997)
      DevPath - PciRoot(0x0)/Pci(0x1C,0x0)/Pci(0x0,0x0)/MAC(6805CABC1997,0x0)/IPv4(0.0.0.0)
      Optional- Y
    ...
  2. UEFI PXEv4가 첫 번째 option이 아니면 bcfg boot mv로 순서를 바꿉니다.
    Shell> bcfg boot mv 7 0

Source

출처

영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.