This was intentional. You are supposed to define a new machine file that includes the generic machine of your choice, and then define the HDF_MACHINE for your BSP after that.

We are seeing too many people just modifying HDF_MACHINE in their local.conf file and getting unpredictable results as the YAML configuration and other values no longer match the configured system. This is leading to support questions. The correct behavior is to define your own machine that sets these after the included generic machine.

Note, we are also working on a tool that will generate the machine .conf file for you, based on your XSA file. Hopefully we can release an early version of the tool soon. But until then, see the README file:

https://github.com/Xilinx/meta-xilinx/blob/master/meta-xilinx-core/conf/machine/README


Also if you are only doing this in a local build, you can define a machine in the build directory as well.. i.e.:

build/conf/machine/my-example.conf:

#### Preamble
MACHINEOVERRIDES =. "${@['', 'my-example:']['my-example' != '${MACHINE}']}"
#### Regular settings follow

require conf/machine/zynqmp-ev-generic.conf

HDF_MACHINE = "my-example-machine"

#### No additional settings should be after the Postamble
#### Postamble
PACKAGE_EXTRA_ARCHS:append = "${@['', ' my_example']['my-example' != 
"${MACHINE}"]}"


--Mark

On 11/6/22 8:07 AM, Livius wrote:
From: Benjamin Szőke <[email protected]>

HDF_MACHINE value must be assigned in weak mode in generic.conf files to be 
able to use any own HDF_MACHINE value in a custom machine conf file, like was 
demonstrated in README.md of machines.
---
  meta-xilinx-core/conf/machine/microblaze-generic.conf | 2 +-
  meta-xilinx-core/conf/machine/versal-generic.conf     | 2 +-
  meta-xilinx-core/conf/machine/versal-net-generic.conf | 2 +-
  meta-xilinx-core/conf/machine/zynq-generic.conf       | 2 +-
  meta-xilinx-core/conf/machine/zynqmp-generic.conf     | 2 +-
  5 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/meta-xilinx-core/conf/machine/microblaze-generic.conf 
b/meta-xilinx-core/conf/machine/microblaze-generic.conf
index 92412681..d28d006a 100644
--- a/meta-xilinx-core/conf/machine/microblaze-generic.conf
+++ b/meta-xilinx-core/conf/machine/microblaze-generic.conf
@@ -46,7 +46,7 @@ UBOOT_MACHINE ?= "microblaze-generic_defconfig"
  UBOOT_INITIAL_ENV = ""
  BOOTMODE ?= "generic.root"
-HDF_MACHINE = "kc705-microblazeel"
+HDF_MACHINE ??= "kc705-microblazeel"
  IMAGE_FSTYPES += "cpio.gz"
QB_KERNEL_CMDLINE = "none"
diff --git a/meta-xilinx-core/conf/machine/versal-generic.conf 
b/meta-xilinx-core/conf/machine/versal-generic.conf
index 9b9ebf31..54a3e631 100644
--- a/meta-xilinx-core/conf/machine/versal-generic.conf
+++ b/meta-xilinx-core/conf/machine/versal-generic.conf
@@ -26,7 +26,7 @@ SERIAL_CONSOLES ?= "115200;ttyAMA0"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "device-tree" -HDF_MACHINE = "vck190-versal"
+HDF_MACHINE ??= "vck190-versal"
# Default SD image build onfiguration, use qemu-sd to pad
  IMAGE_CLASSES += "image-types-xilinx-qemu"
diff --git a/meta-xilinx-core/conf/machine/versal-net-generic.conf 
b/meta-xilinx-core/conf/machine/versal-net-generic.conf
index 1941235a..c0864a84 100644
--- a/meta-xilinx-core/conf/machine/versal-net-generic.conf
+++ b/meta-xilinx-core/conf/machine/versal-net-generic.conf
@@ -19,7 +19,7 @@ MACHINEOVERRIDES:class-native = "versal-net"
  MACHINEOVERRIDES:class-nativesdk = "versal-net"
  #### REMOVE THE ABOVE
-HDF_MACHINE = "versal-net-generic"
+HDF_MACHINE ??= "versal-net-generic"
QEMU_HW_DTB_PS = "${QEMU_HW_DTB_PATH}/board-versal-net-psx-spp-1.4.dtb"
  QEMU_HW_DTB_PMC = "${QEMU_HW_DTB_PATH}/board-versal-pmx-virt.dtb"
diff --git a/meta-xilinx-core/conf/machine/zynq-generic.conf 
b/meta-xilinx-core/conf/machine/zynq-generic.conf
index e8ecfb34..34e3eff7 100644
--- a/meta-xilinx-core/conf/machine/zynq-generic.conf
+++ b/meta-xilinx-core/conf/machine/zynq-generic.conf
@@ -31,7 +31,7 @@ IMAGE_BOOT_FILES += " \
                  boot.scr \
                  "
-HDF_MACHINE = "zc702-zynq7"
+HDF_MACHINE ??= "zc702-zynq7"
  IMAGE_CLASSES += "image-types-xilinx-qemu"
  # Add wic.qemu-sd only if initramfs_image not set due to circular dependecies
  IMAGE_FSTYPES += "${@'wic.qemu-sd' if (d.getVar('INITRAMFS_IMAGE') or '') == '' 
else 'cpio.gz'}"
diff --git a/meta-xilinx-core/conf/machine/zynqmp-generic.conf 
b/meta-xilinx-core/conf/machine/zynqmp-generic.conf
index 32de4d50..fbeb3a06 100644
--- a/meta-xilinx-core/conf/machine/zynqmp-generic.conf
+++ b/meta-xilinx-core/conf/machine/zynqmp-generic.conf
@@ -44,7 +44,7 @@ SERIAL_CONSOLES ?= "115200;ttyPS0"
  MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "device-tree"
# We need a generic one that works with QEMU...
-HDF_MACHINE = "zcu102-zynqmp"
+HDF_MACHINE ??= "zcu102-zynqmp"
EXTRA_IMAGEDEPENDS += " \
                u-boot-zynq-uenv \





-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#5077): 
https://lists.yoctoproject.org/g/meta-xilinx/message/5077
Mute This Topic: https://lists.yoctoproject.org/mt/94844586/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/meta-xilinx/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to