public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation
@ 2022-05-04  5:41 Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 1/7] image: Introduce template support for imagetypes Anton Mikanovich
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

Rebuild UBI image generation implementation to support any count of
targets with different settings. This also will allow to build the same
isar-image-base image for both UBI and non-UBI targets.
Add correct UBI and UBIFS layouts for phyBOARD-Mira after that.

To be able to flash phyBOARD-Mira with only Isar outputs add also kernel
and Barebox bootloader recipes.

Changes since v2:
- rebase on the latest imagetypes patchset

Changes since v1:
- rebase on the latest imagetypes patchset
- make barebox generic

Anton Mikanovich (7):
  image: Introduce template support for imagetypes
  ubi: Move imager-related defines to image bbclasses
  ubi: Remove isar-image-ubi
  ubi: Split UBI configs for phyboard-mira and imx6-sabrelite
  conf: Remove machine-specific defines from multiconfig
  meta-isar: Add linux-phy kernel
  meta: Add barebox bootloader support

 meta-isar/conf/machine/phyboard-mira.conf     | 22 +++++--
 .../multiconfig/phyboard-mira-bullseye.conf   |  6 --
 .../recipes-bsp/barebox/barebox_2022.02.0.bb  | 13 ++++
 ...1-of_dump-Add-a-simple-node-check-up.patch | 61 +++++++++++++++++++
 .../barebox/files/phytec-mira-env/bin/far     | 14 +++++
 .../bin/rauc_flash_nand_from_mmc              | 10 +++
 .../bin/rauc_flash_nand_from_tftp             | 10 +++
 .../files/phytec-mira-env/bin/rauc_init_nand  | 17 ++++++
 .../barebox/files/phytec-mira-env/boot/initrd |  9 +++
 .../barebox/files/phytec-mira-env/boot/mmc    | 14 +++++
 .../barebox/files/phytec-mira-env/boot/nand   | 16 +++++
 .../barebox/files/phytec-mira-env/boot/net    | 21 +++++++
 .../barebox/files/phytec-mira-env/boot/spi    |  7 +++
 .../files/phytec-mira-env/boot/system0        | 16 +++++
 .../files/phytec-mira-env/boot/system1        | 16 +++++
 .../files/phytec-mira-env/config-expansions   | 28 +++++++++
 .../phytec-mira-env/expansions/dt-overlays    | 14 +++++
 .../expansions/imx6-phytec-check-bus-nodepath |  7 +++
 .../expansions/imx6qdl-mira-enable-lvds       |  2 +
 .../expansions/imx6qdl-mira-peb-eval-01       |  3 +
 .../expansions/imx6qdl-nunki-enable-lvds      |  2 +
 .../expansions/imx6qdl-phytec-lcd             |  4 ++
 .../imx6qdl-phytec-lcd-018-peb-av-02          |  3 +
 .../imx6qdl-phytec-lcd-018-peb-av-02-res      |  3 +
 .../expansions/imx6qdl-phytec-lcd-res         |  4 ++
 .../expansions/imx6qdl-phytec-peb-wlbt-05     |  7 +++
 .../files/phytec-mira-env/nv/allow_color      |  1 +
 .../files/phytec-mira-env/nv/boot.default     |  1 +
 .../nv/bootchooser.state_prefix               |  1 +
 .../nv/bootchooser.system0.boot               |  1 +
 .../nv/bootchooser.system1.boot               |  1 +
 .../phytec-mira-env/nv/bootchooser.targets    |  1 +
 .../files/phytec-mira-env/nv/dev.eth0.ipaddr  |  1 +
 .../phytec-mira-env/nv/dev.eth0.linux.devname |  1 +
 .../files/phytec-mira-env/nv/dev.eth0.mode    |  1 +
 .../files/phytec-mira-env/nv/dev.eth0.netmask |  1 +
 .../phytec-mira-env/nv/dev.eth0.serverip      |  1 +
 .../files/phytec-mira-env/nv/dhcp.vendor_id   |  1 +
 .../phytec-mira-env/nv/linux.bootargs.base    |  1 +
 .../phytec-mira-env/nv/linux.bootargs.fb      |  1 +
 .../phytec-mira-env/nv/linux.bootargs.rootfs  |  1 +
 .../files/phytec-mira-env/nv/net.gateway      |  1 +
 .../files/phytec-mira-env/nv/overlays.select  |  0
 .../fitimage.its.tmpl                         |  0
 .../ubinize.cfg.tmpl                          |  0
 .../recipes-core/images/isar-image-ubi.bb     | 27 --------
 .../images/phyboard-mira/ubinize.cfg.tmpl     | 26 ++++++++
 ...bsinstall-fix-installing-DT-overlays.patch | 30 +++++++++
 .../linux/linux-phy_5.10.76-phy4.bb           | 14 +++++
 meta/classes/image.bbclass                    | 17 ++++++
 meta/classes/imagetypes.bbclass               | 14 +++++
 meta/recipes-bsp/barebox/barebox.inc          | 55 +++++++++++++++++
 .../barebox/files/defaultenv.cfg.tmpl         |  5 ++
 meta/recipes-bsp/barebox/files/rules.tmpl     | 45 ++++++++++++++
 .../barebox/files/version.cfg.tmpl            |  2 +
 testsuite/citest.py                           |  4 +-
 56 files changed, 544 insertions(+), 40 deletions(-)
 create mode 100644 meta-isar/recipes-bsp/barebox/barebox_2022.02.0.bb
 create mode 100644 meta-isar/recipes-bsp/barebox/files/0001-of_dump-Add-a-simple-node-check-up.patch
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/far
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_mmc
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_tftp
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_init_nand
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/initrd
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/mmc
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/nand
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/net
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/spi
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system0
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system1
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/config-expansions
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/dt-overlays
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6-phytec-check-bus-nodepath
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-enable-lvds
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-peb-eval-01
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-nunki-enable-lvds
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02-res
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-res
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-peb-wlbt-05
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/allow_color
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/boot.default
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.state_prefix
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system0.boot
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system1.boot
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.targets
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.ipaddr
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.linux.devname
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.mode
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.netmask
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.serverip
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dhcp.vendor_id
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.base
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.fb
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.rootfs
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/net.gateway
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/overlays.select
 rename meta-isar/recipes-core/images/{files => imx6-sabrelite}/fitimage.its.tmpl (100%)
 rename meta-isar/recipes-core/images/{files => imx6-sabrelite}/ubinize.cfg.tmpl (100%)
 delete mode 100644 meta-isar/recipes-core/images/isar-image-ubi.bb
 create mode 100644 meta-isar/recipes-core/images/phyboard-mira/ubinize.cfg.tmpl
 create mode 100644 meta-isar/recipes-kernel/linux/files/0001-dtbsinstall-fix-installing-DT-overlays.patch
 create mode 100644 meta-isar/recipes-kernel/linux/linux-phy_5.10.76-phy4.bb
 create mode 100644 meta/recipes-bsp/barebox/barebox.inc
 create mode 100644 meta/recipes-bsp/barebox/files/defaultenv.cfg.tmpl
 create mode 100755 meta/recipes-bsp/barebox/files/rules.tmpl
 create mode 100644 meta/recipes-bsp/barebox/files/version.cfg.tmpl

-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 1/7] image: Introduce template support for imagetypes
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 2/7] ubi: Move imager-related defines to image bbclasses Anton Mikanovich
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

Provide SRC_URI, TEMPLATE_FILES and TEMPLATE_VARS variables defines for
supporting per-imagetype templates support.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta/classes/image.bbclass | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 26b1b0d..0246ad3 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -232,6 +232,17 @@ python() {
         d.delVarFlag('IMAGE_CMD_' + bt_clean, 'func')
         task_deps = d.getVarFlag('IMAGE_CMD_' + bt_clean, 'depends')
 
+        image_src = localdata.getVar('IMAGE_SRC_URI_' + bt_clean)
+        if image_src:
+            d.appendVar("SRC_URI", ' ' + image_src)
+
+        image_tmpl_files = localdata.getVar('IMAGE_TEMPLATE_FILES_' + bt_clean)
+        image_tmpl_vars = localdata.getVar('IMAGE_TEMPLATE_VARS_' + bt_clean)
+        if image_tmpl_files:
+            d.appendVar("TEMPLATE_FILES", ' ' + image_tmpl_files)
+        if image_tmpl_vars:
+            d.appendVar("TEMPLATE_VARS", ' ' + image_tmpl_vars)
+
         # add conversions
         conversion_depends = set()
         rm_images = set()
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 2/7] ubi: Move imager-related defines to image bbclasses
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 1/7] image: Introduce template support for imagetypes Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 3/7] ubi: Remove isar-image-ubi Anton Mikanovich
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

