From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 6997308849892884480 X-Received: by 2002:a05:651c:b1e:: with SMTP id b30mr2045538ljr.424.1629187923268; Tue, 17 Aug 2021 01:12:03 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:9109:: with SMTP id m9ls270785ljg.2.gmail; Tue, 17 Aug 2021 01:12:02 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwGy02NGpZekYUVB8DGuycovsQVwJvVbRKmnuS5j9kCrrxy7QHnDwOK7NmT1AKgMsN8eTtL X-Received: by 2002:a2e:2ac1:: with SMTP id q184mr2060407ljq.373.1629187921961; Tue, 17 Aug 2021 01:12:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1629187921; cv=none; d=google.com; s=arc-20160816; b=H68DUYJ4UU2vsHu0JAPpu5AYQgOkiM+Kv/8L5YjtjcLqj6Od722QAF/OT9bwFaTFWv YZHtVEAg7yZNuah7WCpXpCI/vcaPKnbtjRxLCl9XS6AvGrAiz/vDxy0IEC2b1Ho74gko yowstWZErLXRFuHHrV8rtBsm2Mr5kgBGh7+I7Q47PjTOWJdEcoQ9hfroUC6ZiGZwbMqt o/BnbfrD3M3N+FlKWE3rnDj+74wYg1BxBJTUVuzh6CkmGZ0moxFCiKGxfOZAPDwTZVAs 2MCfWnnoCnws8rw2Tkx24rJ6o8A+R3YGiUnE6robldl9hdJhPl4lAKhDPPsHKqsZiF2P gRHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:mime-version:user-agent :date:message-id:cc:to:subject:from; bh=+DA3c+iO6sRfF/5LcNHvUOt8w4o6dvzqLOZQys5F1jc=; b=sUxQXxgITu2a4MtNs+hHBq0Fa6pX40gADLJ7PE4SBAYg50quS7C+BFbEdYGFhmPL0N I3YE/5mdrZlMERlV3u+HmBMK8LuyMgsaSj+srXOZkvBe41Hy+r86BGPBfzcuxhFQtKIF dYDGsVGBwQNA8apc3giPl/xtHsvpUdQQcbBsxzlOvD2VNJ5XpqkMzybDd6fhqOaHwrxq bvrxaB6KczewfKOPE3JKYc0nLdxhmOobJ9wwHUa11rc2kBrIS5diyb3GSE7sOT+j5Kh9 nthwXa4BkHt2YZKbMzt1qQtrgBGsd1VYwZAAfkd6od3zvHpQknr2zN04psPgmLtPsQ+U lGAw== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from gecko.sbs.de (gecko.sbs.de. [194.138.37.40]) by gmr-mx.google.com with ESMTPS id i12si92878lfc.10.2021.08.17.01.12.01 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 17 Aug 2021 01:12:01 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) client-ip=194.138.37.40; Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jan.kiszka@siemens.com designates 194.138.37.40 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by gecko.sbs.de (8.15.2/8.15.2) with ESMTPS id 17H8C1Fd012573 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 17 Aug 2021 10:12:01 +0200 Received: from [167.87.37.135] ([167.87.37.135]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 17H8C0ms002003; Tue, 17 Aug 2021 10:12:00 +0200 From: Jan Kiszka Subject: [isar-cip-core][WIP][PATCH] Add kconfig menu To: isar-users Cc: kas-devel Message-ID: <43993e08-b055-d2f5-012e-8ededd8485e6@siemens.com> Date: Tue, 17 Aug 2021 10:12:00 +0200 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.12.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-TUID: CGNdDKJPYQao From: Jan Kiszka Use the new kas menu plugin to present available image options to the user. This also allows to model their dependencies, specifically as not all options are supported on all boards. Signed-off-by: Jan Kiszka --- Only for preview as the underlying kas feature is not yet merged. Try it out by fetching kas-container from the kas next branch and then run KAS_IMAGE_VERSION=next kas-container menu This is the first more complex layer modeled via kconfig/kas-menu. I think it nicely demonstrates the potential of this approach. Kconfig | 146 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 Kconfig diff --git a/Kconfig b/Kconfig new file mode 100644 index 0000000..72c75bf --- /dev/null +++ b/Kconfig @@ -0,0 +1,146 @@ +mainmenu "Isar core layer of the Civil Infrastructure Platform project" + +config KAS_INCLUDE_MAIN + string + default "kas-cip.yml" + +config KAS_BUILD_SYSTEM + string + default "isar" + +choice + prompt "Target board" + default TARGET_QEMU_AMD64 + +config TARGET_QEMU_AMD64 + bool "QEMU AMD64 (x86-64)" + +config TARGET_SIMATIC_IPC227E + bool "Siemens SIMATIC IPC227E" + +config TARGET_QEMU_ARM64 + bool "QEMU ARM64 (aarch64)" + +config TARGET_HIHOPE_RZG2M + bool "HopeRun HiHope-RZ/G2M" + +config TARGET_QEMU_ARM + bool "QEMU ARM (armhf)" + +config TARGET_BBB + bool "BeagleBone Black" + +config TARGET_IWG20D + bool "iWave Systems RainboW-G20D-Qseven" + +endchoice + +config KAS_INCLUDE_BOARD + string + default "kas/board/qemu-amd64.yml" if TARGET_QEMU_AMD64 + default "kas/board/simatic-ipc227e.yml" if TARGET_SIMATIC_IPC227E + default "kas/board/qemu-arm64.yml" if TARGET_QEMU_ARM64 + default "kas/board/hihope-rzg2m.yml" if TARGET_HIHOPE_RZG2M + default "kas/board/qemu-arm.yml" if TARGET_QEMU_ARM + default "kas/board/bbb.yml" if TARGET_BBB + default "kas/board/iwg20m.yml" if TARGET_IWG20D + +comment "Kernel options" + +choice + prompt "CIP kernel version" + default KERNEL_4_19 + +config KERNEL_4_4 + bool "Kernel 4.4.x-cip" + +config KERNEL_4_19 + bool "Kernel 4.19.x-cip" + +endchoice + +config KAS_INCLUDE_KERNEL + string + default "kas/opt/4.4.yml" + depends on KERNEL_4_4 + +config KERNEL_RT + bool "Real-time CIP kernel" + +config KAS_INCLUDE_KERNEL_RT + string + default "kas/opt/rt.yml" + depends on KERNEL_RT + +comment "Debian distribution options" + +choice + prompt "Debian Release" + default DEBIAN_BUSTER + +config DEBIAN_STRETCH + bool "stretch (9)" + +config DEBIAN_BUSTER + bool "buster (10)" + +config DEBIAN_BULLSEYE + bool "bullseye (11)" + +endchoice + +config KAS_INCLUDE_DEBIAN + string + default "kas/opt/stretch.yml" if DEBIAN_STRETCH + default "kas/opt/bullseye.yml" if DEBIAN_BULLSEYE + +comment "Image features" + +choice + prompt "Image formats" + default IMAGE_FLASH + +config IMAGE_FLASH + bool "Flashable image" + +config IMAGE_ARTIFACTS + bool "Separate artifacts for NFS boot" + +endchoice + +config KAS_INCLUDE_IMAGE_FORMAT + string + default "kas/opt/targz.yml" if IMAGE_ARTIFACTS && (TARGET_QEMU_AMD64 || TARGET_QEMU_ARM64 || TARGET_QEMU_ARM) + default "kas/opt/wic-targz.yml" if IMAGE_ARTIFACTS && !(TARGET_QEMU_AMD64 || TARGET_QEMU_ARM64 || TARGET_QEMU_ARM) + +config IMAGE_SECURITY + bool "Security extensions" + +config KAS_INCLUDE_SECURITY + string + default "kas/opt/security.yml" if IMAGE_SECURITY + +config IMAGE_TESTING + bool "Test extensions" + +config KAS_INCLUDE_TESTING + string + default "kas/opt/test.yml" if IMAGE_TESTING + +if IMAGE_FLASH + +config IMAGE_SWUPDATE + bool "SWUpdate support for root partition" + depends on TARGET_QEMU_AMD64 || TARGET_SIMATIC_IPC227E + +config IMAGE_SECURE_BOOT + bool "Secure boot support" + depends on TARGET_QEMU_AMD64 + +config KAS_INCLUDE_SWUPDATE_SECBOOT + string + default "kas/opt/ebg-swu.yml" if IMAGE_SWUPDATE && !IMAGE_SECURE_BOOT + default "kas/opt/ebg-secure-boot-snakeoil.yml" if !IMAGE_SWUPDATE && IMAGE_SECURE_BOOT + default "kas/opt/ebg-snakeoil-swu.yml" if IMAGE_SWUPDATE && IMAGE_SECURE_BOOT + +endif -- 2.31.1