All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package
@ 2022-11-09  9:12 Neal Frager via buildroot
  2022-11-09  9:12 ` [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig Neal Frager via buildroot
  2022-11-09 14:42 ` [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package Luca Ceresoli via buildroot
  0 siblings, 2 replies; 8+ messages in thread
From: Neal Frager via buildroot @ 2022-11-09  9:12 UTC (permalink / raw)
  To: buildroot
  Cc: terry.oneal, luca.ceresoli, kris.chaplin, thomas.petazzoni,
	Neal Frager, michal.simek

This patch adds support for downloading versal microblaze firmware binaries.
These are necessary for booting Xilinx versal devices.

The location of these binaries is temporary, and will soon be added to the
Xilinx firmware repository.  The temporary location is using the same free
distribution license as the Xilinx firmware repository.

Once these files are available on the Xilinx repository, this package will
be updated to the new location.

Signed-off-by: Neal Frager <neal.frager@amd.com>
---
V1->V2:
  - set defaults for version and board name
  - improved format of install commands
V2->V3:
  - no changes
V3->V4:
  - no changes
---
 DEVELOPERS                                 |  1 +
 package/Config.in                          |  1 +
 package/versal-firmware/Config.in          | 24 ++++++++++++++++++++++
 package/versal-firmware/versal-firmware.mk | 23 +++++++++++++++++++++
 4 files changed, 49 insertions(+)
 create mode 100644 package/versal-firmware/Config.in
 create mode 100644 package/versal-firmware/versal-firmware.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index 81e6cd54ab..6ef52df15e 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2158,6 +2158,7 @@ F:	configs/zynqmp_zcu102_defconfig
 F:	configs/zynqmp_zcu106_defconfig
 F:	configs/zynqmp_kria_kv260_defconfig
 F:	package/bootgen/
+F:	package/versal-firmware/
 
 N:	Nicola Di Lieto <nicola.dilieto@gmail.com>
 F:	package/uacme/
diff --git a/package/Config.in b/package/Config.in
index aef80f9ab0..ebc7df10ec 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -443,6 +443,7 @@ menu "Firmware"
 	source "package/sunxi-boards/Config.in"
 	source "package/ts4900-fpga/Config.in"
 	source "package/ux500-firmware/Config.in"
+	source "package/versal-firmware/Config.in"
 	source "package/wilc-firmware/Config.in"
 	source "package/wilink-bt-firmware/Config.in"
 	source "package/zd1211-firmware/Config.in"
diff --git a/package/versal-firmware/Config.in b/package/versal-firmware/Config.in
new file mode 100644
index 0000000000..122ef02175
--- /dev/null
+++ b/package/versal-firmware/Config.in
@@ -0,0 +1,24 @@
+config BR2_PACKAGE_VERSAL_FIRMWARE
+	bool "versal-firmware"
+	depends on BR2_aarch64
+	help
+	  Pre-built firmware files for Xilinx Versal boards.
+
+	  https://github.com/nealfrager/buildroot-firmware
+
+if BR2_PACKAGE_VERSAL_FIRMWARE
+
+config BR2_PACKAGE_VERSAL_FIRMWARE_VERSION
+	string "versal firmware version"
+	default v2022.2
+	help
+	  Release version of Versal firmware.
+
+config BR2_PACKAGE_VERSAL_FIRMWARE_BOARD
+	string "versal board name"
+	default vck190
+	help
+	  Name of Versal target board.
+	  Used for installing the appropriate firmware boot.bin.
+
+endif # BR2_PACKAGE_VERSAL_FIRMWARE
diff --git a/package/versal-firmware/versal-firmware.mk b/package/versal-firmware/versal-firmware.mk
new file mode 100644
index 0000000000..cb36d1e045
--- /dev/null
+++ b/package/versal-firmware/versal-firmware.mk
@@ -0,0 +1,23 @@
+################################################################################
+#
+# versal-firmware
+#
+################################################################################
+
+VERSAL_FIRMWARE_VERSION = $(call qstrip,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERSION))
+VERSAL_FIRMWARE_SITE = $(call github,nealfrager,buildroot-firmware,$(BR2_PACKAGE_VERSAL_FIRMWARE_VERSION))
+VERSAL_FIRMWARE_LICENSE = "Xilinx-Binary-Only or GPL-2.0-or-later"
+
+VERSAL_FIRMWARE_LICENSE_FILES = LICENSE
+
+VERSAL_FIRMWARE_INSTALL_TARGET = NO
+VERSAL_FIRMWARE_INSTALL_IMAGES = YES
+
+define VERSAL_FIRMWARE_INSTALL_IMAGES_CMDS
+	$(foreach f,plm.elf psmfw.elf vpl_gen_fixed.pdi,\
+		$(INSTALL) -D -m 0755 $(@D)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_$(f) \
+			$(BINARIES_DIR)/$(BR2_PACKAGE_VERSAL_FIRMWARE_BOARD)_$(f)
+	)
+endef
+
+$(eval $(generic-package))
-- 
2.17.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig
  2022-11-09  9:12 [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package Neal Frager via buildroot
@ 2022-11-09  9:12 ` Neal Frager via buildroot
  2022-11-09 14:56   ` Luca Ceresoli via buildroot
  2022-11-09 14:42 ` [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package Luca Ceresoli via buildroot
  1 sibling, 1 reply; 8+ messages in thread
From: Neal Frager via buildroot @ 2022-11-09  9:12 UTC (permalink / raw)
  To: buildroot
  Cc: terry.oneal, luca.ceresoli, kris.chaplin, thomas.petazzoni,
	Neal Frager, michal.simek

This patch adds support for Xilinx Versal VCK190 evaluation board.

VCK190 features can be found here:
https://www.xilinx.com/products/boards-and-kits/vck190.html

The VCK190 is based on the Xilinx Versal family:
https://www.xilinx.com/products/silicon-devices/acap/versal.html

The VC1902 included with the VCK190 evaluation board has Xilinx
AI Engine acclerators designed for accelerating machine learning
applications.  Also included is an upgrade from prior Zynq and
ZynqMP families to ARM Cortex-A72 cores.

While the Linux kernel for Versal is quite similar to ZynqMP,
the boot process has significantly changed.

Triple-redundant MicroBlaze cores are used to boot and setup
Versal devices.  For this reason, current buildroot support
will download pre-built firmware images and use Xilinx bootgen
to generate the boot.bin for the vck190.

Signed-off-by: Neal Frager <neal.frager@amd.com>
---
V1->V2:
  - removed uboot.fragment and using BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS instead
  - squashed versal_vck190_defconfig and board files into single patch
V2->V3:
  - correct console name to ttyAMA0
  - added necessary extlinux.conf append flags
V3->V4:
  - switch to stripped u-boot.elf binary
  - clean up bootgen.bif file format
---
 DEVELOPERS                      |  2 ++
 board/versal/genimage.cfg       | 30 ++++++++++++++++++
 board/versal/post-build.sh      | 16 ++++++++++
 board/versal/post-image.sh      | 35 +++++++++++++++++++++
 board/versal/readme.txt         | 54 +++++++++++++++++++++++++++++++++
 configs/versal_vck190_defconfig | 38 +++++++++++++++++++++++
 6 files changed, 175 insertions(+)
 create mode 100644 board/versal/genimage.cfg
 create mode 100755 board/versal/post-build.sh
 create mode 100755 board/versal/post-image.sh
 create mode 100644 board/versal/readme.txt
 create mode 100644 configs/versal_vck190_defconfig

diff --git a/DEVELOPERS b/DEVELOPERS
index 6ef52df15e..b6efeec012 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -2150,9 +2150,11 @@ F:	package/pkg-qmake.mk
 F:	package/qt5/qt5opcua/
 
 N:	Neal Frager <neal.frager@amd.com>
+F:	board/versal/
 F:	board/zynq/
 F:	board/zynqmp/
 F:	board/zynqmp/kria/
+F:	configs/versal_vck190_defconfig
 F:	configs/zynq_zc706_defconfig
 F:	configs/zynqmp_zcu102_defconfig
 F:	configs/zynqmp_zcu106_defconfig
diff --git a/board/versal/genimage.cfg b/board/versal/genimage.cfg
new file mode 100644
index 0000000000..d994d3a2bf
--- /dev/null
+++ b/board/versal/genimage.cfg
@@ -0,0 +1,30 @@
+image boot.vfat {
+	vfat {
+		files = {
+			"boot.bin",
+			"system.dtb",
+			"Image"
+		}
+		file extlinux/extlinux.conf {
+			image = extlinux.conf
+		}
+	}
+
+	size = 32M
+}
+
+image sdcard.img {
+	hdimage {
+	}
+
+	partition boot {
+		partition-type = 0xC
+		bootable = "true"
+		image = "boot.vfat"
+	}
+
+	partition rootfs {
+		partition-type = 0x83
+		image = "rootfs.ext4"
+	}
+}
diff --git a/board/versal/post-build.sh b/board/versal/post-build.sh
new file mode 100755
index 0000000000..ff8f8a6071
--- /dev/null
+++ b/board/versal/post-build.sh
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+# genimage will need to find the extlinux.conf
+# in the binaries directory
+
+BOARD_DIR="$(dirname $0)"
+CONSOLE=$2
+ROOT=$3
+
+mkdir -p "${BINARIES_DIR}"
+cat <<-__HEADER_EOF > "${BINARIES_DIR}/extlinux.conf"
+	label linux
+	  kernel /Image
+	  devicetree /system.dtb
+	  append console=${CONSOLE} clk_ignore_unused root=/dev/${ROOT} rw rootwait
+	__HEADER_EOF
diff --git a/board/versal/post-image.sh b/board/versal/post-image.sh
new file mode 100755
index 0000000000..890522c31d
--- /dev/null
+++ b/board/versal/post-image.sh
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+# By default U-Boot loads DTB from a file named "system.dtb", so
+# let's use a symlink with that name that points to the *first*
+# devicetree listed in the config.
+
+FIRST_DT=$(sed -nr \
+               -e 's|^BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/([-_/[:alnum:]\\.]*).*"$|\1|p' \
+               ${BR2_CONFIG})
+
+[ -z "${FIRST_DT}" ] || ln -fs ${FIRST_DT}.dtb ${BINARIES_DIR}/system.dtb
+
+BOARD_DIR="$(dirname $0)"
+BOARD_NAME=$4
+
+mkdir -p "${BINARIES_DIR}"
+cat <<-__HEADER_EOF > "${BINARIES_DIR}/bootgen.bif"
+	the_ROM_image:
+	{
+	  image {
+	    { type=bootimage, file=${BINARIES_DIR}/${BOARD_NAME}_vpl_gen_fixed.pdi }
+	    { type=bootloader, file=${BINARIES_DIR}/${BOARD_NAME}_plm.elf }
+	    { core=psm, file=${BINARIES_DIR}/${BOARD_NAME}_psmfw.elf }
+	  }
+	  image {
+	    id = 0x1c000000, name=apu_subsystem 
+	    { type=raw, load=0x00001000, file=${BINARIES_DIR}/system.dtb }
+	    { core=a72-0, exception_level=el-3, trustzone, file=${BINARIES_DIR}/bl31.elf }
+	    { core=a72-0, exception_level=el-2, file=${BINARIES_DIR}/u-boot.elf }
+	  }
+	}
+	__HEADER_EOF
+
+${HOST_DIR}/bin/bootgen -arch versal -image ${BINARIES_DIR}/bootgen.bif -o ${BINARIES_DIR}/boot.bin -w on
+support/scripts/genimage.sh -c ${BOARD_DIR}/genimage.cfg
diff --git a/board/versal/readme.txt b/board/versal/readme.txt
new file mode 100644
index 0000000000..9f234be620
--- /dev/null
+++ b/board/versal/readme.txt
@@ -0,0 +1,54 @@
+******************************************
+Xilinx VCK190 board - Versal
+******************************************
+
+This document describes the Buildroot support for the VCK190
+board by Xilinx, based on Versal.  It has been tested with the 
+VCK190 production board.
+
+Evaluation board features can be found here with the link below.
+
+VCK190:
+https://www.xilinx.com/products/boards-and-kits/vck190.html
+
+
+How to build it
+===============
+
+Configure Buildroot:
+
+    $ make versal_vck190_defconfig
+
+Compile everything and build the rootfs image:
+
+    $ make
+
+Result of the build
+-------------------
+
+After building, you should get a tree like this:
+
+    output/images/
+    +-- boot.bin
+    +-- boot.vfat
+    +-- Image
+    +-- rootfs.ext2
+    +-- rootfs.ext4 -> rootfs.ext2
+    +-- sdcard.img
+    +-- system.dtb -> versal-vck190-rev1.1.dtb
+    `-- versal-vck190-rev1.1.dtb
+
+How to write the SD card
+========================
+
+WARNING! This will destroy all the card content. Use with care!
+
+The sdcard.img file is a complete bootable image ready to be written
+on the boot medium. To install it, simply copy the image to an SD
+card:
+
+    # dd if=output/images/sdcard.img of=/dev/sdX
+
+Where 'sdX' is the device node of the SD.
+
+Eject the SD card, insert it in the board, and power it up.
diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig
new file mode 100644
index 0000000000..8c5d391b97
--- /dev/null
+++ b/configs/versal_vck190_defconfig
@@ -0,0 +1,38 @@
+BR2_aarch64=y
+BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
+BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh"
+BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh"
+BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
+BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz"
+BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal"
+BR2_LINUX_KERNEL_DTS_SUPPORT=y
+BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1"
+BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
+BR2_TARGET_ROOTFS_EXT2=y
+BR2_TARGET_ROOTFS_EXT2_4=y
+# BR2_TARGET_ROOTFS_TAR is not set
+BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal"
+BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
+BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
+BR2_TARGET_UBOOT=y
+BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
+BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz"
+BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt"
+BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1"
+BR2_TARGET_UBOOT_NEEDS_DTC=y
+BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
+BR2_TARGET_UBOOT_FORMAT_ELF=y
+BR2_PACKAGE_VERSAL_FIRMWARE=y
+BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="v2022.2"
+BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"
+BR2_PACKAGE_HOST_DOSFSTOOLS=y
+BR2_PACKAGE_HOST_GENIMAGE=y
+BR2_PACKAGE_HOST_MTOOLS=y
+BR2_PACKAGE_HOST_BOOTGEN=y
-- 
2.17.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package
  2022-11-09  9:12 [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package Neal Frager via buildroot
  2022-11-09  9:12 ` [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig Neal Frager via buildroot
@ 2022-11-09 14:42 ` Luca Ceresoli via buildroot
  1 sibling, 0 replies; 8+ messages in thread
From: Luca Ceresoli via buildroot @ 2022-11-09 14:42 UTC (permalink / raw)
  To: Neal Frager
  Cc: terry.oneal, kris.chaplin, thomas.petazzoni, buildroot, michal.simek

Hi Neal,

On Wed, 9 Nov 2022 02:12:13 -0700
Neal Frager <neal.frager@amd.com> wrote:

> This patch adds support for downloading versal microblaze firmware binaries.
> These are necessary for booting Xilinx versal devices.
> 
> The location of these binaries is temporary, and will soon be added to the
> Xilinx firmware repository.  The temporary location is using the same free
> distribution license as the Xilinx firmware repository.
> 
> Once these files are available on the Xilinx repository, this package will
> be updated to the new location.
> 
> Signed-off-by: Neal Frager <neal.frager@amd.com>

Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>

-- 
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig
  2022-11-09  9:12 ` [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig Neal Frager via buildroot
@ 2022-11-09 14:56   ` Luca Ceresoli via buildroot
  2022-11-09 15:10     ` Frager, Neal via buildroot
  0 siblings, 1 reply; 8+ messages in thread
From: Luca Ceresoli via buildroot @ 2022-11-09 14:56 UTC (permalink / raw)
  To: Neal Frager
  Cc: terry.oneal, kris.chaplin, thomas.petazzoni, buildroot, michal.simek

On Wed, 9 Nov 2022 02:12:14 -0700
Neal Frager <neal.frager@amd.com> wrote:

> This patch adds support for Xilinx Versal VCK190 evaluation board.
> 
> VCK190 features can be found here:
> https://www.xilinx.com/products/boards-and-kits/vck190.html
> 
> The VCK190 is based on the Xilinx Versal family:
> https://www.xilinx.com/products/silicon-devices/acap/versal.html
> 
> The VC1902 included with the VCK190 evaluation board has Xilinx
> AI Engine acclerators designed for accelerating machine learning
> applications.  Also included is an upgrade from prior Zynq and
> ZynqMP families to ARM Cortex-A72 cores.
> 
> While the Linux kernel for Versal is quite similar to ZynqMP,
> the boot process has significantly changed.
> 
> Triple-redundant MicroBlaze cores are used to boot and setup
> Versal devices.  For this reason, current buildroot support
> will download pre-built firmware images and use Xilinx bootgen
> to generate the boot.bin for the vck190.
> 
> Signed-off-by: Neal Frager <neal.frager@amd.com>

[...]

> diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig
> new file mode 100644
> index 0000000000..8c5d391b97
> --- /dev/null
> +++ b/configs/versal_vck190_defconfig
> @@ -0,0 +1,38 @@
> +BR2_aarch64=y
> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh"
> +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh"
> +BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190"
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz"
> +BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal"
> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1"
> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> +BR2_TARGET_ROOTFS_EXT2=y
> +BR2_TARGET_ROOTFS_EXT2_4=y
> +# BR2_TARGET_ROOTFS_TAR is not set
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal"
> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y
> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
> +BR2_TARGET_UBOOT=y
> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
> +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz"
> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt"
> +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1"
> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
> +BR2_TARGET_UBOOT_FORMAT_ELF=y
> +BR2_PACKAGE_VERSAL_FIRMWARE=y
> +BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="v2022.2"
> +BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"

These two lines should be removed. They hold the default values after
it has been added to patch 1.

If you send a new verison with only that fixed you can add:
 Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>

-- 
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig
  2022-11-09 14:56   ` Luca Ceresoli via buildroot
@ 2022-11-09 15:10     ` Frager, Neal via buildroot
  2022-11-09 15:48       ` Luca Ceresoli via buildroot
  0 siblings, 1 reply; 8+ messages in thread
From: Frager, Neal via buildroot @ 2022-11-09 15:10 UTC (permalink / raw)
  To: Luca Ceresoli
  Cc: O'Neal, Terry, Chaplin, Kris, thomas.petazzoni, buildroot,
	Simek, Michal

Hi Luca,

> Le 9 nov. 2022 à 15:56, Luca Ceresoli <luca.ceresoli@bootlin.com> a écrit :
> 
> On Wed, 9 Nov 2022 02:12:14 -0700
> Neal Frager <neal.frager@amd.com> wrote:
> 
>> This patch adds support for Xilinx Versal VCK190 evaluation board.
>> 
>> VCK190 features can be found here:
>> https://www.xilinx.com/products/boards-and-kits/vck190.html
>> 
>> The VCK190 is based on the Xilinx Versal family:
>> https://www.xilinx.com/products/silicon-devices/acap/versal.html
>> 
>> The VC1902 included with the VCK190 evaluation board has Xilinx
>> AI Engine acclerators designed for accelerating machine learning
>> applications.  Also included is an upgrade from prior Zynq and
>> ZynqMP families to ARM Cortex-A72 cores.
>> 
>> While the Linux kernel for Versal is quite similar to ZynqMP,
>> the boot process has significantly changed.
>> 
>> Triple-redundant MicroBlaze cores are used to boot and setup
>> Versal devices.  For this reason, current buildroot support
>> will download pre-built firmware images and use Xilinx bootgen
>> to generate the boot.bin for the vck190.
>> 
>> Signed-off-by: Neal Frager <neal.frager@amd.com>
> 
> [...]
> 
>> diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig
>> new file mode 100644
>> index 0000000000..8c5d391b97
>> --- /dev/null
>> +++ b/configs/versal_vck190_defconfig
>> @@ -0,0 +1,38 @@
>> +BR2_aarch64=y
>> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
>> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh"
>> +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh"
>> +BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190"
>> +BR2_LINUX_KERNEL=y
>> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
>> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz"
>> +BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal"
>> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
>> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1"
>> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
>> +BR2_TARGET_ROOTFS_EXT2=y
>> +BR2_TARGET_ROOTFS_EXT2_4=y
>> +# BR2_TARGET_ROOTFS_TAR is not set
>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz"
>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal"
>> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y
>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
>> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
>> +BR2_TARGET_UBOOT=y
>> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
>> +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
>> +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz"
>> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt"
>> +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1"
>> +BR2_TARGET_UBOOT_NEEDS_DTC=y
>> +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
>> +BR2_TARGET_UBOOT_FORMAT_ELF=y
>> +BR2_PACKAGE_VERSAL_FIRMWARE=y
>> +BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="v2022.2"
>> +BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"
> 
> These two lines should be removed. They hold the default values after
> it has been added to patch 1.

While functionally, you are correct that I can remove these two lines, I am not sure it is the right thing to do.

I designed these patches with the idea of supporting additional versal boards in the future.  When a second board gets supported, it would make more sense for each defconfig be designed for the specific board.

I only created a default, so that the package would always build, even with tests where these parameters are not defined.  But in reality, I would like users to always specify these parameters to get the right boot firmware files for their board.

One thing I could do is get rid of the version definition in the defconfig file and let that just be default (latest) unless specified otherwise by a user.

Would you be ok if I only remove the version config in v5 and keep the board config?

> 
> If you send a new verison with only that fixed you can add:
> Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>
> 
> -- 
> Luca Ceresoli, Bootlin
> Embedded Linux and Kernel engineering
> https://bootlin.com

Best regards,
Neal Frager
AMD
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig
  2022-11-09 15:10     ` Frager, Neal via buildroot
@ 2022-11-09 15:48       ` Luca Ceresoli via buildroot
  2022-11-10  8:56         ` Frager, Neal via buildroot
  2022-11-21  9:13         ` Frager, Neal via buildroot
  0 siblings, 2 replies; 8+ messages in thread
From: Luca Ceresoli via buildroot @ 2022-11-09 15:48 UTC (permalink / raw)
  To: Frager, Neal
  Cc: O'Neal, Terry, Chaplin, Kris, thomas.petazzoni, buildroot,
	Simek, Michal

On Wed, 9 Nov 2022 15:10:27 +0000
"Frager, Neal" <neal.frager@amd.com> wrote:

> Hi Luca,
> 
> > Le 9 nov. 2022 à 15:56, Luca Ceresoli <luca.ceresoli@bootlin.com> a écrit :
> > 
> > On Wed, 9 Nov 2022 02:12:14 -0700
> > Neal Frager <neal.frager@amd.com> wrote:
> >   
> >> This patch adds support for Xilinx Versal VCK190 evaluation board.
> >> 
> >> VCK190 features can be found here:
> >> https://www.xilinx.com/products/boards-and-kits/vck190.html
> >> 
> >> The VCK190 is based on the Xilinx Versal family:
> >> https://www.xilinx.com/products/silicon-devices/acap/versal.html
> >> 
> >> The VC1902 included with the VCK190 evaluation board has Xilinx
> >> AI Engine acclerators designed for accelerating machine learning
> >> applications.  Also included is an upgrade from prior Zynq and
> >> ZynqMP families to ARM Cortex-A72 cores.
> >> 
> >> While the Linux kernel for Versal is quite similar to ZynqMP,
> >> the boot process has significantly changed.
> >> 
> >> Triple-redundant MicroBlaze cores are used to boot and setup
> >> Versal devices.  For this reason, current buildroot support
> >> will download pre-built firmware images and use Xilinx bootgen
> >> to generate the boot.bin for the vck190.
> >> 
> >> Signed-off-by: Neal Frager <neal.frager@amd.com>  
> > 
> > [...]
> >   
> >> diff --git a/configs/versal_vck190_defconfig b/configs/versal_vck190_defconfig
> >> new file mode 100644
> >> index 0000000000..8c5d391b97
> >> --- /dev/null
> >> +++ b/configs/versal_vck190_defconfig
> >> @@ -0,0 +1,38 @@
> >> +BR2_aarch64=y
> >> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
> >> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh"
> >> +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh"
> >> +BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190"
> >> +BR2_LINUX_KERNEL=y
> >> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> >> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz"
> >> +BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal"
> >> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> >> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1"
> >> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> >> +BR2_TARGET_ROOTFS_EXT2=y
> >> +BR2_TARGET_ROOTFS_EXT2_4=y
> >> +# BR2_TARGET_ROOTFS_TAR is not set
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz"
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal"
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y
> >> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> >> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
> >> +BR2_TARGET_UBOOT=y
> >> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> >> +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
> >> +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz"
> >> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt"
> >> +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1"
> >> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> >> +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
> >> +BR2_TARGET_UBOOT_FORMAT_ELF=y
> >> +BR2_PACKAGE_VERSAL_FIRMWARE=y
> >> +BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="v2022.2"
> >> +BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"  
> > 
> > These two lines should be removed. They hold the default values after
> > it has been added to patch 1.  
> 
> While functionally, you are correct that I can remove these two lines, I am not sure it is the right thing to do.
> 
> I designed these patches with the idea of supporting additional versal boards in the future.  When a second board gets supported, it would make more sense for each defconfig be designed for the specific board.
> 
> I only created a default, so that the package would always build, even with tests where these parameters are not defined.  But in reality, I would like users to always specify these parameters to get the right boot firmware files for their board.
> 
> One thing I could do is get rid of the version definition in the defconfig file and let that just be default (latest) unless specified otherwise by a user.

Thinking twice about that I think you have a good point here, at least
for the version whose default is likely to change in the future. So you
can leave it as is, forget about my comment.

Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>

-- 
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig
  2022-11-09 15:48       ` Luca Ceresoli via buildroot
@ 2022-11-10  8:56         ` Frager, Neal via buildroot
  2022-11-21  9:13         ` Frager, Neal via buildroot
  1 sibling, 0 replies; 8+ messages in thread
From: Frager, Neal via buildroot @ 2022-11-10  8:56 UTC (permalink / raw)
  To: Luca Ceresoli
  Cc: O'Neal, Terry, Chaplin, Kris, thomas.petazzoni, buildroot,
	Simek, Michal

Hi Luca,

> Hi Luca,
> 
> > Le 9 nov. 2022 à 15:56, Luca Ceresoli <luca.ceresoli@bootlin.com> a écrit :
> > 
> > On Wed, 9 Nov 2022 02:12:14 -0700
> > Neal Frager <neal.frager@amd.com> wrote:
> >   
> >> This patch adds support for Xilinx Versal VCK190 evaluation board.
> >> 
> >> VCK190 features can be found here:
> >> https://www.xilinx.com/products/boards-and-kits/vck190.html
> >> 
> >> The VCK190 is based on the Xilinx Versal family:
> >> https://www.xilinx.com/products/silicon-devices/acap/versal.html
> >> 
> >> The VC1902 included with the VCK190 evaluation board has Xilinx AI 
> >> Engine acclerators designed for accelerating machine learning 
> >> applications.  Also included is an upgrade from prior Zynq and 
> >> ZynqMP families to ARM Cortex-A72 cores.
> >> 
> >> While the Linux kernel for Versal is quite similar to ZynqMP, the 
> >> boot process has significantly changed.
> >> 
> >> Triple-redundant MicroBlaze cores are used to boot and setup Versal 
> >> devices.  For this reason, current buildroot support will download 
> >> pre-built firmware images and use Xilinx bootgen to generate the 
> >> boot.bin for the vck190.
> >> 
> >> Signed-off-by: Neal Frager <neal.frager@amd.com>
> > 
> > [...]
> >   
> >> diff --git a/configs/versal_vck190_defconfig 
> >> b/configs/versal_vck190_defconfig new file mode 100644 index 
> >> 0000000000..8c5d391b97
> >> --- /dev/null
> >> +++ b/configs/versal_vck190_defconfig
> >> @@ -0,0 +1,38 @@
> >> +BR2_aarch64=y
> >> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
> >> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh"
> >> +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh"
> >> +BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190"
> >> +BR2_LINUX_KERNEL=y
> >> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> >> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz"
> >> +BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal"
> >> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> >> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1"
> >> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> >> +BR2_TARGET_ROOTFS_EXT2=y
> >> +BR2_TARGET_ROOTFS_EXT2_4=y
> >> +# BR2_TARGET_ROOTFS_TAR is not set 
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz"
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal"
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y
> >> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> >> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
> >> +BR2_TARGET_UBOOT=y
> >> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> >> +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
> >> +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz"
> >> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt"
> >> +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1"
> >> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> >> +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
> >> +BR2_TARGET_UBOOT_FORMAT_ELF=y
> >> +BR2_PACKAGE_VERSAL_FIRMWARE=y
> >> +BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="v2022.2"
> >> +BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"  
> > 
> > These two lines should be removed. They hold the default values 
> > after it has been added to patch 1.
> 
> While functionally, you are correct that I can remove these two lines, I am not sure it is the right thing to do.
> 
> I designed these patches with the idea of supporting additional versal boards in the future.  When a second board gets supported, it would make more sense for each defconfig be designed for the specific board.
> 
> I only created a default, so that the package would always build, even with tests where these parameters are not defined.  But in reality, I would like users to always specify these parameters to get the right boot firmware files for their board.
> 
> One thing I could do is get rid of the version definition in the defconfig file and let that just be default (latest) unless specified otherwise by a user.

> Thinking twice about that I think you have a good point here, at least for the version whose default is likely to change in the future. So you can leave it as is, forget about my comment.

> Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>

Thank you Luca.  I agree that keeping these configurations in the config file is probably for the best.  The package/versal-firmware can be updated completely independently of the config files this way, as well.
There is no risk to an issue with the config file due to a change in the package default values this way.

Also, before we commit this patch, please note that it is dependent on the following patch since it uses the stripped u-boot.elf binary for generating the boot.bin.
https://patchwork.ozlabs.org/project/buildroot/patch/20221108200704.23955-1-neal.frager@amd.com/

Best regards,
Neal Frager
AMD





_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

* Re: [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig
  2022-11-09 15:48       ` Luca Ceresoli via buildroot
  2022-11-10  8:56         ` Frager, Neal via buildroot
@ 2022-11-21  9:13         ` Frager, Neal via buildroot
  1 sibling, 0 replies; 8+ messages in thread
From: Frager, Neal via buildroot @ 2022-11-21  9:13 UTC (permalink / raw)
  To: Luca Ceresoli, buildroot, thomas.petazzoni, peter, Simek, Michal,
	Chaplin, Kris, O'Neal, Terry

Hello everyone

Just a friendly reminder.  Any additional feedback regarding this patch set?

> Hi Luca,
> 
> > Le 9 nov. 2022 à 15:56, Luca Ceresoli <luca.ceresoli@bootlin.com> a écrit :
> > 
> > On Wed, 9 Nov 2022 02:12:14 -0700
> > Neal Frager <neal.frager@amd.com> wrote:
> >   
> >> This patch adds support for Xilinx Versal VCK190 evaluation board.
> >> 
> >> VCK190 features can be found here:
> >> https://www.xilinx.com/products/boards-and-kits/vck190.html
> >> 
> >> The VCK190 is based on the Xilinx Versal family:
> >> https://www.xilinx.com/products/silicon-devices/acap/versal.html
> >> 
> >> The VC1902 included with the VCK190 evaluation board has Xilinx AI 
> >> Engine acclerators designed for accelerating machine learning 
> >> applications.  Also included is an upgrade from prior Zynq and 
> >> ZynqMP families to ARM Cortex-A72 cores.
> >> 
> >> While the Linux kernel for Versal is quite similar to ZynqMP, the 
> >> boot process has significantly changed.
> >> 
> >> Triple-redundant MicroBlaze cores are used to boot and setup Versal 
> >> devices.  For this reason, current buildroot support will download 
> >> pre-built firmware images and use Xilinx bootgen to generate the 
> >> boot.bin for the vck190.
> >> 
> >> Signed-off-by: Neal Frager <neal.frager@amd.com>
> > 
> > [...]
> >   
> >> diff --git a/configs/versal_vck190_defconfig 
> >> b/configs/versal_vck190_defconfig new file mode 100644 index 
> >> 0000000000..8c5d391b97
> >> --- /dev/null
> >> +++ b/configs/versal_vck190_defconfig
> >> @@ -0,0 +1,38 @@
> >> +BR2_aarch64=y
> >> +BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_5_15=y
> >> +BR2_ROOTFS_POST_BUILD_SCRIPT="board/versal/post-build.sh"
> >> +BR2_ROOTFS_POST_IMAGE_SCRIPT="board/versal/post-image.sh"
> >> +BR2_ROOTFS_POST_SCRIPT_ARGS="ttyAMA0,115200 mmcblk0p2 vck190"
> >> +BR2_LINUX_KERNEL=y
> >> +BR2_LINUX_KERNEL_CUSTOM_TARBALL=y
> >> +BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,linux-xlnx,xlnx_rebase_v5.15_LTS_2022.2)/xlnx_rebase_v5.15_LTS_2022.2.tar.gz"
> >> +BR2_LINUX_KERNEL_DEFCONFIG="xilinx_versal"
> >> +BR2_LINUX_KERNEL_DTS_SUPPORT=y
> >> +BR2_LINUX_KERNEL_INTREE_DTS_NAME="xilinx/versal-vck190-rev1.1"
> >> +BR2_LINUX_KERNEL_NEEDS_HOST_OPENSSL=y
> >> +BR2_TARGET_ROOTFS_EXT2=y
> >> +BR2_TARGET_ROOTFS_EXT2_4=y
> >> +# BR2_TARGET_ROOTFS_TAR is not set 
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE=y
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL=y
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,arm-trusted-firmware,xlnx_rebase_v2.6_2022.2)/xlnx_rebase_v2.6_2022.2.tar.gz"
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_PLATFORM="versal"
> >> +BR2_TARGET_ARM_TRUSTED_FIRMWARE_BL31_UBOOT=y
> >> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31=y
> >> +BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF=y
> >> +BR2_TARGET_UBOOT=y
> >> +BR2_TARGET_UBOOT_BUILD_SYSTEM_KCONFIG=y
> >> +BR2_TARGET_UBOOT_CUSTOM_TARBALL=y
> >> +BR2_TARGET_UBOOT_CUSTOM_TARBALL_LOCATION="$(call github,Xilinx,u-boot-xlnx,xlnx_rebase_v2022.01_2022.2)/xlnx_rebase_v2022.01_2022.2.tar.gz"
> >> +BR2_TARGET_UBOOT_BOARD_DEFCONFIG="xilinx_versal_virt"
> >> +BR2_TARGET_UBOOT_CUSTOM_MAKEOPTS="DEVICE_TREE=versal-vck190-rev1.1"
> >> +BR2_TARGET_UBOOT_NEEDS_DTC=y
> >> +BR2_TARGET_UBOOT_NEEDS_OPENSSL=y
> >> +BR2_TARGET_UBOOT_FORMAT_ELF=y
> >> +BR2_PACKAGE_VERSAL_FIRMWARE=y
> >> +BR2_PACKAGE_VERSAL_FIRMWARE_VERSION="v2022.2"
> >> +BR2_PACKAGE_VERSAL_FIRMWARE_BOARD="vck190"  
> > 
> > These two lines should be removed. They hold the default values 
> > after it has been added to patch 1.
> 
> While functionally, you are correct that I can remove these two lines, I am not sure it is the right thing to do.
> 
> I designed these patches with the idea of supporting additional versal boards in the future.  When a second board gets supported, it would make more sense for each defconfig be designed for the specific board.
> 
> I only created a default, so that the package would always build, even with tests where these parameters are not defined.  But in reality, I would like users to always specify these parameters to get the right boot firmware files for their board.
> 
> One thing I could do is get rid of the version definition in the defconfig file and let that just be default (latest) unless specified otherwise by a user.

> Thinking twice about that I think you have a good point here, at least for the version whose default is likely to change in the future. So you can leave it as is, forget about my comment.

> Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com>

Best regards,
Neal Frager
AMD
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

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

end of thread, other threads:[~2022-11-21  9:13 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-09  9:12 [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package Neal Frager via buildroot
2022-11-09  9:12 ` [Buildroot] [PATCH v4 2/2] configs/versal_vck190: new defconfig Neal Frager via buildroot
2022-11-09 14:56   ` Luca Ceresoli via buildroot
2022-11-09 15:10     ` Frager, Neal via buildroot
2022-11-09 15:48       ` Luca Ceresoli via buildroot
2022-11-10  8:56         ` Frager, Neal via buildroot
2022-11-21  9:13         ` Frager, Neal via buildroot
2022-11-09 14:42 ` [Buildroot] [PATCH v4 1/2] package/versal-firmware: new package Luca Ceresoli via buildroot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.