To be able to use some default deploy paths of kernel, initrd and dtb
in any image move these declarations into image bbclass.
The same done with ubifs and fit image deploy paths moving default
ones to imagetypes bbclass.
Also move template-related variables to imagetypes bbclass because they
are only used for imager.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta-isar/recipes-core/images/isar-image-ubi.bb | 14 --------------
 meta/classes/image.bbclass                      |  6 ++++++
 meta/classes/imagetypes.bbclass                 | 14 ++++++++++++++
 3 files changed, 20 insertions(+), 14 deletions(-)

diff --git a/meta-isar/recipes-core/images/isar-image-ubi.bb b/meta-isar/recipes-core/images/isar-image-ubi.bb
index 8c70c1f..b01ecff 100644
--- a/meta-isar/recipes-core/images/isar-image-ubi.bb
+++ b/meta-isar/recipes-core/images/isar-image-ubi.bb
@@ -11,17 +11,3 @@ LICENSE = "gpl-2.0"
 LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
 
 inherit image
-
-SRC_URI += "file://ubinize.cfg.tmpl \
-            file://fitimage.its.tmpl"
-
-TEMPLATE_VARS = "KERNEL_IMG INITRD_IMG DTB_IMG UBIFS_IMG FIT_IMG"
-TEMPLATE_FILES = "ubinize.cfg.tmpl fitimage.its.tmpl"
-
-KERNEL_IMG = "${PP_DEPLOY}/${KERNEL_IMAGE}"
-INITRD_IMG = "${PP_DEPLOY}/${INITRD_IMAGE}"
-# only one dtb file supported, pick the first
-DTB_IMG = "${PP_DEPLOY}/${@(d.getVar('DTB_FILES').split() or [''])[0]}"
-
-UBIFS_IMG = "${PP_DEPLOY}/${IMAGE_FULLNAME}.ubifs"
-FIT_IMG = "${PP_DEPLOY}/${IMAGE_FULLNAME}.fit"
diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass
index 0246ad3..aa6c510 100644
--- a/meta/classes/image.bbclass
+++ b/meta/classes/image.bbclass
@@ -328,6 +328,12 @@ devtmpfs	/dev		devtmpfs	mode=0755,nosuid	0	0
 EOF
 }
 
+# Default kernel, initrd and dtb image deploy paths (inside imager)
+KERNEL_IMG = "${PP_DEPLOY}/${KERNEL_IMAGE}"
+INITRD_IMG = "${PP_DEPLOY}/${INITRD_IMAGE}"
+# only one dtb file supported, pick the first
+DTB_IMG = "${PP_DEPLOY}/${@(d.getVar('DTB_FILES').split() or [''])[0]}"
+
 do_copy_boot_files[dirs] = "${DEPLOY_DIR_IMAGE}"
 do_copy_boot_files[lockfiles] += "${DEPLOY_DIR_IMAGE}/isar.lock"
 do_copy_boot_files() {
diff --git a/meta/classes/imagetypes.bbclass b/meta/classes/imagetypes.bbclass
index 07ad0cd..2838c96 100644
--- a/meta/classes/imagetypes.bbclass
+++ b/meta/classes/imagetypes.bbclass
@@ -39,6 +39,13 @@ MKIMAGE_ARGS ??= ""
 FIT_IMAGE_SOURCE ??= "fitimage.its"
 IMAGER_INSTALL_fit += "u-boot-tools device-tree-compiler"
 
+IMAGE_SRC_URI_fit = "file://${FIT_IMAGE_SOURCE}.tmpl"
+IMAGE_TEMPLATE_FILES_fit = "${FIT_IMAGE_SOURCE}.tmpl"
+IMAGE_TEMPLATE_VARS_fit = "KERNEL_IMG INITRD_IMG DTB_IMG"
+
+# Default fit image deploy path (inside imager)
+FIT_IMG ?= "${PP_DEPLOY}/${IMAGE_FULLNAME}.fit"
+
 IMAGE_CMD_fit() {
     if [ ! -e "${WORKDIR}/${FIT_IMAGE_SOURCE}" ]; then
         die "FIT_IMAGE_SOURCE does not contain fitimage source file"
@@ -53,6 +60,9 @@ IMAGE_CMD_fit[depends] = "${PN}:do_transform_template"
 IMAGER_INSTALL_ubifs += "mtd-utils"
 IMAGE_CMD_REQUIRED_ARGS_ubifs = "MKUBIFS_ARGS"
 
+# Default UBIFS image deploy path (inside imager)
+UBIFS_IMG ?= "${PP_DEPLOY}/${IMAGE_FULLNAME}.ubifs"
+
 # glibc bug 23960 https://sourceware.org/bugzilla/show_bug.cgi?id=23960
 # should not use QEMU on armhf target with mkfs.ubifs < v2.1.3
 THIS_ISAR_CROSS_COMPILE := "${ISAR_CROSS_COMPILE}"
@@ -68,6 +78,10 @@ IMAGER_INSTALL_ubi += "mtd-utils"
 IMAGE_CMD_REQUIRED_ARGS_ubi = "UBINIZE_ARGS"
 UBINIZE_CFG ??= "ubinize.cfg"
 
+IMAGE_SRC_URI_ubi = "file://${UBINIZE_CFG}.tmpl"
+IMAGE_TEMPLATE_FILES_ubi = "${UBINIZE_CFG}.tmpl"
+IMAGE_TEMPLATE_VARS_ubi = "KERNEL_IMG INITRD_IMG DTB_IMG UBIFS_IMG FIT_IMG"
+
 IMAGE_CMD_ubi() {
     if [ ! -e "${WORKDIR}/${UBINIZE_CFG}" ]; then
         die "UBINIZE_CFG does not contain ubinize config file."
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 3/7] ubi: Remove isar-image-ubi
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 1/7] image: Introduce template support for imagetypes Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 2/7] ubi: Move imager-related defines to image bbclasses Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 4/7] ubi: Split UBI configs for phyboard-mira and imx6-sabrelite Anton Mikanovich
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

There are no more differencies between it and isar-image-base, so
there is also no more reasons to have both.
isar-image-base should be used for all the cases.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta-isar/recipes-core/images/isar-image-ubi.bb | 13 -------------
 testsuite/citest.py                             |  4 ++--
 2 files changed, 2 insertions(+), 15 deletions(-)
 delete mode 100644 meta-isar/recipes-core/images/isar-image-ubi.bb

diff --git a/meta-isar/recipes-core/images/isar-image-ubi.bb b/meta-isar/recipes-core/images/isar-image-ubi.bb
deleted file mode 100644
index b01ecff..0000000
--- a/meta-isar/recipes-core/images/isar-image-ubi.bb
+++ /dev/null
@@ -1,13 +0,0 @@
-# UBI image recipe
-#
-# This software is a part of ISAR.
-# Copyright (C) Siemens AG, 2019
-#
-# SPDX-License-Identifier: MIT
-
-DESCRIPTION = "UBI Isar image"
-
-LICENSE = "gpl-2.0"
-LIC_FILES_CHKSUM = "file://${LAYERDIR_core}/licenses/COPYING.GPLv2;md5=751419260aa954499f7abaabaa882bbe"
-
-inherit image
diff --git a/testsuite/citest.py b/testsuite/citest.py
index 69c66b1..d92d602 100755
--- a/testsuite/citest.py
+++ b/testsuite/citest.py
@@ -139,8 +139,8 @@ class NoCrossTest(CIBaseTest):
             'mc:qemuamd64-bullseye:isar-initramfs',
             'mc:qemumipsel-buster:isar-image-base',
             'mc:qemumipsel-bullseye:isar-image-base',
