From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7321338948658135040 X-Received: by 2002:a05:6870:c6a2:b0:205:c644:d401 with SMTP id cv34-20020a056870c6a200b00205c644d401mr3287409oab.85.1704632062051; Sun, 07 Jan 2024 04:54:22 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6870:7d81:b0:205:dad5:7ff1 with SMTP id oq1-20020a0568707d8100b00205dad57ff1ls575243oab.0.-pod-prod-04-us; Sun, 07 Jan 2024 04:54:21 -0800 (PST) X-Google-Smtp-Source: AGHT+IH2ZYEfG3eiUMo3SascJYbCo364Z4Knt/F2qI7fPsCHQbEWKuZQf2WpjmxHrP35ouvoPuiz X-Received: by 2002:a05:6870:41cf:b0:205:c7cd:198b with SMTP id z15-20020a05687041cf00b00205c7cd198bmr3392018oac.101.1704632061291; Sun, 07 Jan 2024 04:54:21 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1704632061; cv=none; d=google.com; s=arc-20160816; b=H6zFOvnDKa4O2jA13b2u97x2lwRugBB4BcQyDS22RIpBSp3EArpzDMv6yUR5Sa26Nz GgwVz4z0+x7zlXHK89WxwzHYrlxOlDkHAnxsTKklLbFuYo90Puk4iD8F7TK+e4MnJa8g NbgWyTFFGTaAVEktuUHJxZDZCJndtb+ICAYBA3XaL1py+z5ssQyKJWV3J/lAnYdiRI7G OyKqYNubUmJi7uczwx4vzT9hUTvdHSgUP/fes9mjUc7BE03lu46xyaLi29gWduxQVLt9 62JIjg7aDS1DTvw7MuqBOqnfoRx8WIxw2pmS2h9gKu4hv40afi+d4bCoOJ07zvGLVUt8 fRFA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:references :in-reply-to:message-id:date:subject:cc:to:from:dkim-signature; bh=di4h7+Uk90SSiJGYilF+LmiIQ3nnceIu+1SlilDwOeE=; fh=IlHmq1Kl6WDqsYIcQXzwFqB72MHx6soicqMlhBagVr4=; b=ZPOTQJc/5ej+5ldjQjJH7LhuioiYB4JS+xulifakuM+bURaR0hlQ5YxhPjTR6IjyiF mnWM1QbaZBEO0iFqiZAVYrLqkDWNu3P28gjFfiDqgWHCe9VFmGguFwDdhuAqtfsz+6bt prxTVfj+mzQyVw0oiD2voKO+0DeWuVAqRUdDoCeycjJ1TMebNRrpfjqCZW3gDzii3bA7 c/0xN7ZoBLw1ykNfKqfoY+sSsVwzt/sCO157jxQeGZS0s6QIBEjh7rwcgwhshf5cRt0/ GgjhR9BfpUh7TTB3HeW2HYz5tOikb0x6zjTOCr6sqPEQNCBWU0kEeDuf/1vQ6H8EsRQe cVHQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Id9g9ajo; spf=pass (google.com: domain of fm-294854-202401071254196ca86a7f85fb3876d8-0td3dj@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) smtp.mailfrom=fm-294854-202401071254196ca86a7f85fb3876d8-0td3dj@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Return-Path: Received: from mta-65-226.siemens.flowmailer.net (mta-65-226.siemens.flowmailer.net. [185.136.65.226]) by gmr-mx.google.com with ESMTPS id n7-20020a17090a9f0700b0028c8030d70esi475294pjp.0.2024.01.07.04.54.21 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Sun, 07 Jan 2024 04:54:21 -0800 (PST) Received-SPF: pass (google.com: domain of fm-294854-202401071254196ca86a7f85fb3876d8-0td3dj@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) client-ip=185.136.65.226; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm1 header.b=Id9g9ajo; spf=pass (google.com: domain of fm-294854-202401071254196ca86a7f85fb3876d8-0td3dj@rts-flowmailer.siemens.com designates 185.136.65.226 as permitted sender) smtp.mailfrom=fm-294854-202401071254196ca86a7f85fb3876d8-0td3dj@rts-flowmailer.siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: by mta-65-226.siemens.flowmailer.net with ESMTPSA id 202401071254196ca86a7f85fb3876d8 for ; Sun, 07 Jan 2024 13:54:19 +0100 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm1; d=siemens.com; i=jan.kiszka@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc:References:In-Reply-To; bh=di4h7+Uk90SSiJGYilF+LmiIQ3nnceIu+1SlilDwOeE=; b=Id9g9ajow85ze8VT8gdOLsCyDQnF9zI36yw5dFDkqiELjsvTGKf29f5LUn6dSnjicJAqNr Dur63ykr/OsTFuMLR7xmU3+Lc0zNJeMPPJJ44H7b8htFWCP3C0pbvLcN26zZgoXYInqpFiXz r0CgIgidcY8R1GPhQFl60+5jijh9g=; From: Jan Kiszka To: isar-users Cc: Nishanth Menon Subject: [PATCH 8/9] Add support for the BeaglePlay board Date: Sun, 7 Jan 2024 13:54:15 +0100 Message-Id: In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-294854:519-21489:flowmailer X-TUID: KKmD2IwYgKXz From: Jan Kiszka This creates a minimal image for the BeaglePlay board [1], using UEFI as boot method. That is requiring some extra work so that the image can also be used on SD cards: The ROM loader only supports legacy DOS partition tables, but UEFI needs GPT. We address this by creating a hybrid image with both partition tables in place, first allowing wic to generate a GPT table, then using fdisk to add a DOS partition entry at least for the UEFI boot partition. [1] https://www.beagleboard.org/boards/beagleplay Signed-off-by: Jan Kiszka --- kas/machine/Kconfig | 5 ++++ kas/machine/beagleplay.yaml | 9 +++++++ .../imagetypes_beagleplay_hybrid.bbclass | 25 +++++++++++++++++++ meta-isar/conf/machine/beagleplay.conf | 24 ++++++++++++++++++ meta-isar/conf/mc.conf | 1 + .../conf/multiconfig/beagleplay-bookworm.conf | 7 ++++++ .../lib/wic/canned-wks/beagleplay.wks.in | 11 ++++++++ 7 files changed, 82 insertions(+) create mode 100644 kas/machine/beagleplay.yaml create mode 100644 meta-isar/classes/imagetypes_beagleplay_hybrid.bbclass create mode 100644 meta-isar/conf/machine/beagleplay.conf create mode 100644 meta-isar/conf/multiconfig/beagleplay-bookworm.conf create mode 100644 meta-isar/scripts/lib/wic/canned-wks/beagleplay.wks.in diff --git a/kas/machine/Kconfig b/kas/machine/Kconfig index d0e3963a..b06cddf1 100644 --- a/kas/machine/Kconfig +++ b/kas/machine/Kconfig @@ -14,6 +14,10 @@ config MACHINE_BANANAPI bool "bananapi" depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM +config MACHINE_BEAGLEPLAY + bool "beagleplay" + depends on DEBIAN_BOOKWORM + config MACHINE_CONTAINER_AMD64 bool "container-amd64" depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM @@ -111,6 +115,7 @@ endchoice config KAS_INCLUDE_MACHINE string default "kas/machine/bananapi.yaml" if MACHINE_BANANAPI + default "kas/machine/beagleplay.yaml" if MACHINE_BEAGLEPLAY default "kas/machine/container-amd64.yaml" if MACHINE_CONTAINER_AMD64 default "kas/machine/de0-nano-soc.yaml" if MACHINE_DE0_NANO_SOC default "kas/machine/hikey.yaml" if MACHINE_HIKEY diff --git a/kas/machine/beagleplay.yaml b/kas/machine/beagleplay.yaml new file mode 100644 index 00000000..81fc4c32 --- /dev/null +++ b/kas/machine/beagleplay.yaml @@ -0,0 +1,9 @@ +# This software is a part of ISAR. +# Copyright (c) Siemens AG, 2023 +# +# SPDX-License-Identifier: MIT + +header: + version: 14 + +machine: beagleplay diff --git a/meta-isar/classes/imagetypes_beagleplay_hybrid.bbclass b/meta-isar/classes/imagetypes_beagleplay_hybrid.bbclass new file mode 100644 index 00000000..00631082 --- /dev/null +++ b/meta-isar/classes/imagetypes_beagleplay_hybrid.bbclass @@ -0,0 +1,25 @@ +# +# Copyright (c) Siemens AG, 2023 +# +# SPDX-License-Identifier: MIT + +IMAGE_TYPEDEP:beagleplay_hybrid = "wic" + +IMAGER_INSTALL:beagleplay_hybrid += "gdisk fdisk bmap-tools" + +IMAGE_CMD:beagleplay_hybrid() { + ln -sf "${IMAGE_FULLNAME}.wic" "${IMAGE_FILE_HOST}" + ${SUDO_CHROOT} sh -c ' + sgdisk "${IMAGE_FILE_CHROOT}" --hybrid 1:EE + fdisk "${IMAGE_FILE_CHROOT}" << EOF +M +t +1 +c +a +1 +w +q +EOF + bmaptool create ${IMAGE_FILE_CHROOT} -o ${PP_DEPLOY}/${IMAGE_FULLNAME}.wic.bmap' +} diff --git a/meta-isar/conf/machine/beagleplay.conf b/meta-isar/conf/machine/beagleplay.conf new file mode 100644 index 00000000..8b1a088c --- /dev/null +++ b/meta-isar/conf/machine/beagleplay.conf @@ -0,0 +1,24 @@ +# +# Copyright (c) Siemens AG, 2023 +# +# SPDX-License-Identifier: MIT + +DISTRO_ARCH ?= "arm64" + +KERNEL_NAME ?= "mainline" + +DTB_BEAGLEPLAY = "k3-am625-beagleplay.dtb" +DTB_FILES ?= "${DTB_BEAGLEPLAY}" + +IMAGE_CLASSES += "imagetypes_beagleplay_hybrid" +IMAGE_FSTYPES ?= "wic beagleplay_hybrid" +WKS_FILE ?= "beagleplay.wks.in" +IMAGER_INSTALL += "${SYSTEMD_BOOTLOADER_INSTALL} u-boot-beagleplay" +IMAGER_BUILD_DEPS += "u-boot-beagleplay" + +IMAGE_BOOT_FILES = " \ + /usr/lib/u-boot/beagleplay/tiboot3-am62x-gp-evm.bin;tiboot3.bin \ + /usr/lib/u-boot/beagleplay/tispl.bin_unsigned;tispl.bin \ + /usr/lib/u-boot/beagleplay/u-boot.img_unsigned;u-boot.img" + +IMAGE_PREINSTALL += "firmware-ti-connectivity" diff --git a/meta-isar/conf/mc.conf b/meta-isar/conf/mc.conf index d16f54b5..f1fb50c6 100644 --- a/meta-isar/conf/mc.conf +++ b/meta-isar/conf/mc.conf @@ -28,6 +28,7 @@ BBMULTICONFIG = " \ qemuriscv64-sid \ bananapi-buster \ bananapi-bullseye \ + beagleplay-bookworm \ de0-nano-soc-buster \ de0-nano-soc-bullseye \ hikey-bullseye \ diff --git a/meta-isar/conf/multiconfig/beagleplay-bookworm.conf b/meta-isar/conf/multiconfig/beagleplay-bookworm.conf new file mode 100644 index 00000000..1720cf5d --- /dev/null +++ b/meta-isar/conf/multiconfig/beagleplay-bookworm.conf @@ -0,0 +1,7 @@ +# +# Copyright (c) Siemens AG, 2023 +# +# SPDX-License-Identifier: MIT + +MACHINE ?= "beagleplay" +DISTRO ?= "debian-bookworm" diff --git a/meta-isar/scripts/lib/wic/canned-wks/beagleplay.wks.in b/meta-isar/scripts/lib/wic/canned-wks/beagleplay.wks.in new file mode 100644 index 00000000..4a437e89 --- /dev/null +++ b/meta-isar/scripts/lib/wic/canned-wks/beagleplay.wks.in @@ -0,0 +1,11 @@ +# +# Copyright (c) Siemens AG, 2023 +# +# SPDX-License-Identifier: MIT + +part /boot/firmware --source bootimg-partition --fstype=vfat --label firmware --active --align 1024 --size 16M --overhead-factor 1 --extra-space 0 --use-uuid +part /boot --source bootimg-efi-isar --sourceparams "loader=systemd-boot,dtb=${DTB_BEAGLEPLAY}" --label efi --part-type EF00 --align 1024 --use-uuid + +part / --source rootfs --fstype ext4 --mkfs-extraopts "-T default" --label platform --align 1024 --use-uuid --exclude-path boot/ + +bootloader --ptable gpt --timeout=0 --append "rootwait rw" -- 2.35.3