@@ -1,3 +1,5 @@
*~
/*.patch
__pycache__
+.config.yaml*
+build/
new file mode 100644
@@ -0,0 +1,18 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+#
+# Authors:
+# Uladzimir Bely <ubely@ilbers.de>
+
+mainmenu "Isar configuration"
+
+config KAS_INCLUDE_MAIN
+ string
+ default "kas/isar.yaml"
+
+config KAS_BUILD_SYSTEM
+ string
+ default "isar"
+
+source "kas/distro/Kconfig"
+source "kas/machine/Kconfig"
new file mode 100644
@@ -0,0 +1,46 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+#
+# Authors:
+# Uladzimir Bely <ubely@ilbers.de>
+
+menu "Distro selection"
+
+choice
+ prompt "Distro selection"
+ default DEBIAN_BOOKWORM
+
+config DEBIAN_BUSTER
+ bool "Debian Buster (10)"
+
+config DEBIAN_BULLSEYE
+ bool "Debian Bullseye (11)"
+
+config DEBIAN_BOOKWORM
+ bool "Debian Bookworm (12)"
+
+config DEBIAN_SID_PORTS
+ bool "Debian Sid (unstable) with unofficial ports"
+
+config RASPIOS_BULLSEYE
+ bool "Raspi OS Bullseye (11)"
+
+config UBUNTU_FOCAL
+ bool "Ubuntu Focal (20.04)"
+
+config UBUNTU_JAMMY
+ bool "Ubuntu Jammy (22.04)"
+
+endchoice
+
+config KAS_INCLUDE_DISTRO
+ string
+ default "kas/distro/debian-buster.yaml" if DEBIAN_BUSTER
+ default "kas/distro/debian-bullseye.yaml" if DEBIAN_BULLSEYE
+ default "kas/distro/debian-bookworm.yaml" if DEBIAN_BOOKWORM
+ default "kas/distro/debian-sid-ports.yaml" if DEBIAN_SID_PORTS
+ default "kas/distro/raspios-bullseye.yaml" if RASPIOS_BULLSEYE
+ default "kas/distro/ubuntu-focal.yaml" if UBUNTU_FOCAL
+ default "kas/distro/ubuntu-jammy.yaml" if UBUNTU_JAMMY
+
+endmenu
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: debian-bookworm
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: debian-bullseye
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: debian-buster
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: debian-sid-ports
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: raspios-bullseye
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: ubuntu-focal
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+distro: ubuntu-jammy
new file mode 100644
@@ -0,0 +1,21 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+build_system: isar
+
+target:
+- isar-image-base
+
+repos:
+ isar:
+ layers:
+ meta:
+ meta-isar:
+
+bblayers_conf_header:
+ standard: |
+ BBPATH = "${TOPDIR}"
+ BBFILES ?= ""
new file mode 100644
@@ -0,0 +1,138 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+#
+# Authors:
+# Uladzimir Bely <ubely@ilbers.de>
+
+menu "Machine selection"
+
+choice
+ prompt "Machine selection"
+ default MACHINE_QEMU_AMD64
+
+config MACHINE_BANANAPI
+ bool "bananapi"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_CONTAINER_AMD64
+ bool "container-amd64"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_DE0_NANO_SOC
+ bool "de0-nano-soc"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_HIKEY
+ bool "hikey"
+ depends on DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_IMX6_SABRELITE
+ bool "imx6-sabrelite"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_NANOPI_NEO
+ bool "nanopi-neo"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_NANOPI_NEO_EFI
+ bool "nanopi-neo-efi"
+ depends on DEBIAN_BOOKWORM
+
+config MACHINE_PHIBOARD_MIRA
+ bool "phyboard-mira"
+ depends on DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_QEMU_AMD64_SB
+ bool "qemuamd64-sb"
+ depends on DEBIAN_BULLSEYE
+
+config MACHINE_QEMU_AMD64
+ bool "qemuamd64"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM || UBUNTU_FOCAL || UBUNTU_JAMMY
+
+config MACHINE_QEMU_ARM
+ bool "qemuarm"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_QEMU_ARM64
+ bool "qemuarm64"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM || UBUNTU_FOCAL || UBUNTU_JAMMY
+
+config MACHINE_QEMU_I386
+ bool "qemui386"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_QEMU_MIPSEL
+ bool "qemumipsel"
+ depends on DEBIAN_BUSTER || DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_QEMU_RISCV64
+ bool "qemuriscv64"
+ depends on DEBIAN_SID_PORTS
+
+config MACHINE_RPI_ARM_V7
+ bool "rpi-arm-v7"
+ depends on RASPIOS_BULLSEYE
+
+config MACHINE_RPI_ARM_V7L
+ bool "rpi-arm-v7l"
+ depends on RASPIOS_BULLSEYE
+
+config MACHINE_RPI_ARM
+ bool "rpi-arm"
+ depends on RASPIOS_BULLSEYE
+
+config MACHINE_RPI_ARM64_V8
+ bool "rpi-arm64-v8"
+ depends on RASPIOS_BULLSEYE
+
+config MACHINE_SIFIVE_FU540
+ bool "sifive-fu540"
+ depends on DEBIAN_SID_PORTS
+
+config MACHINE_STARFIVE_VISIONFIVE2
+ bool "starfive-visionfive2"
+ depends on DEBIAN_SID_PORTS
+
+config MACHINE_STM32MP15X
+ bool "stm32mp15x"
+ depends on DEBIAN_BULLSEYE || DEBIAN_BOOKWORM
+
+config MACHINE_VIRTUALBOX
+ bool "virtualbox"
+ depends on DEBIAN_BULLSEYE
+
+config MACHINE_VMWARE
+ bool "vmware"
+ depends on DEBIAN_BULLSEYE
+
+endchoice
+
+config KAS_INCLUDE_MACHINE
+ string
+ default "kas/machine/bananapi.yaml" if MACHINE_BANANAPI
+ 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
+ default "kas/machine/imx6-sabrelite" if MACHINE_IMX6_SABRELITE
+ default "kas/machine/nanopi-neo" if MACHINE_NANOPI_NEO
+ default "kas/machine/nanopi-neo-efi" if MACHINE_NANOPI_NEO_EFI
+ default "kas/machine/phyboard-mira" if MACHINE_PHIBOARD_MIRA
+ default "kas/machine/qemuamd64-sb.yaml" if MACHINE_QEMU_AMD64_SB
+ default "kas/machine/qemuamd64.yaml" if MACHINE_QEMU_AMD64
+ default "kas/machine/qemuarm.yaml" if MACHINE_QEMU_ARM
+ default "kas/machine/qemuarm64.yaml" if MACHINE_QEMU_ARM64
+ default "kas/machine/qemui386.yaml" if MACHINE_QEMU_I386
+ default "kas/machine/qemumipsel.yaml" if MACHINE_QEMU_MIPSEL
+ default "kas/machine/qemuriscv64.yaml" if MACHINE_QEMU_RISCV64
+ default "kas/machine/rpi-arm-v7.yaml" if MACHINE_RPI_ARM_V7
+ default "kas/machine/rpi-arm-v7l.yaml" if MACHINE_RPI_ARM_V7L
+ default "kas/machine/rpi-arm.yaml" if MACHINE_RPI_ARM
+ default "kas/machine/rpi-arm64-v8.yaml" if MACHINE_RPI_ARM64_V8
+ default "kas/machine/sifive-fu540.yaml" if MACHINE_SIFIVE_FU540
+ default "kas/machine/starfive-visionfive2.yaml" if MACHINE_STARFIVE_VISIONFIVE2
+ default "kas/machine/stm32mp15x.yaml" if MACHINE_STM32MP15X
+ default "kas/machine/virtualbox.yaml" if MACHINE_VIRTUALBOX
+ default "kas/machine/vmware.yaml" if MACHINE_VMWARE
+
+endmenu
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: bananapi
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: container-amd64
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: de0-nano-soc
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: hikey
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: imx6-sabrelite
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: nanopi-neo-efi
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: nanopi-neo
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: phyboard-mira
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemuamd64-sb
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemuamd64
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemuarm
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemuarm64
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemui386
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemumipsel
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: qemuriscv64
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: rpi-arm-v7
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: rpi-arm-v7l
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: rpi-arm
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: rpi-arm64-v8
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: sifive-fu540
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: starfive-visionfive2
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: stm32mp15x
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: virtualbox
new file mode 100644
@@ -0,0 +1,7 @@
+# This software is a part of ISAR.
+# Copyright (C) 2023 ilbers GmbH
+
+header:
+ version: 14
+
+machine: vmware
Create required Kconfig files and appropriate YAML configuration fragments for supporting initial build configuragion via `kas-container menu`. Since Isar does not support any possible combination of machines and distros, there are particular dependencies between them exist. User should select the distro first and after that it would be possible to choose the board this distro supports. Signed-off-by: Uladzimir Bely <ubely@ilbers.de> --- .gitignore | 2 + Kconfig | 18 ++++ kas/distro/Kconfig | 46 +++++++++ kas/distro/debian-bookworm.yaml | 7 ++ kas/distro/debian-bullseye.yaml | 7 ++ kas/distro/debian-buster.yaml | 7 ++ kas/distro/debian-sid-ports.yaml | 7 ++ kas/distro/raspios-bullseye.yaml | 7 ++ kas/distro/ubuntu-focal.yaml | 7 ++ kas/distro/ubuntu-jammy.yaml | 7 ++ kas/isar.yaml | 21 ++++ kas/machine/Kconfig | 138 ++++++++++++++++++++++++++ kas/machine/bananapi.yaml | 7 ++ kas/machine/container-amd64.yaml | 7 ++ kas/machine/de0-nano-soc.yaml | 7 ++ kas/machine/hikey.yaml | 7 ++ kas/machine/imx6-sabrelite.yaml | 7 ++ kas/machine/nanopi-neo-efi.yaml | 7 ++ kas/machine/nanopi-neo.yaml | 7 ++ kas/machine/phyboard-mira.yaml | 7 ++ kas/machine/qemuamd64-sb.yaml | 7 ++ kas/machine/qemuamd64.yaml | 7 ++ kas/machine/qemuarm.yaml | 7 ++ kas/machine/qemuarm64.yaml | 7 ++ kas/machine/qemui386.yaml | 7 ++ kas/machine/qemumipsel.yaml | 7 ++ kas/machine/qemuriscv64.yaml | 7 ++ kas/machine/rpi-arm-v7.yaml | 7 ++ kas/machine/rpi-arm-v7l.yaml | 7 ++ kas/machine/rpi-arm.yaml | 7 ++ kas/machine/rpi-arm64-v8.yaml | 7 ++ kas/machine/sifive-fu540.yaml | 7 ++ kas/machine/starfive-visionfive2.yaml | 7 ++ kas/machine/stm32mp15x.yaml | 7 ++ kas/machine/virtualbox.yaml | 7 ++ kas/machine/vmware.yaml | 7 ++ 36 files changed, 442 insertions(+) create mode 100644 Kconfig create mode 100644 kas/distro/Kconfig create mode 100644 kas/distro/debian-bookworm.yaml create mode 100644 kas/distro/debian-bullseye.yaml create mode 100644 kas/distro/debian-buster.yaml create mode 100644 kas/distro/debian-sid-ports.yaml create mode 100644 kas/distro/raspios-bullseye.yaml create mode 100644 kas/distro/ubuntu-focal.yaml create mode 100644 kas/distro/ubuntu-jammy.yaml create mode 100644 kas/isar.yaml create mode 100644 kas/machine/Kconfig create mode 100644 kas/machine/bananapi.yaml create mode 100644 kas/machine/container-amd64.yaml create mode 100644 kas/machine/de0-nano-soc.yaml create mode 100644 kas/machine/hikey.yaml create mode 100644 kas/machine/imx6-sabrelite.yaml create mode 100644 kas/machine/nanopi-neo-efi.yaml create mode 100644 kas/machine/nanopi-neo.yaml create mode 100644 kas/machine/phyboard-mira.yaml create mode 100644 kas/machine/qemuamd64-sb.yaml create mode 100644 kas/machine/qemuamd64.yaml create mode 100644 kas/machine/qemuarm.yaml create mode 100644 kas/machine/qemuarm64.yaml create mode 100644 kas/machine/qemui386.yaml create mode 100644 kas/machine/qemumipsel.yaml create mode 100644 kas/machine/qemuriscv64.yaml create mode 100644 kas/machine/rpi-arm-v7.yaml create mode 100644 kas/machine/rpi-arm-v7l.yaml create mode 100644 kas/machine/rpi-arm.yaml create mode 100644 kas/machine/rpi-arm64-v8.yaml create mode 100644 kas/machine/sifive-fu540.yaml create mode 100644 kas/machine/starfive-visionfive2.yaml create mode 100644 kas/machine/stm32mp15x.yaml create mode 100644 kas/machine/virtualbox.yaml create mode 100644 kas/machine/vmware.yaml