-            'mc:imx6-sabrelite-bullseye:isar-image-ubi',
-            'mc:phyboard-mira-bullseye:isar-image-ubi',
+            'mc:imx6-sabrelite-bullseye:isar-image-base',
+            'mc:phyboard-mira-bullseye:isar-image-base',
             'mc:hikey-bullseye:isar-image-base',
             'mc:virtualbox-bullseye:isar-image-base',
             'mc:bananapi-bullseye:isar-image-base',
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 4/7] ubi: Split UBI configs for phyboard-mira and imx6-sabrelite
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
                   ` (2 preceding siblings ...)
  2022-05-04  5:41 ` [PATCH v3 3/7] ubi: Remove isar-image-ubi Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 5/7] conf: Remove machine-specific defines from multiconfig Anton Mikanovich
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

Split UBI image configurations for old SABRE Lite i.MX6 target and new
phyBOARD-Mira target to be able to generate images with different
layouts.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta-isar/conf/machine/phyboard-mira.conf     |  9 ++++---
 .../fitimage.its.tmpl                         |  0
 .../ubinize.cfg.tmpl                          |  0
 .../images/phyboard-mira/ubinize.cfg.tmpl     | 26 +++++++++++++++++++
 4 files changed, 31 insertions(+), 4 deletions(-)
 rename meta-isar/recipes-core/images/{files => imx6-sabrelite}/fitimage.its.tmpl (100%)
 rename meta-isar/recipes-core/images/{files => imx6-sabrelite}/ubinize.cfg.tmpl (100%)
 create mode 100644 meta-isar/recipes-core/images/phyboard-mira/ubinize.cfg.tmpl

diff --git a/meta-isar/conf/machine/phyboard-mira.conf b/meta-isar/conf/machine/phyboard-mira.conf
index 0c6d29a..a2e7150 100644
--- a/meta-isar/conf/machine/phyboard-mira.conf
+++ b/meta-isar/conf/machine/phyboard-mira.conf
@@ -6,9 +6,10 @@
 MACHINE_SERIAL ?= "ttymxc0"
 BAUDRATE_TTY ?= "115200"
 
-IMAGE_CLASSES += "ubi-ubifs-img"
-MKUBIFS_ARGS := "-m 0x1000 -e 0x7e000 -c 8083"
-UBINIZE_ARGS = "-vv -m 0x1000 -p 0x80000"
-IMAGE_FSTYPES ?= "ubi-ubifs"
+IMAGE_TYPEDEP_ubi += "ubifs"
+
+MKUBIFS_ARGS := "-m 0x800 -e 0x1f000 -c 8012"
+UBINIZE_ARGS = "-vv -m 0x800 -p 0x20000"
+IMAGE_FSTYPES ?= "ubi ubifs"
 
 DTB_FILES = "imx6q-phytec-mira-rdk-nand.dtb"
diff --git a/meta-isar/recipes-core/images/files/fitimage.its.tmpl b/meta-isar/recipes-core/images/imx6-sabrelite/fitimage.its.tmpl
similarity index 100%
rename from meta-isar/recipes-core/images/files/fitimage.its.tmpl
rename to meta-isar/recipes-core/images/imx6-sabrelite/fitimage.its.tmpl
diff --git a/meta-isar/recipes-core/images/files/ubinize.cfg.tmpl b/meta-isar/recipes-core/images/imx6-sabrelite/ubinize.cfg.tmpl
similarity index 100%
rename from meta-isar/recipes-core/images/files/ubinize.cfg.tmpl
rename to meta-isar/recipes-core/images/imx6-sabrelite/ubinize.cfg.tmpl
diff --git a/meta-isar/recipes-core/images/phyboard-mira/ubinize.cfg.tmpl b/meta-isar/recipes-core/images/phyboard-mira/ubinize.cfg.tmpl
new file mode 100644
index 0000000..aed4cd6
--- /dev/null
+++ b/meta-isar/recipes-core/images/phyboard-mira/ubinize.cfg.tmpl
@@ -0,0 +1,26 @@
+[kernel]
+mode=ubi
+image=${KERNEL_IMG}
+vol_id=1
+vol_type=static
+vol_name=kernel
+vol_size=16MiB
+vol_alignment=1
+
+[oftree]
+mode=ubi
+image=${DTB_IMG}
+vol_id=2
+vol_type=static
+vol_name=oftree
+vol_size=1MiB
+vol_alignment=1
+
+[rootfs]
+mode=ubi
+image=${UBIFS_IMG}
+vol_id=3
+vol_type=dynamic
+vol_name=root
+vol_alignment=1
+vol_flags=autoresize
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 5/7] conf: Remove machine-specific defines from multiconfig
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
                   ` (3 preceding siblings ...)
  2022-05-04  5:41 ` [PATCH v3 4/7] ubi: Split UBI configs for phyboard-mira and imx6-sabrelite Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 6/7] meta-isar: Add linux-phy kernel Anton Mikanovich
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

Move that defines from multiconfig to machine config.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta-isar/conf/machine/phyboard-mira.conf              | 6 ++++++
 meta-isar/conf/multiconfig/phyboard-mira-bullseye.conf | 6 ------
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/meta-isar/conf/machine/phyboard-mira.conf b/meta-isar/conf/machine/phyboard-mira.conf
index a2e7150..8dd6679 100644
--- a/meta-isar/conf/machine/phyboard-mira.conf
+++ b/meta-isar/conf/machine/phyboard-mira.conf
@@ -3,6 +3,10 @@
 #
 # SPDX-License-Identifier: MIT
 
+DISTRO_ARCH ?= "armhf"
+
+KERNEL_NAME ?= "armmp"
+
 MACHINE_SERIAL ?= "ttymxc0"
 BAUDRATE_TTY ?= "115200"
 
@@ -13,3 +17,5 @@ UBINIZE_ARGS = "-vv -m 0x800 -p 0x20000"
 IMAGE_FSTYPES ?= "ubi ubifs"
 
 DTB_FILES = "imx6q-phytec-mira-rdk-nand.dtb"
+
+IMAGE_INSTALL += "sshd-regen-keys"
diff --git a/meta-isar/conf/multiconfig/phyboard-mira-bullseye.conf b/meta-isar/conf/multiconfig/phyboard-mira-bullseye.conf
index a0253eb..be62451 100644
--- a/meta-isar/conf/multiconfig/phyboard-mira-bullseye.conf
+++ b/meta-isar/conf/multiconfig/phyboard-mira-bullseye.conf
@@ -4,10 +4,4 @@
 # SPDX-License-Identifier: MIT
 
 MACHINE ?= "phyboard-mira"
-
 DISTRO ?= "debian-bullseye"
