Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
+153
View File
@@ -0,0 +1,153 @@
Yocto Project Hardware Reference BSPs README
============================================
This file gives details about using the Yocto Project hardware reference BSPs.
The machines supported can be seen in the conf/machine/ directory and are listed
below. There is one per supported hardware architecture and these are primarily
used to validate that the Yocto Project works on the hardware arctectures of
those machines.
If you are in doubt about using Poky/OpenEmbedded/Yocto Project with your hardware,
consult the documentation for your board/device.
Support for additional devices is normally added by adding BSP layers to your
configuration. For more information please see the Yocto Board Support Package
(BSP) Developer's Guide - documentation source is in documentation/bspguide or
download the PDF from:
https://docs.yoctoproject.org/
Note that these reference BSPs use the linux-yocto kernel and in general don't
pull in binary module support for the platforms. This means some device functionality
may be limited compared to a 'full' BSP which may be available.
Hardware Reference Boards
=========================
The following boards are supported by the meta-yocto-bsp layer:
* Texas Instruments Beaglebone (beaglebone-yocto)
* General IA platforms (genericx86 and genericx86-64)
For more information see the board's section below. The appropriate MACHINE
variable value corresponding to the board is given in brackets.
Reference Board Maintenance
===========================
Send pull requests, patches, comments or questions about meta-yocto-bsps to poky@lists.yoctoproject.org
Maintainers: Kevin Hao <kexin.hao@windriver.com>
Bruce Ashfield <bruce.ashfield@gmail.com>
Consumer Devices
================
The following consumer devices are supported by the meta-yocto-bsp layer:
* Intel x86 based PCs and devices (genericx86)
For more information see the device's section below. The appropriate MACHINE
variable value corresponding to the device is given in brackets.
Specific Hardware Documentation
===============================
Intel x86 based PCs and devices (genericx86*)
=============================================
The genericx86 and genericx86-64 MACHINE are tested on the following platforms:
Intel Xeon/Core i-Series:
+ Intel NUC5 Series - ix-52xx Series SOC (Broadwell)
+ Intel NUC6 Series - ix-62xx Series SOC (Skylake)
+ Intel Shumway Xeon Server
Intel Atom platforms:
+ MinnowBoard MAX - E3825 SOC (Bay Trail)
+ MinnowBoard MAX - Turbot (ADI Engineering) - E3826 SOC (Bay Trail)
- These boards can be either 32bot or 64bit modes depending on firmware
- See minnowboard.org for details
+ Intel Braswell SOC
and is likely to work on many unlisted Atom/Core/Xeon based devices. The MACHINE
type supports ethernet, wifi, sound, and Intel/vesa graphics by default in
addition to common PC input devices, busses, and so on.
Depending on the device, it can boot from a traditional hard-disk, a USB device,
or over the network. Writing generated images to physical media is
straightforward with a caveat for USB devices. The following examples assume the
target boot device is /dev/sdb, be sure to verify this and use the correct
device as the following commands are run as root and are not reversable.
USB Device:
1. Build a live image. This image type consists of a simple filesystem
without a partition table, which is suitable for USB keys, and with the
default setup for the genericx86 machine, this image type is built
automatically for any image you build. For example:
$ bitbake core-image-minimal
2. Use the "dd" utility to write the image to the raw block device. For
example:
# dd if=core-image-minimal-genericx86.hddimg of=/dev/sdb
If the device fails to boot with "Boot error" displayed, or apparently
stops just after the SYSLINUX version banner, it is likely the BIOS cannot
understand the physical layout of the disk (or rather it expects a
particular layout and cannot handle anything else). There are two possible
solutions to this problem:
1. Change the BIOS USB Device setting to HDD mode. The label will vary by
device, but the idea is to force BIOS to read the Cylinder/Head/Sector
geometry from the device.
2. Use a ".wic" image with an EFI partition
a) With a default grub-efi bootloader:
# dd if=core-image-minimal-genericx86-64.wic of=/dev/sdb
b) Use systemd-boot instead
- Build an image with EFI_PROVIDER="systemd-boot" then use the above
dd command to write the image to a USB stick.
Texas Instruments Beaglebone (beaglebone-yocto)
===============================================
The Beaglebone is an ARM Cortex-A8 development board with USB, Ethernet, 2D/3D
accelerated graphics, audio, serial, JTAG, and SD/MMC. The Black adds a faster
CPU, more RAM, eMMC flash and a micro HDMI port. The beaglebone MACHINE is
tested on the following platforms:
o Beaglebone Black A6
o Beaglebone A6 (the original "White" model)
The Beaglebone Black has eMMC, while the White does not. Pressing the USER/BOOT
button when powering on will temporarily change the boot order. But for the sake
of simplicity, these instructions assume you have erased the eMMC on the Black,
so its boot behavior matches that of the White and boots off of SD card. To do
this, issue the following commands from the u-boot prompt:
# mmc dev 1
# mmc erase 0 512
To further tailor these instructions for your board, please refer to the
documentation at http://www.beagleboard.org/bone and http://www.beagleboard.org/black
From a Linux system with access to the image files perform the following steps:
1. Build an image. For example:
$ bitbake core-image-minimal
2. Use the "dd" utility to write the image to the SD card. For example:
# dd if=core-image-minimal-beaglebone-yocto.wic of=/dev/sdb
3. Insert the SD card into the Beaglebone and boot the board.
+12
View File
@@ -0,0 +1,12 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have recipes-* directories, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "yoctobsp"
BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/"
BBFILE_PRIORITY_yoctobsp = "5"
LAYERVERSION_yoctobsp = "4"
LAYERSERIES_COMPAT_yoctobsp = "mickledore"
@@ -0,0 +1,60 @@
#@TYPE: Machine
#@NAME: Beaglebone-yocto machine
#@DESCRIPTION: Reference machine configuration for http://beagleboard.org/bone and http://beagleboard.org/black boards
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "xserver-xorg \
xf86-video-modesetting \
"
MACHINE_EXTRA_RRECOMMENDS = "kernel-modules kernel-devicetree"
EXTRA_IMAGEDEPENDS += "virtual/bootloader"
DEFAULTTUNE ?= "cortexa8hf-neon"
include conf/machine/include/arm/armv7a/tune-cortexa8.inc
IMAGE_FSTYPES += "tar.bz2 jffs2 wic wic.bmap"
EXTRA_IMAGECMD:jffs2 = "-lnp "
WKS_FILE ?= "beaglebone-yocto.wks"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-image kernel-devicetree"
do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot virtual/bootloader:do_deploy"
SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0 115200;ttyAMA0"
SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_VERSION_linux-yocto ?= "6.1%"
KERNEL_IMAGETYPE = "zImage"
KERNEL_DEVICETREE = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb"
KERNEL_EXTRA_ARGS += "LOADADDR=${UBOOT_ENTRYPOINT}"
PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot"
SPL_BINARY = "MLO"
UBOOT_SUFFIX = "img"
UBOOT_MACHINE = "am335x_evm_defconfig"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
MACHINE_FEATURES = "usbgadget usbhost vfat alsa"
IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} ${SPL_BINARY} ${KERNEL_IMAGETYPE} ${KERNEL_DEVICETREE}"
# support runqemu
EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native"
IMAGE_CLASSES += "qemuboot"
QB_DEFAULT_FSTYPE = "wic"
QB_FSINFO = "wic:no-kernel-in-fs"
QB_KERNEL_ROOT = "/dev/vda2"
QB_SYSTEM_NAME = "qemu-system-arm"
QB_MACHINE = "-machine virt"
QB_CPU = "-cpu cortex-a15"
QB_KERNEL_CMDLINE_APPEND = "console=ttyAMA0 systemd.mask=systemd-networkd"
QB_OPT_APPEND = "-device virtio-rng-device"
QB_TAP_OPT = "-netdev tap,id=net0,ifname=@TAP@,script=no,downscript=no"
QB_NETWORK_DEVICE = "-device virtio-net-device,netdev=net0,mac=@MAC@"
QB_ROOTFS_OPT = "-drive id=disk0,file=@ROOTFS@,if=none,format=raw -device virtio-blk-device,drive=disk0"
QB_SERIAL_OPT = ""
QB_TCPSERIAL_OPT = "-device virtio-serial-device -chardev socket,id=virtcon,port=@PORT@,host=127.0.0.1 -device virtconsole,chardev=virtcon"
@@ -0,0 +1,11 @@
#@TYPE: Machine
#@NAME: Generic x86_64
#@DESCRIPTION: Machine configuration for generic x86_64 (64-bit) PCs and servers. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
DEFAULTTUNE ?= "core2-64"
require conf/machine/include/x86/tune-core2.inc
require conf/machine/include/genericx86-common.inc
SERIAL_CONSOLES_CHECK = "ttyS0"
#For runqemu
QB_SYSTEM_NAME = "qemu-system-x86_64"
@@ -0,0 +1,10 @@
#@TYPE: Machine
#@NAME: Generic x86
#@DESCRIPTION: Machine configuration for generic x86 (32-bit) PCs. Supports a moderately wide range of drivers that should boot and be usable on "typical" hardware.
DEFAULTTUNE ?= "core2-32"
require conf/machine/include/x86/tune-core2.inc
require conf/machine/include/genericx86-common.inc
#For runqemu
QB_SYSTEM_NAME = "qemu-system-i386"
@@ -0,0 +1,27 @@
include conf/machine/include/x86/x86-base.inc
require conf/machine/include/x86/qemuboot-x86.inc
MACHINE_FEATURES += "wifi efi pcbios"
PREFERRED_VERSION_linux-yocto ?= "6.1%"
PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
PREFERRED_PROVIDER_virtual/xserver ?= "xserver-xorg"
XSERVER ?= "${XSERVER_X86_BASE} \
${XSERVER_X86_EXT} \
${XSERVER_X86_I915} \
${XSERVER_X86_I965} \
${XSERVER_X86_FBDEV} \
${XSERVER_X86_VESA} \
${XSERVER_X86_MODESETTING} \
"
MACHINE_EXTRA_RRECOMMENDS += "kernel-modules linux-firmware"
GLIBC_ADDONS = "nptl"
EXTRA_OECONF:append:pn-matchbox-panel-2 = " --with-battery=acpi"
IMAGE_FSTYPES += "wic wic.bmap"
WKS_FILE ?= "genericx86.wks.in"
EFI_PROVIDER ??= "grub-efi"
do_image_wic[depends] += "gptfdisk-native:do_populate_sysroot"
do_image_wic[recrdeptask] += "do_bootimg"
@@ -0,0 +1,97 @@
# Copyright (C) 2014 Intel Corporation
#
# Released under the MIT license (see COPYING.MIT)
# This module adds support to testimage.bbclass to deploy images and run
# tests on a BeagleBone (original "white" or Black models). The device must
# be set up as per README.hardware and the master image should be deployed
# onto the card so that it boots into it by default. For booting into the
# image under test we interact with u-boot over serial, so for the
# BeagleBone Black you will need an additional TTL serial cable since a
# serial interface isn't automatically provided over the USB connection as
# it is on the original BeagleBone ("white") version. The separate ext3
# partition that will contain the image to be tested must be labelled
# "testrootfs" so that the deployment code below can find it.
#
# NOTE: for the BeagleBone "white" (original version) you may need to use
# a script which handles the serial device disappearing on power down, such
# as scripts/contrib/serdevtry in OE-Core.
import os
import bb
import time
import subprocess
import sys
import pexpect
from oeqa.controllers.controllerimage import ControllerImageHardwareTarget
class BeagleBoneTarget(ControllerImageHardwareTarget):
dtbs = {'uImage-am335x-bone.dtb': 'am335x-bone.dtb', 'uImage-am335x-boneblack.dtb': 'am335x-boneblack.dtb'}
@classmethod
def get_extra_files(self):
return list(self.dtbs.keys())
def __init__(self, d):
super(BeagleBoneTarget, self).__init__(d)
self.image_fstype = self.get_image_fstype(d)
self.deploy_cmds = [
'mkdir -p /mnt/testrootfs',
'mount -L testrootfs /mnt/testrootfs',
'rm -rf /mnt/testrootfs/*',
'tar xvf ~/test-rootfs.%s -C /mnt/testrootfs' % self.image_fstype,
'[ -e /mnt/testrootfs/boot/uImage ] || [ -L /mnt/testrootfs/boot/uImage ] || cp ~/test-kernel /mnt/testrootfs/boot/uImage',
]
for _, dtbfn in self.dtbs.iteritems():
# Kernel and dtb files may not be in the image, so copy them if not
self.deploy_cmds.append('[ -e /mnt/testrootfs/boot/{0} ] || cp ~/{0} /mnt/testrootfs/boot/'.format(dtbfn))
if not self.serialcontrol_cmd:
bb.fatal("This TEST_TARGET needs a TEST_SERIALCONTROL_CMD defined in local.conf.")
def _deploy(self):
self.controller.run("umount /boot; umount /mnt/testrootfs;")
self.controller.ignore_status = False
# Kernel and dtb files may not be in the image, so copy them just in case
self.controller.copy_to(self.kernel, "~/test-kernel")
kernelpath = os.path.dirname(self.kernel)
for dtborig, dtbfn in self.dtbs.iteritems():
dtbfile = os.path.join(kernelpath, dtborig)
if os.path.exists(dtbfile):
self.controller.copy_to(dtbfile, "~/%s" % dtbfn)
self.controller.copy_to(self.rootfs, "~/test-rootfs.%s" % self.image_fstype)
for cmd in self.deploy_cmds:
self.controller.run(cmd)
def _start(self, params=None):
self.power_cycle(self.controller)
try:
serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
# We'd wait for "U-Boot" here but sometimes we connect too late on BeagleBone white to see it
serialconn.expect("NAND:")
serialconn.expect("MMC:")
serialconn.sendline("a")
serialconn.expect("U-Boot#")
serialconn.sendline("setenv bootpart 0:3")
serialconn.expect("U-Boot#")
serialconn.sendline("setenv mmcroot /dev/mmcblk0p3 ro")
serialconn.expect("U-Boot#")
serialconn.sendline("boot")
serialconn.expect("login:", timeout=120)
serialconn.close()
except pexpect.ExceptionPexpect as e:
bb.fatal('Serial interaction failed: %s' % str(e))
def _wait_until_booted(self):
try:
serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
serialconn.expect("login:", timeout=120)
serialconn.close()
except pexpect.ExceptionPexpect as e:
bb.fatal('Serial interaction failed: %s' % str(e))
@@ -0,0 +1,70 @@
# Copyright (C) 2014 Intel Corporation
#
# Released under the MIT license (see COPYING.MIT)
# This module adds support to testimage.bbclass to deploy images and run
# tests on a Generic PC that boots using grub bootloader. The device must
# be set up as per README.hardware and the master image should be deployed
# onto the harddisk so that it boots into it by default.For booting into the
# image under test we interact with grub over serial, so for the
# Generic PC you will need an additional serial cable and device under test
# needs to have a serial interface. The separate ext3
# partition that will contain the image to be tested must be labelled
# "testrootfs" so that the deployment code below can find it.
import os
import bb
import time
import subprocess
import sys
import pexpect
from oeqa.controllers.controllerimage import ControllerImageHardwareTarget
class GrubTarget(ControllerImageHardwareTarget):
def __init__(self, d):
super(GrubTarget, self).__init__(d)
self.deploy_cmds = [
'mount -L boot /boot',
'mkdir -p /mnt/testrootfs',
'mount -L testrootfs /mnt/testrootfs',
'cp ~/test-kernel /boot',
'rm -rf /mnt/testrootfs/*',
'tar xvf ~/test-rootfs.%s -C /mnt/testrootfs' % self.image_fstype,
]
if not self.serialcontrol_cmd:
bb.fatal("This TEST_TARGET needs a TEST_SERIALCONTROL_CMD defined in local.conf.")
def _deploy(self):
# make sure these aren't mounted
self.controller.run("umount /boot; umount /mnt/testrootfs;")
self.controller.ignore_status = False
# Kernel files may not be in the image, so copy them just in case
self.controller.copy_to(self.rootfs, "~/test-rootfs." + self.image_fstype)
self.controller.copy_to(self.kernel, "~/test-kernel")
for cmd in self.deploy_cmds:
self.controller.run(cmd)
def _start(self, params=None):
self.power_cycle(self.controller)
try:
serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
serialconn.expect("GNU GRUB version 2.00")
serialconn.expect("Linux")
serialconn.sendline("x")
serialconn.expect("login:", timeout=120)
serialconn.close()
except pexpect.ExceptionPexpect as e:
bb.fatal('Serial interaction failed: %s' % str(e))
def _wait_until_booted(self):
try:
serialconn = pexpect.spawn(self.serialcontrol_cmd, env=self.origenv, logfile=sys.stdout)
serialconn.expect("login:", timeout=120)
serialconn.close()
except pexpect.ExceptionPexpect as e:
bb.fatal('Serial interaction failed: %s' % str(e))
@@ -0,0 +1,72 @@
import os
from oeqa.selftest.case import OESelftestTestCase
from oeqa.core.decorator.depends import OETestDepends
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars, runqemu
class Systemdboot(OESelftestTestCase):
def test_efi_systemdboot_images_can_be_built(self):
"""
Summary: Check if systemd-boot images can be built correctly
Expected: 1. File systemd-boot.efi should be available in $poky/build/tmp/deploy/images/genericx86-64
2. 'systemd-boot" can be built correctly
Product: oe-core
Author: Jose Perez Carranza <jose.perez.carranza@intel.com>
AutomatedBy: Jose Perez Carranza <jose.perez.carranza@intel.com>
"""
# Set EFI_PROVIDER = "systemdboot" and MACHINE = "genericx86-64" in conf/local.conf
features = 'EFI_PROVIDER = "systemd-boot"\n'
features += 'MACHINE = "genericx86-64"'
self.append_config(features)
image = 'core-image-minimal'
bb_vars = get_bb_vars(['DEPLOY_DIR_IMAGE', 'IMAGE_LINK_NAME'], image)
systemdbootfile = os.path.join(bb_vars['DEPLOY_DIR_IMAGE'], 'systemd-bootx64.efi')
# Ensure we're actually testing that this gets built and not that
# it was around from an earlier build
bitbake('-c clean systemd-boot')
runCmd('rm -f %s' % systemdbootfile)
# Build a genericx86-64/efi systemdboot image
bitbake('mtools-native core-image-minimal wic-tools')
found = os.path.isfile(systemdbootfile)
self.assertTrue(found, 'Systemd-Boot file %s not found' % systemdbootfile)
"""
Summary: Check if EFI bootloader for systemd is correctly build
Dependencies: Image was built correctly on testcase 1445
Steps: 1. Copy bootx64.efi file from the wic created
under build/tmp/deploy/images/genericx86-64
2. Check bootx64.efi was copied from wic
3. Verify the checksums from the copied and previously
created file are equal.
Expected : Systemd-bootx64.efi and bootx64.efi should be the same
hence checksums should be equal.
Product: oe-core
Author: Jose Perez Carranza <jose.perez.carranza at linux-intel.com>
AutomatedBy: Jose Perez Carranza <jose.perez.carranza at linux-intel.com>
"""
systemdbootimage = os.path.join(bb_vars['DEPLOY_DIR_IMAGE'], '%s.wic' % bb_vars['IMAGE_LINK_NAME'])
imagebootfile = os.path.join(bb_vars['DEPLOY_DIR_IMAGE'], 'bootx64.efi')
# Clean environment before start the test
if os.path.isfile(imagebootfile):
runCmd('rm -f %s' % imagebootfile)
sysroot = get_bb_var('RECIPE_SYSROOT_NATIVE', 'wic-tools')
runCmd('wic cp %s:1/EFI/BOOT/bootx64.efi %s -n %s' % (systemdbootimage,
imagebootfile, sysroot))
found = os.path.isfile(imagebootfile)
self.assertTrue(found, 'bootx64.efi file %s was not copied from image'
% imagebootfile)
result = runCmd('md5sum %s %s' % (systemdbootfile, imagebootfile))
self.assertEqual(result.output.split()[0], result.output.split()[2],
'%s was not correclty generated' % imagebootfile)
@@ -0,0 +1,3 @@
# Assume a USB mouse and keyboard are connected
HAVE_TOUCHSCREEN=0
HAVE_KEYBOARD=1
@@ -0,0 +1,6 @@
HAVE_TOUCHSCREEN=0
HAVE_KEYBOARD=1
DISPLAY_CAN_ROTATE=0
DISPLAY_ORIENTATION=0
DISPLAY_DPI=133
@@ -0,0 +1,6 @@
HAVE_TOUCHSCREEN=0
HAVE_KEYBOARD=1
DISPLAY_CAN_ROTATE=0
DISPLAY_ORIENTATION=0
DISPLAY_DPI=133
@@ -0,0 +1 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
@@ -0,0 +1,21 @@
Section "Monitor"
Identifier "Builtin Default Monitor"
EndSection
Section "Device"
Identifier "Builtin Default fbdev Device 0"
Driver "modesetting"
Option "AccelMethod" "none"
EndSection
Section "Screen"
Identifier "Builtin Default fbdev Screen 0"
DefaultDepth 16
Device "Builtin Default fbdev Device 0"
Monitor "Builtin Default Monitor"
EndSection
Section "ServerLayout"
Identifier "Builtin Default Layout"
Screen "Builtin Default fbdev Screen 0"
EndSection
@@ -0,0 +1 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
@@ -0,0 +1,11 @@
KBRANCH:genericx86 = "standard/base"
KBRANCH:genericx86-64 = "standard/base"
KBRANCH:beaglebone-yocto = "standard/beaglebone"
KMACHINE:genericx86 ?= "common-pc"
KMACHINE:genericx86-64 ?= "common-pc-64"
KMACHINE:beaglebone-yocto ?= "beaglebone"
COMPATIBLE_MACHINE:genericx86 = "genericx86"
COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
@@ -0,0 +1,19 @@
KBRANCH:genericx86 = "v6.1/standard/base"
KBRANCH:genericx86-64 = "v6.1/standard/base"
KBRANCH:beaglebone-yocto = "v6.1/standard/beaglebone"
KMACHINE:genericx86 ?= "common-pc"
KMACHINE:genericx86-64 ?= "common-pc-64"
KMACHINE:beaglebone-yocto ?= "beaglebone"
SRCREV_machine:genericx86 ?= "6ec439b4b456ce929c4c07fe457b5d6a4b468e86"
SRCREV_machine:genericx86-64 ?= "6ec439b4b456ce929c4c07fe457b5d6a4b468e86"
SRCREV_machine:beaglebone-yocto ?= "423e1996694b61fbfc8ec3bf062fc6461d64fde1"
COMPATIBLE_MACHINE:genericx86 = "genericx86"
COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
LINUX_VERSION:genericx86 = "6.1.30"
LINUX_VERSION:genericx86-64 = "6.1.30"
LINUX_VERSION:beaglebone-yocto = "6.1.20"
@@ -0,0 +1,7 @@
# short-description: Create SD card image for Beaglebone
# long-description: Creates a partitioned SD card image for Beaglebone.
# Boot files are located in the first vfat partition.
part /boot --source bootimg-partition --ondisk mmcblk0 --fstype=vfat --label boot --active --align 4 --fixed-size 32 --sourceparams="loader=u-boot" --use-uuid
part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --align 4 --use-uuid
bootloader --append="console=ttyS0,115200"
@@ -0,0 +1,7 @@
# short-description: Create an EFI disk image for genericx86*
# long-description: Creates a partitioned EFI disk image for genericx86* machines
part /boot --source bootimg-efi --sourceparams="loader=${EFI_PROVIDER}" --ondisk sda --label msdos --active --align 1024
part / --source rootfs --ondisk sda --fstype=ext4 --label platform --align 1024 --use-uuid
part swap --ondisk sda --size 44 --label swap1 --fstype=swap
bootloader --ptable gpt --timeout=5 --append="rootfstype=ext4 console=ttyS0,115200 console=tty0"