diff options
-rw-r--r-- | BUILD.md | 10 | ||||
-rw-r--r-- | CUSTOMIZE.md | 17 | ||||
-rw-r--r-- | DEPLOY.md | 7 | ||||
-rw-r--r-- | DOCUMENTATION.md | 2 | ||||
-rw-r--r-- | FEATURES.md | 204 | ||||
-rw-r--r-- | SETUP.md | 9 | ||||
-rw-r--r-- | meta-amd-bsp/README.md | 7 |
7 files changed, 130 insertions, 126 deletions
@@ -3,18 +3,18 @@ After setting up the build system ([SETUP.md](SETUP.md)), we can build images or recipes for a target machine (or BSP). Running the commands in the instructions below will setup a build for -a selected AMD BSP, and will start a build: +a selected AMD machine, and will start a build: -### 2.1. Select a BSP +### 2.1. Select a target machine -Set the environment variable `MACHINE` to the `amdx86` bsp that you want +Set the environment variable `MACHINE` to one of the supported AMD machines (i.e `e3000` or `rome`) that you want to build an image for (change the `<machine-name>` in the following example accordingly): ```sh MACHINE="<machine-name>" ``` -### 2.2. Setup the build environment for selected BSP +### 2.2. Setup the build environment for selected machine Source the *oe-init-build-env* script: ```sh @@ -50,7 +50,7 @@ Build one of the supported image recipes: bitbake <image-name> -k ``` -###### where `<image-name>` is to be replaced with one of the supported images for the selected AMD BSP. See *supported features* section for a list all supported images for your machine. +###### where `<image-name>` is to be replaced with one of the supported images for the selected AMD machine. See *supported features* section for a list all supported images for your machine. ###### (e.g. `core-image-sato` or `core-image-base`) --- diff --git a/CUSTOMIZE.md b/CUSTOMIZE.md index a81639a9..36a91687 100644 --- a/CUSTOMIZE.md +++ b/CUSTOMIZE.md @@ -35,14 +35,14 @@ target. --- -#### Supported Features +#### Supported software features -| Feature | Configuration variable | Configuration values | Default value | Supported Platforms | -|:----------------------|:----------------------------|:---------------------|:--------------|:--------------------| -| ON-TARGET DEVELOPMENT | EXTRA_IMAGE_FEATURES_append | tools-sdk | | E3000 | -| ON-TARGET DEBUGGING | EXTRA_IMAGE_FEATURES_append | tools-debug | | E3000 | -| ON-TARGET PROFILING | EXTRA_IMAGE_FEATURES_append | tools-profile | | E3000 | -| RT KERNEL | RT_KERNEL_AMD | yes, no | no | E3000 | +| Software feature | Configuration variable | Configuration values | Default value | Supported machines | +|:----------------------|:----------------------------|:---------------------|:--------------|:-------------------| +| ON-TARGET DEVELOPMENT | EXTRA_IMAGE_FEATURES_append | tools-sdk | | e3000, rome | +| ON-TARGET DEBUGGING | EXTRA_IMAGE_FEATURES_append | tools-debug | | e3000, rome | +| ON-TARGET PROFILING | EXTRA_IMAGE_FEATURES_append | tools-profile | | e3000, rome | +| RT KERNEL | RT_KERNEL_AMD | yes, no | no | e3000, rome | #### Example configuration in local.conf ```sh @@ -50,7 +50,8 @@ EXTRA_IMAGE_FEATURES_append = " tools-sdk" EXTRA_IMAGE_FEATURES_append = " tools-debug" EXTRA_IMAGE_FEATURES_append = " tools-profile" -# Please run 'bitbake -c clean virtual/kernel' before configuring RT_KERNEL_AMD +# Please run 'bitbake -c clean virtual/kernel' everytime before +# configuring the RT_KERNEL_AMD variable RT_KERNEL_AMD = "yes" ``` @@ -1,14 +1,14 @@ # 3. Deploying an image to the target After building an image ([BUILD.md](BUILD.md)), we can deploy it to the -target using a USB Flash Drive or a CD/DVD. The built images can be +target machine using a USB Flash Drive or a CD/DVD. The built images can be found in the `<build-dir>/tmp/deploy/images/<machine-name>` directory to which we will refer to as the **"Image Deploy Directory"** in this doc. --- ##### Note Change the `<machine-name>` and `<image-name>` placeholders in the -following instructions according to the selected BSP and the image +following instructions according to the selected machine and the image built in "Section 2 - Setting up and starting a build" ([BUILD.md](BUILD.md)). --- @@ -35,7 +35,8 @@ sudo bmaptool copy <image-name>-<machine-name>.wic /dev/<dev-node> ##### Using dd ```sh -sudo dd if=<image-name>-<machine-name>.wic of=/dev/<dev-node> status=progress +sudo dd if=<image-name>-<machine-name>.wic of=/dev/<dev-node> \ +conv=fdatasync status=progress ``` ###### where `<dev-node>` is to be replaced with the device node of the USB Flash Drive. diff --git a/DOCUMENTATION.md b/DOCUMENTATION.md index 622bca37..2720026c 100644 --- a/DOCUMENTATION.md +++ b/DOCUMENTATION.md @@ -1,7 +1,7 @@ # Documentation This section lists the links to official documentation of various -features and a general guide to Yocto Project and it's build system. +features, and user guide to Yocto Project and it's build system. | Feature | Documentation | Comments | |:---------------------------------------------|:---------------------------------------------------------------------------------------|:---------| diff --git a/FEATURES.md b/FEATURES.md index 6b1cb7d3..d76f3254 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -1,105 +1,105 @@ # Features -This section lists the features supported for the AMD BSPs. In each -BSP column, a 'Y' represents that the feature in this row is supported -for this BSP. +This section lists the features supported on the AMD machines. In each +machine column, a 'Y' represents that the feature in this row is supported +on this machine. -| Category | Feature | E3000 | -|:--------------------------------|:----------------------------------------|:-----:| -| Images | | | -| | core-image-sato | | -| | core-image-base | Y | -| Images Types | | | -| | WIC | Y | -| | ISO | Y | -| Board Devices | | | -| | USB 2.0 Host | Y | -| | USB 3.0 Host (MSC) | Y | -| | USB 3.1 Host | | -| | M.2 SATA | | -| | I2C | Y | -| | UART | Y | -| | eMMC | Y | -| | SMP | Y | -| | SPI | Y | -| I/O | | | -| | USB Host | Y | -| | USB Mass Storage | Y | -| | Audio | | -| | UART | Y | -| | Bluetooth | | -| | USB Wi-Fi | Y | -| | HDD/SATA | Y | -| | SD/MMC | Y | -| Networking | | | -| | Ethernet | Y | -| | SGMII | Y | -| | RGMII | Y | -| General Purpose Kernel Features | | | -| | Control Groups | Y | -| | CPU Hot Plugging | Y | -| | High Resolution Timers (HRT) | Y | -| | POSIX Message Queues & Semaphores | Y | -| | Prioritized OOM Killer | Y | -| | Symmetric Multi-Processing (SMP) | Y | -| | Native POSIX Thread Library | Y | -| Kernel Preemption | | | -| | Preemptive Kernel (Low-Latency Desktop) | Y | -| | Fully Preemptible Kernel (RT) | Y | -| Filesystems | | | -| | Devtmpfs | Y | -| | EXT2 | Y | -| | EXT3 | Y | -| | EXT4 | Y | -| | FAT | Y | -| | NFSv3 | Y | -| | ProcFS | Y | -| | RamFS | Y | -| | SysFS | Y | -| | tmpfs | Y | -| HID (Input Devices) | | | -| | Input Core (CONFIG_INPUT) | Y | -| | Mouse Interface | | -| | Keyboards | Y | -| | Touchscreen | | -| Display Device Support | | | -| | DP | | -| | HDMI | | -| Network Protocols | | | -| | IPv4 | Y | -| | IPv6 | Y | -| Kernel Debug/Trace | | | -| | KGDB | Y | -| | LTTng - Kernel Tracing | Y | -| | LTTng - Userspace Tracing | Y | -| USB Protocols | | | -| | USB 2.0 | Y | -| | USB 3.0 | Y | -| | USB 3.1 | | -| | USB HS | Y | -| Sound Support | | | -| | ALSA | | -| Multimedia Support | | | -| | Accelerated gstreamer | | -| | Unaccelerated gstreamer | | -| | OMX | | -| | VDPAU | | -| | VAAPI | | -| | mesa (accelerated graphics) | | -| | unaccelerated graphics | | -| | Vulkan | | -| | multi-display | | -| | CodeXL | | -| | RGP | | -| | MP4 | | -| | MPEG2 | | -| | MPEG4 | | -| | VC-1 | | -| | H.264 | | -| | H.265 | | -| | ROCm-OpenCL | | -| Network Security | | | -| | IPSEC (strongswan) | Y | -| | DPDK | Y | -| Kernel Virtualization | | | -| | KVM | Y | +| Category | Feature | E3000 | ROME | +|:--------------------------------|:----------------------------------------|:-----:|:----:| +| Images | | | | +| | core-image-sato | | | +| | core-image-base | Y | Y | +| Images Types | | | | +| | WIC | Y | Y | +| | ISO | Y | Y | +| Board Devices | | | | +| | USB 2.0 Host | Y | Y | +| | USB 3.0 Host (MSC) | Y | Y | +| | USB 3.1 Host | | | +| | NVMe | | Y | +| | M.2 SATA | | | +| | I2C | Y | Y | +| | UART | Y | Y | +| | eMMC | Y | | +| | SMP | Y | Y | +| | SPI | Y | Y | +| I/O | | | | +| | USB Host | Y | Y | +| | USB Mass Storage | Y | Y | +| | Audio | | | +| | UART | Y | Y | +| | Bluetooth | | | +| | USB Wi-Fi | Y | | +| | HDD/SATA | Y | Y | +| | SD/MMC | Y | | +| Networking | | | | +| | Ethernet | Y | | +| | SGMII | Y | | +| | RGMII | Y | | +| Network Protocols | | | | +| | IPv4 | Y | Y | +| | IPv6 | Y | Y | +| General Purpose Kernel Features | | | | +| | Control Groups | Y | Y | +| | CPU Hot Plugging | Y | Y | +| | High Resolution Timers (HRT) | Y | Y | +| | POSIX Message Queues & Semaphores | Y | Y | +| | Prioritized OOM Killer | Y | Y | +| | Symmetric Multi-Processing (SMP) | Y | Y | +| | Native POSIX Thread Library | Y | Y | +| Kernel Preemption | | | | +| | Preemptive Kernel (Low-Latency Desktop) | Y | Y | +| | Fully Preemptible Kernel (RT) | Y | Y | +| Filesystems | | | | +| | Devtmpfs | Y | Y | +| | EXT2 | Y | Y | +| | EXT3 | Y | Y | +| | EXT4 | Y | Y | +| | FAT | Y | Y | +| | NFSv3 | Y | Y | +| | ProcFS | Y | Y | +| | RamFS | Y | Y | +| | SysFS | Y | Y | +| | tmpfs | Y | Y | +| HID (Input Devices) | | | | +| | Input Core (CONFIG_INPUT) | Y | Y | +| | Mouse Interface | | | +| | Keyboards | Y | Y | +| | Touchscreen | | | +| Display Device Support | | | | +| | DP | | | +| | HDMI | | | +| Kernel Debug/Trace | | | | +| | KGDB | Y | Y | +| | LTTng - Kernel Tracing | Y | Y | +| | LTTng - Userspace Tracing | Y | Y | +| USB Protocols | | | | +| | USB 2.0 | Y | Y | +| | USB 3.0 | Y | Y | +| | USB 3.1 | | | +| Sound Support | | | | +| | ALSA | | | +| Multimedia Support | | | | +| | Accelerated gstreamer | | | +| | Unaccelerated gstreamer | | | +| | OMX | | | +| | VDPAU | | | +| | VAAPI | | | +| | mesa (accelerated graphics) | | | +| | unaccelerated graphics | | | +| | Vulkan | | | +| | multi-display | | | +| | CodeXL | | | +| | RGP | | | +| | MP4 | | | +| | MPEG2 | | | +| | MPEG4 | | | +| | VC-1 | | | +| | H.264 | | | +| | H.265 | | | +| | ROCm-OpenCL | | | +| Network Security | | | | +| | IPSEC (strongswan) | Y | | +| | DPDK | Y | | +| Kernel Virtualization | | | | +| | KVM | Y | Y | @@ -1,13 +1,13 @@ # 1. Setting up the build system -Building images for AMD BSPs requires setting up the Yocto Project +Building images for AMD machines requires setting up the Yocto Project Build System. Please follow the guidelines on [Yocto Project Overview and Concepts Manual](https://www.yoctoproject.org/docs/3.1.4/overview-manual/overview-manual.html) and [Yocto Project Quick Build Guide](https://www.yoctoproject.org/docs/3.1.4/brief-yoctoprojectqs/brief-yoctoprojectqs.html) if you are not familiar with the Yocto Project and it's Build System. Running the following commands will setup the build system and will -enable us to build recipes & images for the `amdx86` bsp. +enable us to build recipes & images for any of the supported AMD machines (i.e `e3000` or `rome`). ### 1.1 Prerequisites @@ -16,7 +16,8 @@ Install the build system's dependencies: sudo apt install -y gawk wget git-core diffstat unzip texinfo \ gcc-multilib build-essential chrpath socat cpio python3 \ python3-pip python3-pexpect xz-utils debianutils iputils-ping \ - python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm + python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 \ + xterm ``` ### 1.2 Download the build system and the meta-data layers @@ -56,4 +57,4 @@ cd .. Continue to "Section 2 - Setting up and starting a build" ([BUILD.md](BUILD.md)) for instructions on how to setup and start a -build for a particular AMD BSP. +build for a particular AMD machine. diff --git a/meta-amd-bsp/README.md b/meta-amd-bsp/README.md index 57f90e58..ef94f72e 100644 --- a/meta-amd-bsp/README.md +++ b/meta-amd-bsp/README.md @@ -1,16 +1,17 @@ # meta-amd/meta-amd-bsp This layer contains metadata that is appropriate for all the supported -AMD-based platforms under `amdx86` BSP. +AMD-based platforms. Settings in this layer should use appropriate variable suffixes to ensure they only apply to expected boards. ## Machines -The supported AMD machines/platforms under the `amdx86` BSP are: +The supported AMD machines/platforms are: -* AMD EPYC™ Embedded 3000 Series (a.k.a. E3000) +* rome - AMD EPYC™ 7002 Series (a.k.a. ROME) +* e3000 - AMD EPYC™ Embedded 3000 Series (a.k.a. E3000) Please see the README file contained in the root meta-amd directory for general information and usage details. |