-DISTRO_ARCH ?= "armhf"
-
-KERNEL_NAME ?= "armmp"
-
-IMAGE_INSTALL += "sshd-regen-keys"
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 6/7] meta-isar: Add linux-phy kernel
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
                   ` (4 preceding siblings ...)
  2022-05-04  5:41 ` [PATCH v3 5/7] conf: Remove machine-specific defines from multiconfig Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-04  5:41 ` [PATCH v3 7/7] meta: Add barebox bootloader support Anton Mikanovich
  2022-05-16  9:31 ` [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

Add v5.10.76 linux kernel recipe for Phytec boards.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta-isar/conf/machine/phyboard-mira.conf     |  4 +--
 ...bsinstall-fix-installing-DT-overlays.patch | 30 +++++++++++++++++++
 .../linux/linux-phy_5.10.76-phy4.bb           | 14 +++++++++
 3 files changed, 46 insertions(+), 2 deletions(-)
 create mode 100644 meta-isar/recipes-kernel/linux/files/0001-dtbsinstall-fix-installing-DT-overlays.patch
 create mode 100644 meta-isar/recipes-kernel/linux/linux-phy_5.10.76-phy4.bb

diff --git a/meta-isar/conf/machine/phyboard-mira.conf b/meta-isar/conf/machine/phyboard-mira.conf
index 8dd6679..d1707d3 100644
--- a/meta-isar/conf/machine/phyboard-mira.conf
+++ b/meta-isar/conf/machine/phyboard-mira.conf
@@ -5,7 +5,7 @@
 
 DISTRO_ARCH ?= "armhf"
 
-KERNEL_NAME ?= "armmp"
+KERNEL_NAME ?= "phy"
 
 MACHINE_SERIAL ?= "ttymxc0"
 BAUDRATE_TTY ?= "115200"
@@ -16,6 +16,6 @@ MKUBIFS_ARGS := "-m 0x800 -e 0x1f000 -c 8012"
 UBINIZE_ARGS = "-vv -m 0x800 -p 0x20000"
 IMAGE_FSTYPES ?= "ubi ubifs"
 
-DTB_FILES = "imx6q-phytec-mira-rdk-nand.dtb"
+DTB_FILES = "imx6q-phytec-mira-ff-rdk-nand.dtb"
 
 IMAGE_INSTALL += "sshd-regen-keys"
diff --git a/meta-isar/recipes-kernel/linux/files/0001-dtbsinstall-fix-installing-DT-overlays.patch b/meta-isar/recipes-kernel/linux/files/0001-dtbsinstall-fix-installing-DT-overlays.patch
new file mode 100644
index 0000000..0865870
--- /dev/null
+++ b/meta-isar/recipes-kernel/linux/files/0001-dtbsinstall-fix-installing-DT-overlays.patch
@@ -0,0 +1,30 @@
+From 74c2d5edf5d9d601b1caac0cae8be785e45e9af0 Mon Sep 17 00:00:00 2001
+From: Anton Mikanovich <amikan@ilbers.de>
+Date: Tue, 8 Feb 2022 19:47:35 +0300
+Subject: [PATCH] dtbsinstall: fix installing DT overlays
+
+Add dtbo target needed for __dtbs_install to fix 'make dtbs_install'
+call. 'No rule to make target' error will occur otherwise.
+
+Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
+---
+ scripts/Makefile.dtbinst | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/scripts/Makefile.dtbinst b/scripts/Makefile.dtbinst
+index 50d580d77ae9..829609ce29cf 100644
+--- a/scripts/Makefile.dtbinst
++++ b/scripts/Makefile.dtbinst
+@@ -29,6 +29,9 @@ quiet_cmd_dtb_install = INSTALL $@
+ $(dst)/%.dtb: $(obj)/%.dtb
+ 	$(call cmd,dtb_install)
+ 
++$(dst)/%.dtbo: $(obj)/%.dtbo
++	$(call cmd,dtb_install)
++
+ PHONY += $(subdirs)
+ $(subdirs):
+ 	$(Q)$(MAKE) $(dtbinst)=$@ dst=$(patsubst $(obj)/%,$(dst)/%,$@)
+-- 
+2.25.1
+
diff --git a/meta-isar/recipes-kernel/linux/linux-phy_5.10.76-phy4.bb b/meta-isar/recipes-kernel/linux/linux-phy_5.10.76-phy4.bb
new file mode 100644
index 0000000..84609a0
--- /dev/null
+++ b/meta-isar/recipes-kernel/linux/linux-phy_5.10.76-phy4.bb
@@ -0,0 +1,14 @@
+require recipes-kernel/linux/linux-custom.inc
+
+SRC_URI += "https://git.phytec.de/linux-mainline/snapshot/linux-mainline-${PV}.tar.bz2 \
+            file://0001-dtbsinstall-fix-installing-DT-overlays.patch"
+
+SRC_URI[sha256sum] = "ce0cff708da9f3dca1f6f8d6c433589fd5a5ea8db9e33114f44497ecf873f875"
+
+S = "${WORKDIR}/linux-mainline-${PV}"
+
+KBUILD_DEPENDS_append = "lzop"
+
+KERNEL_DEFCONFIG = "imx_v6_v7_defconfig"
+
+LINUX_VERSION_EXTENSION = "-isar"
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v3 7/7] meta: Add barebox bootloader support
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
                   ` (5 preceding siblings ...)
  2022-05-04  5:41 ` [PATCH v3 6/7] meta-isar: Add linux-phy kernel Anton Mikanovich
@ 2022-05-04  5:41 ` Anton Mikanovich
  2022-05-16  9:31 ` [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-04  5:41 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt, Anton Mikanovich

Add Barebox v2022.02.0 recipe as a reference and enable it for
phyBOARD-Mira target.
Most of the files here are actually just an environment to be apply.

Signed-off-by: Anton Mikanovich <amikan@ilbers.de>
---
 meta-isar/conf/machine/phyboard-mira.conf     |  5 ++
 .../recipes-bsp/barebox/barebox_2022.02.0.bb  | 13 ++++
 ...1-of_dump-Add-a-simple-node-check-up.patch | 61 +++++++++++++++++++
 .../barebox/files/phytec-mira-env/bin/far     | 14 +++++
 .../bin/rauc_flash_nand_from_mmc              | 10 +++
 .../bin/rauc_flash_nand_from_tftp             | 10 +++
 .../files/phytec-mira-env/bin/rauc_init_nand  | 17 ++++++
 .../barebox/files/phytec-mira-env/boot/initrd |  9 +++
 .../barebox/files/phytec-mira-env/boot/mmc    | 14 +++++
 .../barebox/files/phytec-mira-env/boot/nand   | 16 +++++
 .../barebox/files/phytec-mira-env/boot/net    | 21 +++++++
 .../barebox/files/phytec-mira-env/boot/spi    |  7 +++
 .../files/phytec-mira-env/boot/system0        | 16 +++++
 .../files/phytec-mira-env/boot/system1        | 16 +++++
 .../files/phytec-mira-env/config-expansions   | 28 +++++++++
 .../phytec-mira-env/expansions/dt-overlays    | 14 +++++
 .../expansions/imx6-phytec-check-bus-nodepath |  7 +++
 .../expansions/imx6qdl-mira-enable-lvds       |  2 +
 .../expansions/imx6qdl-mira-peb-eval-01       |  3 +
 .../expansions/imx6qdl-nunki-enable-lvds      |  2 +
 .../expansions/imx6qdl-phytec-lcd             |  4 ++
 .../imx6qdl-phytec-lcd-018-peb-av-02          |  3 +
 .../imx6qdl-phytec-lcd-018-peb-av-02-res      |  3 +
 .../expansions/imx6qdl-phytec-lcd-res         |  4 ++
 .../expansions/imx6qdl-phytec-peb-wlbt-05     |  7 +++
 .../files/phytec-mira-env/nv/allow_color      |  1 +
 .../files/phytec-mira-env/nv/boot.default     |  1 +
 .../nv/bootchooser.state_prefix               |  1 +
 .../nv/bootchooser.system0.boot               |  1 +
 .../nv/bootchooser.system1.boot               |  1 +
 .../phytec-mira-env/nv/bootchooser.targets    |  1 +
 .../files/phytec-mira-env/nv/dev.eth0.ipaddr  |  1 +
 .../phytec-mira-env/nv/dev.eth0.linux.devname |  1 +
 .../files/phytec-mira-env/nv/dev.eth0.mode    |  1 +
 .../files/phytec-mira-env/nv/dev.eth0.netmask |  1 +
 .../phytec-mira-env/nv/dev.eth0.serverip      |  1 +
 .../files/phytec-mira-env/nv/dhcp.vendor_id   |  1 +
 .../phytec-mira-env/nv/linux.bootargs.base    |  1 +
 .../phytec-mira-env/nv/linux.bootargs.fb      |  1 +
 .../phytec-mira-env/nv/linux.bootargs.rootfs  |  1 +
 .../files/phytec-mira-env/nv/net.gateway      |  1 +
 .../files/phytec-mira-env/nv/overlays.select  |  0
 meta/recipes-bsp/barebox/barebox.inc          | 55 +++++++++++++++++
 .../barebox/files/defaultenv.cfg.tmpl         |  5 ++
 meta/recipes-bsp/barebox/files/rules.tmpl     | 45 ++++++++++++++
 .../barebox/files/version.cfg.tmpl            |  2 +
 46 files changed, 429 insertions(+)
 create mode 100644 meta-isar/recipes-bsp/barebox/barebox_2022.02.0.bb
 create mode 100644 meta-isar/recipes-bsp/barebox/files/0001-of_dump-Add-a-simple-node-check-up.patch
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/far
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_mmc
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_tftp
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_init_nand
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/initrd
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/mmc
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/nand
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/net
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/spi
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system0
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system1
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/config-expansions
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/dt-overlays
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6-phytec-check-bus-nodepath
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-enable-lvds
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-peb-eval-01
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-nunki-enable-lvds
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02-res
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-res
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-peb-wlbt-05
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/allow_color
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/boot.default
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.state_prefix
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system0.boot
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system1.boot
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.targets
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.ipaddr
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.linux.devname
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.mode
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.netmask
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.serverip
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dhcp.vendor_id
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.base
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.fb
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.rootfs
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/net.gateway
 create mode 100644 meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/overlays.select
 create mode 100644 meta/recipes-bsp/barebox/barebox.inc
 create mode 100644 meta/recipes-bsp/barebox/files/defaultenv.cfg.tmpl
 create mode 100755 meta/recipes-bsp/barebox/files/rules.tmpl
 create mode 100644 meta/recipes-bsp/barebox/files/version.cfg.tmpl

diff --git a/meta-isar/conf/machine/phyboard-mira.conf b/meta-isar/conf/machine/phyboard-mira.conf
index d1707d3..ac42084 100644
--- a/meta-isar/conf/machine/phyboard-mira.conf
+++ b/meta-isar/conf/machine/phyboard-mira.conf
@@ -19,3 +19,8 @@ IMAGE_FSTYPES ?= "ubi ubifs"
 DTB_FILES = "imx6q-phytec-mira-ff-rdk-nand.dtb"
 
 IMAGE_INSTALL += "sshd-regen-keys"
+IMAGE_INSTALL += "barebox"
+
+BAREBOX_CONFIG = "imx_v7_defconfig"
+BAREBOX_ENV = "phytec-mira-env"
+BAREBOX_BASE_BIN = "barebox-phytec-phycore-imx6q-som-nand-1gib"
diff --git a/meta-isar/recipes-bsp/barebox/barebox_2022.02.0.bb b/meta-isar/recipes-bsp/barebox/barebox_2022.02.0.bb
new file mode 100644
index 0000000..ba171ce
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/barebox_2022.02.0.bb
@@ -0,0 +1,13 @@
+# This software is a part of ISAR.
+# Copyright (C) 2022 ilbers GmbH
+
+inherit dpkg
+
+require recipes-bsp/barebox/barebox.inc
+
+SRC_URI += "https://git.pengutronix.de/cgit/barebox/snapshot/barebox-${PV}.tar.gz \
+            file://0001-of_dump-Add-a-simple-node-check-up.patch"
+
+SRC_URI[sha256sum] = "01fb3799840bde34014981557361dcae1db23764708bb7b151ec044eb022fbe8"
+
+BAREBOX_VERSION_EXTENSION = "-isar"
diff --git a/meta-isar/recipes-bsp/barebox/files/0001-of_dump-Add-a-simple-node-check-up.patch b/meta-isar/recipes-bsp/barebox/files/0001-of_dump-Add-a-simple-node-check-up.patch
new file mode 100644
index 0000000..05caba1
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/0001-of_dump-Add-a-simple-node-check-up.patch
@@ -0,0 +1,61 @@
+From 4abae0d9cc23ef055c0054e41c515e92fa5267ce Mon Sep 17 00:00:00 2001
+From: Yunus Bas <y.bas@phytec.de>
+Date: Fri, 4 Jun 2021 19:03:04 +0200
+Subject: [PATCH] of_dump: Add a simple node check-up
+
+In case a node is found, the whole node and it's subnodes will be
+printed. This patch extends the of_dump command with a simple check-up.
+This is needed e.g. when other scripts need to determine if a
+devicetree node exists or not.
+
+Zero is returned in case the node is found, an error code if not.
+
+Signed-off-by: Yunus Bas <y.bas@phytec.de>
+---
+ commands/of_dump.c | 9 ++++++++-
+ 1 file changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/commands/of_dump.c b/commands/of_dump.c
+index 6792af3af..d4d9c46a5 100644
+--- a/commands/of_dump.c
++++ b/commands/of_dump.c
+@@ -32,14 +32,17 @@ static int do_of_dump(int argc, char *argv[])
+ 	int opt;
+ 	int ret = 0;
+ 	int fix = 0;
++	int exists = 0;
+ 	struct device_node *root = NULL, *node, *of_free = NULL;
+ 	char *dtbfile = NULL;
+ 	size_t size;
+ 	const char *nodename;
+ 	int names_only = 0, properties_only = 0;
+ 
+-	while ((opt = getopt(argc, argv, "Ff:np")) > 0) {
++	while ((opt = getopt(argc, argv, "eFf:np")) > 0) {
+ 		switch (opt) {
++		case 'e':
++			exists = 1;
+ 		case 'f':
+ 			dtbfile = optarg;
+ 			break;
+@@ -109,6 +112,9 @@ static int do_of_dump(int argc, char *argv[])
+ 		printf("Cannot find nodepath %s\n", nodename);
+ 		ret = -ENOENT;
+ 		goto out;
++	} else if (exists) {
++		printf("Found node %s\n", nodename);
++		goto out;
+ 	}
+ 
+ 	if (names_only)
+@@ -125,6 +131,7 @@ out:
+ 
+ BAREBOX_CMD_HELP_START(of_dump)
+ BAREBOX_CMD_HELP_TEXT("Options:")
++BAREBOX_CMD_HELP_OPT  ("-e",  "only check if path or alias exists")
+ BAREBOX_CMD_HELP_OPT  ("-f dtb",  "work on dtb instead of internal devicetree")
+ BAREBOX_CMD_HELP_OPT  ("-F",  "return fixed devicetree")
+ BAREBOX_CMD_HELP_OPT  ("-n",  "Print node names only, no properties")
+-- 
+2.30.0
+
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/far b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/far
new file mode 100644
index 0000000..3013462
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/far
@@ -0,0 +1,14 @@
+#!/bin/sh
+# barebox script far (="Fetch And Reset"):
+#
+# The script is useful for a rapid compile and execute development cycle. If
+# the deployment directory of yocto is the root directory of the tftp server
+# (e.g. use a bind mount), you can fetch and execute a newly compiled barebox
+# with this script.
+
+cp /mnt/tftp/barebox.bin /dev/ram0
+if [ $? != 0 ]; then
+    echo "Error: Cannot fetch file "barebox.bin" from host!"
+else
+    go /dev/ram0
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_mmc b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_mmc
new file mode 100644
index 0000000..207ad7f
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_mmc
@@ -0,0 +1,10 @@
+#!/bin/sh
+echo "WARNING! This script is deprecated. Please use "rauc-flash-nand" in a Linux environment!"
+echo "Initializing NAND flash from MMC"
+[ ! -e /dev/nand0.root.ubi ] && ubiattach /dev/nand0.root
+ubiupdatevol /dev/nand0.root.ubi.kernel0 /mnt/mmc0.0/zImage
+ubiupdatevol /dev/nand0.root.ubi.kernel1 /mnt/mmc0.0/zImage
+ubiupdatevol /dev/nand0.root.ubi.oftree0 /mnt/mmc0.0/oftree
+ubiupdatevol /dev/nand0.root.ubi.oftree1 /mnt/mmc0.0/oftree
+cp /mnt/mmc0.0/root.ubifs /dev/nand0.root.ubi.root0
+cp /mnt/mmc0.0/root.ubifs /dev/nand0.root.ubi.root1
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_tftp b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_tftp
new file mode 100644
index 0000000..5fcb366
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_flash_nand_from_tftp
@@ -0,0 +1,10 @@
+#!/bin/sh
+echo "WARNING! This script is deprecated. Please use "rauc-flash-nand" in a Linux environment!"
+echo "Initializing NAND flash from TFTP"
+[ ! -e /dev/nand0.root.ubi ] && ubiattach /dev/nand0.root
+ubiupdatevol /dev/nand0.root.ubi.kernel0 /mnt/tftp/zImage
+ubiupdatevol /dev/nand0.root.ubi.kernel1 /mnt/tftp/zImage
+ubiupdatevol /dev/nand0.root.ubi.oftree0 /mnt/tftp/oftree
+ubiupdatevol /dev/nand0.root.ubi.oftree1 /mnt/tftp/oftree
+cp /mnt/tftp/root.ubifs /dev/nand0.root.ubi.root0
+cp /mnt/tftp/root.ubifs /dev/nand0.root.ubi.root1
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_init_nand b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_init_nand
new file mode 100644
index 0000000..18c6a13
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/bin/rauc_init_nand
@@ -0,0 +1,17 @@
+#!/bin/sh
+ROOTFSSIZE=479M
+KERNELSIZE=16M
+DTBSIZE=1M
+echo "WARNING! This script is deprecated. Please use "rauc-flash-nand" in a Linux environment!"
+echo "Formatting /dev/nand0.root"
+
+ubiformat -q /dev/nand0.root
+ubiattach /dev/nand0.root
+ubimkvol -t static /dev/nand0.root.ubi kernel0 ${KERNELSIZE}
+ubimkvol -t static /dev/nand0.root.ubi oftree0 ${DTBSIZE}
+ubimkvol /dev/nand0.root.ubi root0 ${ROOTFSSIZE}
+ubimkvol -t static /dev/nand0.root.ubi kernel1 ${KERNELSIZE}
+ubimkvol -t static /dev/nand0.root.ubi oftree1 ${DTBSIZE}
+ubimkvol /dev/nand0.root.ubi root1 ${ROOTFSSIZE}
+
+ubidetach 0
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/initrd b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/initrd
new file mode 100644
index 0000000..f68bfcb
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/initrd
@@ -0,0 +1,9 @@
+#!/bin/sh
+path="/mnt/tftp"
+
+global.bootm.image="${path}/${global.user}-linux-${global.hostname}"
+
+global.bootm.oftree="${path}/${global.user}-oftree-${global.hostname}"
+global.bootm.initrd="${path}/${global.user}-phytec-initramfs-image-${global.hostname}.cpio.gz"
+
+global.linux.bootargs.dyn.root="root=/dev/ram0 ip=$eth0.ipaddr:$eth0.serverip:$eth0.gateway:$eth0.netmask:: quiet"
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/mmc b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/mmc
new file mode 100644
index 0000000..46761ed
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/mmc
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+detect mmc0
+
+global.bootm.image="/mnt/mmc0.0/zImage"
+global.bootm.oftree="/mnt/mmc0.0/oftree"
+global.linux.bootargs.dyn.root="root=/dev/mmcblk0p2 rootflags='data=journal'"
+
+[ -e /env/config-expansions ] && /env/config-expansions
+
+if [ -e /env/expansions/dt-overlays ] ; then
+    global overlays.path="/mnt/mmc0.1/overlays"
+    /env/expansions/dt-overlays
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/nand b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/nand
new file mode 100644
index 0000000..f6d71aa
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/nand
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+[ ! -e /dev/nand0.root.ubi ] && ubiattach /dev/nand0.root
+
+global.bootm.image="/dev/nand0.root.ubi.kernel"
+global.bootm.oftree="/dev/nand0.root.ubi.oftree"
+global.linux.bootargs.dyn.root="root=ubi0:root ubi.mtd=root rootfstype=ubifs"
+
+[ -e /env/config-expansions ] && /env/config-expansions
+
+if [ -e /env/expansions/dt-overlays ] ; then
+    mkdir /mnt/rootfs
+    mount -t ubifs /dev/nand0.root.ubi.root /mnt/rootfs
+    global overlays.path="/mnt/rootfs/overlays"
+    /env/expansions/dt-overlays
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/net b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/net
new file mode 100644
index 0000000..0ad9412
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/net
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+path="/mnt/tftp"
+
+global.bootm.image="${path}/${global.user}-linux-${global.hostname}"
+
+oftree="${path}/${global.user}-oftree-${global.hostname}"
+if [ -f "${oftree}" ]; then
+    global.bootm.oftree="$oftree"
+fi
+
+nfsroot="/home/${global.user}/nfsroot/${global.hostname}"
+ip_route_get -b ${global.net.server} global.linux.bootargs.dyn.ip
+global.linux.bootargs.dyn.root="root=/dev/nfs nfsroot=$nfsroot,vers=3,tcp"
+
+[ -e /env/config-expansions ] && /env/config-expansions
+
+if [ -e /env/expansions/dt-overlays ] ; then
+    global overlays.path="/mnt/nfs/overlays"
+    /env/expansions/dt-overlays
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/spi b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/spi
new file mode 100644
index 0000000..c4dc3d5
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/spi
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+global.bootm.image="/dev/m25p0.kernel"
+global.bootm.oftree="/dev/m25p0.oftree"
+global.linux.bootargs.dyn.root="root=ubi0:root ubi.mtd=root rootfstype=ubifs"
+
+[ -e /env/config-expansions ] && /env/config-expansions
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system0 b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system0
new file mode 100644
index 0000000..459ae96
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system0
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+[ ! -e /dev/nand0.root.ubi ] && ubiattach /dev/nand0.root
+
+global.bootm.image="/dev/nand0.root.ubi.kernel0"
+global.bootm.oftree="/dev/nand0.root.ubi.oftree0"
+global.linux.bootargs.dyn.root="root=ubi0:root0 ubi.mtd=root rootfstype=ubifs"
+
+[ -e /env/config-expansions ] && /env/config-expansions
+
+if [ -e /env/expansions/dt-overlays ] ; then
+    mkdir /mnt/rootfs
+    mount -t ubifs /dev/nand0.root.ubi.root0 /mnt/rootfs
+    global overlays.path="/mnt/rootfs/overlays"
+    /env/expansions/dt-overlays
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system1 b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system1
new file mode 100644
index 0000000..c22a180
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/boot/system1
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+[ ! -e /dev/nand0.root.ubi ] && ubiattach /dev/nand0.root
+
+global.bootm.image="/dev/nand0.root.ubi.kernel1"
+global.bootm.oftree="/dev/nand0.root.ubi.oftree1"
+global.linux.bootargs.dyn.root="root=ubi0:root1 ubi.mtd=root rootfstype=ubifs"
+
+[ -e /env/config-expansions ] && /env/config-expansions
+
+if [ -e /env/expansions/dt-overlays ] ; then
+    mkdir /mnt/rootfs
+    mount -t ubifs /dev/nand0.root.ubi.root1 /mnt/rootfs
+    global overlays.path="/mnt/rootfs/overlays"
+    /env/expansions/dt-overlays
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/config-expansions b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/config-expansions
new file mode 100644
index 0000000..4958f67
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/config-expansions
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+. /env/expansions/imx6-phytec-check-bus-nodepath
+
+. /env/expansions/imx6qdl-mira-peb-eval-01
+#. /env/expansions/imx6qdl-mira-enable-lvds
+#. /env/expansions/imx6qdl-phytec-peb-wlbt-05
+
+#use this expansion when a capacitive touchscreen is connected
+#. /env/expansions/imx6qdl-phytec-lcd-018-peb-av-02
+
+#use this expansion when a resisitive touchscreen is connected
+#. /env/expansions/imx6qdl-phytec-lcd-018-peb-av-02-res
+
+# imx6qdl-phytec-lcd: 7" display (AC158 / AC138)
+#of_property -s -f "/panel-lcd" compatible "edt,etm0700g0edh6"
+
+# imx6qdl-phytec-lcd: 7" display (AC104)
+#of_property -s -f "/panel-lcd" compatible "edt,etm0700g0dh6"
+
+# imx6qdl-phytec-lcd: 5.7" display (AC103)
+#of_property -s -f "/panel-lcd" compatible "edt,etmv570g2dhu"
+
+# imx6qdl-phytec-lcd: 4.3" display (AC102)
+#of_property -s -f "/panel-lcd" compatible "edt,etm0430g0dh6"
+
+# imx6qdl-phytec-lcd: 3.5" display (AC167 / AC101)
+#of_property -s -f "/panel-lcd" compatible "edt,etm0350g0dh6"
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/dt-overlays b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/dt-overlays
new file mode 100644
index 0000000..c3bcc34
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/dt-overlays
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+path="$global.overlays.path"
+
+if [ -e ${path}/select ] ; then
+    readf ${path}/select global.overlays.select
+fi
+
+for o in $global.overlays.select ; do
+    if [ -e ${path}/${o} ] ; then
+        echo "Add ${path}/${o} overlay"
+        of_overlay ${path}/${o}
+    fi
+done
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6-phytec-check-bus-nodepath b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6-phytec-check-bus-nodepath
new file mode 100644
index 0000000..ba94f40
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6-phytec-check-bus-nodepath
@@ -0,0 +1,7 @@
+bus="bus"
+of_dump -e /soc/$bus@2000000
+
+if [ $? != 0 ]; then
+    echo "Changing node-name bus to aips-bus"
+    bus="aips-bus"
+fi
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-enable-lvds b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-enable-lvds
new file mode 100644
index 0000000..73ab490
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-enable-lvds
@@ -0,0 +1,2 @@
+of_fixup_status /ldb/lvds-channel@0
+of_fixup_status /soc/$bus@2100000/i2c@21a0000/touchctrl@44
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-peb-eval-01 b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-peb-eval-01
new file mode 100644
index 0000000..f4a486f
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-mira-peb-eval-01
@@ -0,0 +1,3 @@
+of_fixup_status /gpio-keys
+of_fixup_status /user-leds
+of_property -s -f -e $global.bootm.oftree /soc/$bus@2100000/serial@21ec000 pinctrl-0 </soc/$bus@2000000/pinctrl@20e0000/uart3grp>
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-nunki-enable-lvds b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-nunki-enable-lvds
new file mode 100644
index 0000000..73ab490
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-nunki-enable-lvds
@@ -0,0 +1,2 @@
+of_fixup_status /ldb/lvds-channel@0
+of_fixup_status /soc/$bus@2100000/i2c@21a0000/touchctrl@44
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd
new file mode 100644
index 0000000..497c3ae
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd
@@ -0,0 +1,4 @@
+#!/bin/sh
+of_fixup_status /panel-lcd
+of_fixup_status /ldb/lvds-channel@0
+of_fixup_status /soc/$bus@2100000/i2c@21a4000/polytouch@38
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02 b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02
new file mode 100644
index 0000000..ce76ca0
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02
@@ -0,0 +1,3 @@
+of_fixup_status /panel-lcd
+of_fixup_status /display@di0
+of_fixup_status /soc/$bus@2100000/i2c@21a0000/polytouch@38
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02-res b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02-res
new file mode 100644
index 0000000..381c723
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-018-peb-av-02-res
@@ -0,0 +1,3 @@
+of_fixup_status /panel-lcd
+of_fixup_status /display@di0
+of_fixup_status /soc/$bus@2100000/i2c@21a0000/touchctrl@44
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-res b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-res
new file mode 100644
index 0000000..7bf30e5
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-lcd-res
@@ -0,0 +1,4 @@
+#!/bin/sh
+of_fixup_status /panel-lcd
+of_fixup_status /ldb/lvds-channel@0
+of_fixup_status /soc/$bus@2100000/i2c@21a4000/touchctrl@41
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-peb-wlbt-05 b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-peb-wlbt-05
new file mode 100644
index 0000000..5ae4218
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/expansions/imx6qdl-phytec-peb-wlbt-05
@@ -0,0 +1,7 @@
+#!/bin/sh
+of_fixup_status /soc/$bus@2100000/mmc@2198000
+of_fixup_status /regulator-wl-en
+of_fixup_status -d /gpio-keys
+of_fixup_status /soc/$bus@2100000/serial@21ec000/bluetooth
+of_fixup_status -d /user-leds
+of_property -s -f -e $global.bootm.oftree /soc/$bus@2100000/serial@21ec000 pinctrl-0 </soc/$bus@2000000/pinctrl@20e0000/uart3grp_bt>
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/allow_color b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/allow_color
new file mode 100644
index 0000000..c508d53
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/allow_color
@@ -0,0 +1 @@
+false
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/boot.default b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/boot.default
new file mode 100644
index 0000000..d31014d
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/boot.default
@@ -0,0 +1 @@
+bootchooser
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.state_prefix b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.state_prefix
new file mode 100644
index 0000000..38c56c1
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.state_prefix
@@ -0,0 +1 @@
+state.bootstate
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system0.boot b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system0.boot
new file mode 100644
index 0000000..dcc64ac
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system0.boot
@@ -0,0 +1 @@
+system0
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system1.boot b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system1.boot
new file mode 100644
index 0000000..2858d07
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.system1.boot
@@ -0,0 +1 @@
+system1
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.targets b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.targets
new file mode 100644
index 0000000..cf2ba7c
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/bootchooser.targets
@@ -0,0 +1 @@
+system0 system1
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.ipaddr b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.ipaddr
new file mode 100644
index 0000000..4194dcb
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.ipaddr
@@ -0,0 +1 @@
+192.168.3.11
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.linux.devname b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.linux.devname
new file mode 100644
index 0000000..563d95d
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.linux.devname
@@ -0,0 +1 @@
+eth0
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.mode b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.mode
new file mode 100644
index 0000000..ecdef5b
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.mode
@@ -0,0 +1 @@
+static
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.netmask b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.netmask
new file mode 100644
index 0000000..5a279b4
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.netmask
@@ -0,0 +1 @@
+255.255.255.0
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.serverip b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.serverip
new file mode 100644
index 0000000..66764ab
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dev.eth0.serverip
@@ -0,0 +1 @@
+192.168.3.10
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dhcp.vendor_id b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dhcp.vendor_id
new file mode 100644
index 0000000..b69d5fa
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/dhcp.vendor_id
@@ -0,0 +1 @@
+barebox-phyCORE-i.MX6
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.base b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.base
new file mode 100644
index 0000000..efc4ee6
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.base
@@ -0,0 +1 @@
+consoleblank=0
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.fb b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.fb
new file mode 100644
index 0000000..0848ba8
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.fb
@@ -0,0 +1 @@
+imxdrm.legacyfb_depth=32
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.rootfs b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.rootfs
new file mode 100644
index 0000000..199c7b5
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/linux.bootargs.rootfs
@@ -0,0 +1 @@
+rootwait ro fsck.repair=yes
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/net.gateway b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/net.gateway
new file mode 100644
index 0000000..66764ab
--- /dev/null
+++ b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/net.gateway
@@ -0,0 +1 @@
+192.168.3.10
\ No newline at end of file
diff --git a/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/overlays.select b/meta-isar/recipes-bsp/barebox/files/phytec-mira-env/nv/overlays.select
new file mode 100644
index 0000000..e69de29
diff --git a/meta/recipes-bsp/barebox/barebox.inc b/meta/recipes-bsp/barebox/barebox.inc
new file mode 100644
index 0000000..5896d60
--- /dev/null
+++ b/meta/recipes-bsp/barebox/barebox.inc
@@ -0,0 +1,55 @@
+# This software is a part of ISAR.
+# Copyright (C) 2022 ilbers GmbH
+
+DESCRIPTION ?= "The barebox is a bootloader designed for embedded systems. It \
+                runs on a variety of architectures including x86, ARM, MIPS, \
+                PowerPC and others."
+CHANGELOG_V = "${PV}+${PR}"
+MAINTAINER ?= "isar-users <isar-users@googlegroups.com>"
+
+DEBIAN_BUILD_DEPENDS ?= "lzop, coreutils, bison, flex"
+
+BAREBOX_CONFIG ?= ""
+BAREBOX_BUILD_DIR ?= "build"
+BAREBOX_VERSION_EXTENSION ?= ""
+BAREBOX_ENV ?= ""
+
+FILESEXTRAPATHS_prepend := "${FILE_DIRNAME}/files:"
+SRC_URI += "file://rules.tmpl \
+            file://version.cfg.tmpl \
+            file://defaultenv.cfg.tmpl"
+
+BAREBOX_CONFIG_FRAGMENTS = "version.cfg defaultenv.cfg"
+
+SRC_URI += "${@'file://%s' % d.getVar('BAREBOX_ENV') if d.getVar('BAREBOX_ENV') else ''}"
+
+TEMPLATE_FILES += "rules.tmpl version.cfg.tmpl defaultenv.cfg.tmpl"
+TEMPLATE_VARS += "BAREBOX_CONFIG BAREBOX_BUILD_DIR BAREBOX_VERSION_EXTENSION BAREBOX_ENV BAREBOX_CONFIG_FRAGMENTS BAREBOX_BASE_BIN"
+
+do_prepare_build[cleandirs] += "${S}/debian"
+do_prepare_build() {
+    deb_debianize
+
+    if [ -n "${BAREBOX_CONFIG_FRAGMENTS}" ]; then
+        (cd ${WORKDIR} && cp ${BAREBOX_CONFIG_FRAGMENTS} ${S}/)
+    fi
+    if [ -n "${BAREBOX_ENV}" ]; then
+        (cd ${WORKDIR} && cp -r ${BAREBOX_ENV} ${S}/)
+    fi
+}
+
+BAREBOX_BASE_BIN ?= "barebox"
+
+do_deploy[dirs] = "${DEPLOY_DIR_IMAGE}"
+do_deploy() {
+    dpkg --fsys-tarfile ${WORKDIR}/${PN}_${CHANGELOG_V}_${DISTRO_ARCH}.deb | \
+        tar xOf - ./usr/lib/barebox/barebox.bin \
+        > "${DEPLOY_DIR_IMAGE}/${BAREBOX_BASE_BIN}.img"
+    ln -sf ${BAREBOX_BASE_BIN}.img ${DEPLOY_DIR_IMAGE}/barebox.bin
+
+    dpkg --fsys-tarfile ${WORKDIR}/${PN}_${CHANGELOG_V}_${DISTRO_ARCH}.deb | \
+        tar xOf - ./usr/lib/barebox/barebox.config \
+        > "${DEPLOY_DIR_IMAGE}/${BAREBOX_BASE_BIN}.config"
+    ln -sf ${BAREBOX_BASE_BIN}.config ${DEPLOY_DIR_IMAGE}/barebox.config
+}
+addtask deploy before do_deploy_deb after do_dpkg_build
diff --git a/meta/recipes-bsp/barebox/files/defaultenv.cfg.tmpl b/meta/recipes-bsp/barebox/files/defaultenv.cfg.tmpl
new file mode 100644
index 0000000..5d88f8c
--- /dev/null
+++ b/meta/recipes-bsp/barebox/files/defaultenv.cfg.tmpl
@@ -0,0 +1,5 @@
+# CONFIG_BAREBOXENV_TARGET is not set
+# CONFIG_BAREBOXCRC32_TARGET is not set
+# CONFIG_KERNEL_INSTALL_TARGET is not set
+# CONFIG_IMD_TARGET is not set
+CONFIG_DEFAULT_ENVIRONMENT_PATH="${BAREBOX_ENV}"
diff --git a/meta/recipes-bsp/barebox/files/rules.tmpl b/meta/recipes-bsp/barebox/files/rules.tmpl
new file mode 100755
index 0000000..78c9aa4
--- /dev/null
+++ b/meta/recipes-bsp/barebox/files/rules.tmpl
@@ -0,0 +1,45 @@
+#!/usr/bin/make -f
+
+# Debian rules for custom Barebox build
+#
+# This software is a part of ISAR.
+# Copyright (C) 2022 ilbers GmbH
+
+ifneq ($(DEB_BUILD_GNU_TYPE),$(DEB_HOST_GNU_TYPE))
+export CROSS_COMPILE=$(DEB_HOST_GNU_TYPE)-
+endif
+
+ifeq ($(DEB_HOST_GNU_CPU), arm)
+export ARCH=arm
+endif
+ifeq ($(DEB_HOST_GNU_CPU), aarch64)
+export ARCH=arm64
+endif
+ifeq ($(DEB_HOST_GNU_CPU), riscv64)
+export ARCH=riscv
+endif
+ifneq (,$(findstring 86,$(DEB_HOST_GNU_CPU)))
+export ARCH=x86
+endif
+
+export KBUILD_OUTPUT=${BAREBOX_BUILD_DIR}
+
+export LDFLAGS="--no-dynamic-linker"
+
+override_dh_auto_configure:
+	$(MAKE) $(PARALLEL_MAKE) ${BAREBOX_CONFIG}
+ifneq (,${BAREBOX_CONFIG_FRAGMENTS})
+	./scripts/kconfig/merge_config.sh -m -O ${BAREBOX_BUILD_DIR} ${BAREBOX_BUILD_DIR}/.config ${BAREBOX_CONFIG_FRAGMENTS}
+endif
+	$(MAKE) $(PARALLEL_MAKE) olddefconfig
+
+override_dh_auto_build:
+	$(MAKE) $(PARALLEL_MAKE) all
+
+override_dh_auto_install:
+	install -d $(CURDIR)/debian/barebox/usr/lib/barebox
+	install -m 644 ${BAREBOX_BUILD_DIR}/images/${BAREBOX_BASE_BIN}.img $(CURDIR)/debian/barebox/usr/lib/barebox/barebox.bin
+	install -m 644 ${BAREBOX_BUILD_DIR}/.config $(CURDIR)/debian/barebox/usr/lib/barebox/barebox.config
+
+%:
+	dh $@ --parallel
diff --git a/meta/recipes-bsp/barebox/files/version.cfg.tmpl b/meta/recipes-bsp/barebox/files/version.cfg.tmpl
new file mode 100644
index 0000000..26292aa
--- /dev/null
+++ b/meta/recipes-bsp/barebox/files/version.cfg.tmpl
@@ -0,0 +1,2 @@
+CONFIG_LOCALVERSION="${BAREBOX_VERSION_EXTENSION}"
+# CONFIG_LOCALVERSION_AUTO is not set
-- 
2.17.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation
  2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
                   ` (6 preceding siblings ...)
  2022-05-04  5:41 ` [PATCH v3 7/7] meta: Add barebox bootloader support Anton Mikanovich
@ 2022-05-16  9:31 ` Anton Mikanovich
  7 siblings, 0 replies; 9+ messages in thread
From: Anton Mikanovich @ 2022-05-16  9:31 UTC (permalink / raw)
  To: isar-users; +Cc: adriaan.schmidt

04.05.2022 08:41, Anton Mikanovich wrote:
> Rebuild UBI image generation implementation to support any count of
> targets with different settings. This also will allow to build the same
> isar-image-base image for both UBI and non-UBI targets.
> Add correct UBI and UBIFS layouts for phyBOARD-Mira after that.
>
> To be able to flash phyBOARD-Mira with only Isar outputs add also kernel
> and Barebox bootloader recipes.
>
> Changes since v2:
> - rebase on the latest imagetypes patchset
>
> Changes since v1:
> - rebase on the latest imagetypes patchset
> - make barebox generic
>
> Anton Mikanovich (7):
>    image: Introduce template support for imagetypes
>    ubi: Move imager-related defines to image bbclasses
>    ubi: Remove isar-image-ubi
>    ubi: Split UBI configs for phyboard-mira and imx6-sabrelite
>    conf: Remove machine-specific defines from multiconfig
>    meta-isar: Add linux-phy kernel
>    meta: Add barebox bootloader support

Applied to next, thanks.


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-05-16  9:31 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-04  5:41 [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 1/7] image: Introduce template support for imagetypes Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 2/7] ubi: Move imager-related defines to image bbclasses Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 3/7] ubi: Remove isar-image-ubi Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 4/7] ubi: Split UBI configs for phyboard-mira and imx6-sabrelite Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 5/7] conf: Remove machine-specific defines from multiconfig Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 6/7] meta-isar: Add linux-phy kernel Anton Mikanovich
2022-05-04  5:41 ` [PATCH v3 7/7] meta: Add barebox bootloader support Anton Mikanovich
2022-05-16  9:31 ` [PATCH v3 0/7] Rebuild phyBOARD-Mira UBI image generation Anton Mikanovich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox