aboutsummaryrefslogtreecommitdiffstats
path: root/meta-xilinx-bsp/conf
diff options
context:
space:
mode:
Diffstat (limited to 'meta-xilinx-bsp/conf')
-rw-r--r--meta-xilinx-bsp/conf/layer.conf16
-rw-r--r--meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf50
-rw-r--r--meta-xilinx-bsp/conf/machine/include/machine-xilinx-default.inc87
-rw-r--r--meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc21
-rw-r--r--meta-xilinx-bsp/conf/machine/include/machine-xilinx-qemu.inc45
-rw-r--r--meta-xilinx-bsp/conf/machine/include/tune-versal.inc14
-rw-r--r--meta-xilinx-bsp/conf/machine/include/tune-zynq.inc19
-rw-r--r--meta-xilinx-bsp/conf/machine/include/tune-zynqmp.inc18
-rw-r--r--meta-xilinx-bsp/conf/machine/kc705-microblazeel.conf70
-rw-r--r--meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf50
-rw-r--r--meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-mh-div-generic.conf14
-rw-r--r--meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-ml-generic.conf14
-rw-r--r--meta-xilinx-bsp/conf/machine/microzed-zynq7.conf33
-rw-r--r--meta-xilinx-bsp/conf/machine/ml605-qemu-microblazeel.conf27
-rw-r--r--meta-xilinx-bsp/conf/machine/picozed-zynq7.conf37
-rw-r--r--meta-xilinx-bsp/conf/machine/qemu-zynq7.conf27
-rw-r--r--meta-xilinx-bsp/conf/machine/qemu-zynqmp-cg.conf42
-rw-r--r--meta-xilinx-bsp/conf/machine/qemu-zynqmp-dr.conf42
-rw-r--r--meta-xilinx-bsp/conf/machine/qemu-zynqmp-eg.conf42
-rw-r--r--meta-xilinx-bsp/conf/machine/qemu-zynqmp-ev.conf42
-rw-r--r--meta-xilinx-bsp/conf/machine/qemu-zynqmp.conf45
-rw-r--r--meta-xilinx-bsp/conf/machine/s3adsp1800-qemu-microblazeeb.conf24
-rw-r--r--meta-xilinx-bsp/conf/machine/vck190-versal.conf45
-rw-r--r--meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf50
-rw-r--r--meta-xilinx-bsp/conf/machine/vek280-versal.conf55
-rw-r--r--meta-xilinx-bsp/conf/machine/vmk180-versal.conf45
-rw-r--r--meta-xilinx-bsp/conf/machine/vpk120-versal.conf48
-rw-r--r--meta-xilinx-bsp/conf/machine/vpk180-versal.conf48
-rw-r--r--meta-xilinx-bsp/conf/machine/zc1254-zynqmp.conf33
-rw-r--r--meta-xilinx-bsp/conf/machine/zc1275-zynqmp.conf38
-rw-r--r--meta-xilinx-bsp/conf/machine/zc702-zynq7.conf90
-rw-r--r--meta-xilinx-bsp/conf/machine/zc706-zynq7.conf91
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf135
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu104-zynqmp.conf69
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf69
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu111-zynqmp.conf88
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu1275-zynqmp.conf52
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu1285-zynqmp.conf90
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf50
-rw-r--r--meta-xilinx-bsp/conf/machine/zcu216-zynqmp.conf50
-rw-r--r--meta-xilinx-bsp/conf/machine/zedboard-zynq7.conf36
-rw-r--r--meta-xilinx-bsp/conf/machine/zybo-linux-bd-zynq7.conf43
-rw-r--r--meta-xilinx-bsp/conf/machine/zybo-zynq7.conf37
-rw-r--r--meta-xilinx-bsp/conf/machine/zynq-generic.conf11
-rw-r--r--meta-xilinx-bsp/conf/machine/zynqmp-generic.conf15
45 files changed, 1150 insertions, 917 deletions
diff --git a/meta-xilinx-bsp/conf/layer.conf b/meta-xilinx-bsp/conf/layer.conf
index 437616cf..42990b73 100644
--- a/meta-xilinx-bsp/conf/layer.conf
+++ b/meta-xilinx-bsp/conf/layer.conf
@@ -5,13 +5,15 @@ BBPATH .= ":${LAYERDIR}"
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb"
BBFILES += "${LAYERDIR}/recipes-*/*/*.bbappend"
-BBFILE_COLLECTIONS += "xilinx"
-BBFILE_PATTERN_xilinx = "^${LAYERDIR}/"
-BBFILE_PRIORITY_xilinx = "5"
+BBFILES_DYNAMIC += " \
+xilinx-tools:${LAYERDIR}/dynamic-layers/meta-xilinx-tools/recipes-*/*/*.bb \
+xilinx-tools:${LAYERDIR}/dynamic-layers/meta-xilinx-tools/recipes-*/*/*.bbappend \
+"
-LAYERDEPENDS_xilinx = "core"
+BBFILE_COLLECTIONS += "xilinx-bsp"
+BBFILE_PATTERN_xilinx-bsp = "^${LAYERDIR}/"
+BBFILE_PRIORITY_xilinx-bsp = "5"
-LAYERSERIES_COMPAT_xilinx = "warrior"
-
-BB_DANGLINGAPPENDS_WARNONLY ?= "1"
+LAYERDEPENDS_xilinx-bsp = "xilinx"
+LAYERSERIES_COMPAT_xilinx-bsp = "scarthgap"
diff --git a/meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf b/meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf
new file mode 100644
index 00000000..27cb3939
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/ac701-microblazeel.conf
@@ -0,0 +1,50 @@
+#@TYPE: Machine
+#@NAME: ac701-microblazeel
+#@DESCRIPTION: Machine configuration for the AC701 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'ac701-microblazeel:']['ac701-microblazeel' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in microblazeel-generic.conf will be set.
+
+# Yocto AC701 device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "MIG_7SERIES_0"
+DT_PADDING_SIZE:pn-device-tree ?= "0x1000"
+DTC_FLAGS:pn-device-tree ?= ""
+XSCTH_PROC:pn-device-tree ?= "microblaze_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD ac701-full}"
+
+# Yocto FS-Boot variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "MIG_7SERIES_0"
+YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_quad_spi_0"
+XSCTH_PROC:pn-fs-boot ?= "microblaze_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x80000000"
+UBOOT_LOADADDRESS ?= "0x80000000"
+
+# ac701-microblazeel Serial Console
+SERIAL_CONSOLES ?= "115200;ttyUL0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Set DDR Base address for u-boot-xlnx-scr variables
+DDR_BASEADDR ?= "0x80000000"
+SKIP_APPEND_BASEADDR ?= "0"
+
+# Required generic machine inclusion
+require conf/machine/microblaze-generic.conf
+
+# This machine conf file uses ac701-microblazeel xsa as reference input.
+# User can override with ac701 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "ac701-microblazeel"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' ac701_microblazeel']['ac701-microblazeel' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-default.inc b/meta-xilinx-bsp/conf/machine/include/machine-xilinx-default.inc
deleted file mode 100644
index 1367e57a..00000000
--- a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-default.inc
+++ /dev/null
@@ -1,87 +0,0 @@
-# Default Xilinx BSP Machine settings
-
-MACHINE_FEATURES_BACKFILL_CONSIDERED += "rtc"
-
-# File System Configuration
-IMAGE_FSTYPES ?= "tar.gz cpio cpio.gz.u-boot"
-
-# Kernel Configuration
-XILINX_DEFAULT_KERNEL := "linux-xlnx"
-XILINX_DEFAULT_KERNEL_microblaze := "linux-yocto"
-XILINX_DEFAULT_KERNEL_zynqmp := "linux-yocto"
-PREFERRED_PROVIDER_virtual/kernel ??= "${XILINX_DEFAULT_KERNEL}"
-
-# U-Boot Configuration
-XILINX_DEFAULT_UBOOT := "u-boot-xlnx"
-XILINX_DEFAULT_UBOOT_zynqmp := "u-boot"
-PREFERRED_PROVIDER_virtual/bootloader ??= "${XILINX_DEFAULT_UBOOT}"
-PREFERRED_PROVIDER_virtual/boot-bin ??= "${PREFERRED_PROVIDER_virtual/bootloader}"
-
-UBOOT_SUFFIX ?= "img"
-UBOOT_SUFFIX_zynqmp ?= "bin"
-UBOOT_SUFFIX_microblaze ?= "bin"
-
-UBOOT_BINARY ?= "u-boot.${UBOOT_SUFFIX}"
-UBOOT_ELF ?= "u-boot"
-UBOOT_ELF_zynq ?= "u-boot.elf"
-UBOOT_ELF_aarch64 ?= "u-boot.elf"
-UBOOT_ELF_versal ?= "u-boot.elf"
-
-#Hardware accelaration
-PREFERRED_PROVIDER_virtual/libgles1_mali400 = "libmali-xlnx"
-PREFERRED_PROVIDER_virtual/libgles2_mali400 = "libmali-xlnx"
-PREFERRED_PROVIDER_virtual/egl_mali400 = "libmali-xlnx"
-PREFERRED_PROVIDER_virtual/libgl_mali400 = "mesa-gl"
-PREFERRED_PROVIDER_virtual/mesa_mali400 = "mesa-gl"
-
-# microblaze does not get on with pie for reasons not looked into as yet
-GCCPIE_microblaze = ""
-GLIBCPIE_microblaze = ""
-SECURITY_CFLAGS_microblaze = ""
-SECURITY_LDFLAGS_microblaze = ""
-
-XSERVER ?= " \
- xserver-xorg \
- xf86-input-evdev \
- xf86-input-mouse \
- xf86-input-keyboard \
- xf86-video-fbdev \
- ${XSERVER_EXT} \
- "
-
-IMAGE_BOOT_FILES ?= "${@get_default_image_boot_files(d)}"
-
-def get_default_image_boot_files(d):
- files = []
-
- # kernel images
- kerneltypes = set((d.getVar("KERNEL_IMAGETYPE") or "").split())
- kerneltypes |= set((d.getVar("KERNEL_IMAGETYPES") or "").split())
- for i in kerneltypes:
- files.append(i)
-
- # u-boot image
- if d.getVar("UBOOT_BINARY"):
- files.append(d.getVar("UBOOT_BINARY"))
-
- # device trees (device-tree only), these are first as they are likely desired over the kernel ones
- if "device-tree" in (d.getVar("MACHINE_ESSENTIAL_EXTRA_RDEPENDS") or ""):
- files.append("devicetree/*.dtb")
-
-
- # device trees (kernel only)
- if d.getVar("KERNEL_DEVICETREE"):
- dtbs = d.getVar("KERNEL_DEVICETREE").split(" ")
- dtbs = [os.path.basename(d) for d in dtbs]
- for dtb in dtbs:
- files.append(dtb)
-
- return " ".join(files)
-
-XSERVER_EXT ?= ""
-XSERVER_EXT_zynqmp ?= "xf86-video-armsoc"
-
-# For MicroBlaze default all microblaze machines to use GDB 7.7.1 (for gdbserver/gdb)
-PREFERRED_VERSION_gdb_microblaze = "7.7.1"
-
-FPGA_MNGR_RECONFIG_ENABLE ?= "${@bb.utils.contains('IMAGE_FEATURES', 'fpga-manager', '1', '0', d)}"
diff --git a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc b/meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc
deleted file mode 100644
index 30049bc0..00000000
--- a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-overrides.inc
+++ /dev/null
@@ -1,21 +0,0 @@
-SOC_VARIANT ??= ""
-MACHINEOVERRIDES =. "${@['', '${SOC_FAMILY}${SOC_VARIANT}:']['${SOC_VARIANT}' != '']}"
-
-# Here we can extend overrides for the corresponding family and variant
-def get_soc_overrides(fam, var, d):
- extender = ''
- if (fam == 'zynqmp'):
- if (var == 'eg'):
- extender = 'mali400:'
- elif (var == 'ev'):
- extender = 'mali400:vcu:'
- return extender
-
-# Gets OVERRIDES extender depending on the board
-SOC_OVERRIDES = "${@get_soc_overrides(d.getVar('SOC_FAMILY'),d.getVar('SOC_VARIANT'), d)}"
-
-MACHINEOVERRIDES =. "${SOC_OVERRIDES}"
-
-PACKAGE_EXTRA_ARCHS_append = " ${SOC_FAMILY}"
-PACKAGE_EXTRA_ARCHS_append = "${@['', ' ${SOC_FAMILY}${SOC_VARIANT}']['${SOC_VARIANT}' != '']}"
-
diff --git a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-qemu.inc b/meta-xilinx-bsp/conf/machine/include/machine-xilinx-qemu.inc
deleted file mode 100644
index 5eb4b5c4..00000000
--- a/meta-xilinx-bsp/conf/machine/include/machine-xilinx-qemu.inc
+++ /dev/null
@@ -1,45 +0,0 @@
-# This include is used to setup default QEMU and qemuboot config for meta-xilinx
-# machines.
-
-# depend on qemu-helper-native, which will depend on QEMU
-EXTRA_IMAGEDEPENDS += "qemu-helper-native"
-
-def qemu_default_dtb(d):
- if d.getVar("IMAGE_BOOT_FILES", True):
- dtbs = d.getVar("IMAGE_BOOT_FILES", True).split(" ")
- # IMAGE_BOOT_FILES has extra renaming info in the format '<source>;<target>'
- # Note: Wildcard sources work here only because runqemu expands them at run time
- dtbs = [f.split(";")[0] for f in dtbs]
- dtbs = [f for f in dtbs if f.endswith(".dtb")]
- if len(dtbs) != 0:
- return dtbs[0]
- return ""
-
-def qemu_default_serial(d):
- if d.getVar("SERIAL_CONSOLE", True):
- speed, console = d.getVar("SERIAL_CONSOLE", True).split(" ", 1)
- # zynqmp uses earlycon and stdout (in dtb)
- if "zynqmp" in d.getVar("MACHINEOVERRIDES", True).split(":"):
- return ""
- return "console=%s,%s earlyprintk" % (console, speed)
- return ""
-
-def qemu_target_binary(d):
- ta = d.getVar("TARGET_ARCH", True)
- if ta == "microblazeeb":
- ta = "microblaze"
- elif ta == "arm":
- ta = "aarch64"
- return "qemu-system-%s" % ta
-
-def qemu_zynqmp_unhalt(d, multiarch):
- if multiarch:
- return "-global xlnx,zynqmp-boot.cpu-num=0 -global xlnx,zynqmp-boot.use-pmufw=true"
- return "-device loader,addr=0xfd1a0104,data=0x8000000e,data-len=4 -device loader,addr=0xfd1a0104,data=0x8000000e,data-len=4"
-
-# For qemuboot, default setup across all machines in meta-xilinx
-QB_SYSTEM_NAME ?= "${@qemu_target_binary(d)}"
-QB_DEFAULT_FSTYPE ?= "cpio"
-QB_DTB ?= "${@qemu_default_dtb(d)}"
-QB_KERNEL_CMDLINE_APPEND ?= "${@qemu_default_serial(d)}"
-
diff --git a/meta-xilinx-bsp/conf/machine/include/tune-versal.inc b/meta-xilinx-bsp/conf/machine/include/tune-versal.inc
deleted file mode 100644
index 83acf6e0..00000000
--- a/meta-xilinx-bsp/conf/machine/include/tune-versal.inc
+++ /dev/null
@@ -1,14 +0,0 @@
-DEFAULTTUNE ?= "aarch64"
-SOC_FAMILY ?= "versal"
-
-# Available SOC_VARIANT's for versal:
-# virt
-
-SOC_VARIANT ?= ""
-
-require conf/machine/include/arm/arch-armv8.inc
-require conf/machine/include/soc-family.inc
-
-# Linux Configuration
-KERNEL_IMAGETYPE ?= "Image"
-
diff --git a/meta-xilinx-bsp/conf/machine/include/tune-zynq.inc b/meta-xilinx-bsp/conf/machine/include/tune-zynq.inc
deleted file mode 100644
index f7006026..00000000
--- a/meta-xilinx-bsp/conf/machine/include/tune-zynq.inc
+++ /dev/null
@@ -1,19 +0,0 @@
-DEFAULTTUNE ?= "cortexa9thf-neon"
-SOC_FAMILY ?= "zynq"
-
-# Available SOC_VARIANT's for zynq:
-# 7zs - Zynq-7000 Single A9 Core
-# 7z - Zynq-7000 Dual A9 Core
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-cortexa9.inc
-require conf/machine/include/soc-family.inc
-
-# Linux Configuration
-KERNEL_IMAGETYPE ?= "uImage"
-KERNEL_IMAGETYPES += "zImage"
-
-# Set default load address.
-# Override with KERNEL_EXTRA_ARGS_<board> += "..." in machine file if required
-KERNEL_EXTRA_ARGS_zynq += "UIMAGE_LOADADDR=0x8000"
diff --git a/meta-xilinx-bsp/conf/machine/include/tune-zynqmp.inc b/meta-xilinx-bsp/conf/machine/include/tune-zynqmp.inc
deleted file mode 100644
index cbfa47b8..00000000
--- a/meta-xilinx-bsp/conf/machine/include/tune-zynqmp.inc
+++ /dev/null
@@ -1,18 +0,0 @@
-DEFAULTTUNE ?= "aarch64"
-SOC_FAMILY ?= "zynqmp"
-
-# Available SOC_VARIANT's for zynqmp:
-# "cg" - Zynq UltraScale+ CG Devices
-# "eg" - Zynq UltraScale+ EG Devices
-# "ev" - Zynq UltraScale+ EV Devices
-
-SOC_VARIANT ?= "eg"
-
-require conf/machine/include/arm/arch-armv8a.inc
-require conf/machine/include/soc-family.inc
-
-# Linux Configuration
-KERNEL_IMAGETYPE ?= "Image"
-
-# Support multilib on zynqmp
-DEFAULTTUNE_virtclass-multilib-lib32 ?= "armv7vethf-neon-vfpv4"
diff --git a/meta-xilinx-bsp/conf/machine/kc705-microblazeel.conf b/meta-xilinx-bsp/conf/machine/kc705-microblazeel.conf
index d79e4efd..f3236f07 100644
--- a/meta-xilinx-bsp/conf/machine/kc705-microblazeel.conf
+++ b/meta-xilinx-bsp/conf/machine/kc705-microblazeel.conf
@@ -1,24 +1,50 @@
#@TYPE: Machine
#@NAME: kc705-microblazeel
-#@DESCRIPTION: Machine support for Xilinx KC705 Embedded Kit.
-#
-
-require conf/machine/include/tune-microblaze.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-TUNE_FEATURES_tune-microblaze += "v11.0 barrel-shift reorder pattern-compare multiply-high divide-hard"
-
-MACHINE_FEATURES = ""
-
-USE_VT = ""
-SERIAL_CONSOLE = "115200 ttyS0"
-
-KERNEL_IMAGETYPE ?= "linux.bin.ub"
-
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "device-tree"
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
-
-EXTRA_IMAGEDEPENDS += "virtual/bitstream virtual/bootloader"
-
-UBOOT_MACHINE ?= "microblaze-generic_config"
+#@DESCRIPTION: Machine configuration for the KC705 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'kc705-microblazeel:']['kc705-microblazeel' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in microblazeel-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "MIG_7SERIES_0"
+DT_PADDING_SIZE:pn-device-tree ?= "0x1000"
+DTC_FLAGS:pn-device-tree ?= ""
+XSCTH_PROC:pn-device-tree ?= "microblaze_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD kc705-full}"
+
+# Yocto FS-Boot variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "MIG_7SERIES_0"
+YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_emc_0"
+XSCTH_PROC:pn-fs-boot ?= "microblaze_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x80000000"
+UBOOT_LOADADDRESS ?= "0x80000000"
+
+# kc705-microblazeel Serial Console
+SERIAL_CONSOLES ?= "115200;ttyUL0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Set DDR Base address for u-boot-xlnx-scr variables
+DDR_BASEADDR ?= "0x80000000"
+SKIP_APPEND_BASEADDR ?= "0"
+
+# Required generic machine inclusion
+require conf/machine/microblaze-generic.conf
+
+# This machine conf file uses kc705-microblazeel xsa as reference input.
+# User can override with kc705 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "kc705-microblazeel"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' kc705_microblazeel']['kc705-microblazeel' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf b/meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf
new file mode 100644
index 00000000..a866f87c
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/kcu105-microblazeel.conf
@@ -0,0 +1,50 @@
+#@TYPE: Machine
+#@NAME: kcu105-microblazeel
+#@DESCRIPTION: Machine configuration for the KCU105 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'kcu105-microblazeel:']['kcu105-microblazeel' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in microblazeel-generic.conf will be set.
+
+# Yocto KCU105 device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "DDR4_0"
+DT_PADDING_SIZE:pn-device-tree ?= "0x1000"
+DTC_FLAGS:pn-device-tree ?= ""
+XSCTH_PROC:pn-device-tree ?= "microblaze_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD kcu105}"
+
+# Yocto FS-Boot variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "DDR4_0"
+YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_quad_spi_0"
+XSCTH_PROC:pn-fs-boot ?= "microblaze_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x80000000"
+UBOOT_LOADADDRESS ?= "0x80000000"
+
+# kcu105-microblazeel Serial Console
+SERIAL_CONSOLES ?= "115200;ttyUL0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Set DDR Base address for u-boot-xlnx-scr variables
+DDR_BASEADDR ?= "0x80000000"
+SKIP_APPEND_BASEADDR ?= "0"
+
+# Required generic machine inclusion
+require conf/machine/microblaze-generic.conf
+
+# This machine conf file uses kcu105-microblazeel xsa as reference input.
+# User can override with kcu105 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "kcu105-microblazeel"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' kcu105_microblazeel']['kcu105-microblazeel' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-mh-div-generic.conf b/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-mh-div-generic.conf
index 00aede11..96b4e6d1 100644
--- a/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-mh-div-generic.conf
+++ b/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-mh-div-generic.conf
@@ -2,16 +2,6 @@
#@NAME: microblazeel-v11.0-bs-cmp-mh-div-generic
#@DESCRIPTION: microblazeel-v11.0-bs-cmp-mh-div
-require conf/machine/include/tune-microblaze.inc
-require conf/machine/include/machine-xilinx-default.inc
+TUNE_FEATURES:tune-microblaze ?= "microblaze v11.0 barrel-shift pattern-compare reorder divide-hard multiply-high"
-TUNE_FEATURES_tune-microblaze += "v11.0 barrel-shift pattern-compare reorder divide-hard multiply-high"
-
-MACHINE_FEATURES = ""
-
-KERNEL_IMAGETYPE = "linux.bin.ub"
-KERNEL_IMAGETYPES = ""
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
-EXTRA_IMAGEDEPENDS += "libyaml-native python3-cython-native python3-pyyaml-native"
+require conf/machine/microblaze-generic.conf
diff --git a/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-ml-generic.conf b/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-ml-generic.conf
index 30afbd71..cf83acf8 100644
--- a/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-ml-generic.conf
+++ b/meta-xilinx-bsp/conf/machine/microblazeel-v11.0-bs-cmp-ml-generic.conf
@@ -2,16 +2,6 @@
#@NAME: microblazeel-v11.0-bs-cmp-ml-generic
#@DESCRIPTION: microblazeel-v11.0-bs-cmp-ml
-require conf/machine/include/tune-microblaze.inc
-require conf/machine/include/machine-xilinx-default.inc
+TUNE_FEATURES:tune-microblaze ?= "microblaze v11.0 barrel-shift reorder pattern-compare multiply-low"
-TUNE_FEATURES_tune-microblaze += "v11.0 barrel-shift reorder pattern-compare multiply-low"
-
-MACHINE_FEATURES = ""
-
-KERNEL_IMAGETYPE = "linux.bin.ub"
-KERNEL_IMAGETYPES = ""
-
-SERIAL_CONSOLE = "115200 ttyS0"
-
-EXTRA_IMAGEDEPENDS += "libyaml-native python3-cython-native python3-pyyaml-native"
+require conf/machine/microblaze-generic.conf
diff --git a/meta-xilinx-bsp/conf/machine/microzed-zynq7.conf b/meta-xilinx-bsp/conf/machine/microzed-zynq7.conf
deleted file mode 100644
index 83c5fc1e..00000000
--- a/meta-xilinx-bsp/conf/machine/microzed-zynq7.conf
+++ /dev/null
@@ -1,33 +0,0 @@
-#@TYPE: Machine
-#@NAME: microzed-zynq7
-#@DESCRIPTION: Machine support for microZed. (http://www.microzed.org/)
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "ext2 vfat usbhost"
-
-# u-boot configuration
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
-UBOOT_MACHINE = "zynq_microzed_config"
-SPL_BINARY ?= "spl/boot.bin"
-UBOOT_ELF_zynq = "u-boot"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-KERNEL_DEVICETREE = "zynq-microzed.dtb"
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- uEnv.txt \
- "
-
diff --git a/meta-xilinx-bsp/conf/machine/ml605-qemu-microblazeel.conf b/meta-xilinx-bsp/conf/machine/ml605-qemu-microblazeel.conf
deleted file mode 100644
index f4ddb6df..00000000
--- a/meta-xilinx-bsp/conf/machine/ml605-qemu-microblazeel.conf
+++ /dev/null
@@ -1,27 +0,0 @@
-#@TYPE: Machine
-#@NAME: ml605-qemu-microblazeel
-#@DESCRIPTION: MicroBlaze QEMU machine support ('petalogix-ml605' model)
-
-require conf/machine/include/tune-microblaze.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-TUNE_FEATURES_tune-microblaze += "v8.50 barrel-shift reorder pattern-compare divide-hard multiply-high fpu-hard"
-
-MACHINE_FEATURES = ""
-
-USE_VT = ""
-SERIAL_CONSOLE = "115200 ttyS0"
-
-KERNEL_IMAGETYPE ?= "linux.bin.ub"
-
-# Use the networking setup from qemuarm
-FILESOVERRIDES_append_pn-init-ifupdown = ":qemuarm"
-
-# This machine is a targeting a QEMU model, runqemu setup:
-IMAGE_CLASSES += "qemuboot"
-QB_MEM = "-m 256"
-QB_MACHINE = "-machine petalogix-ml605"
-QB_OPT_APPEND = "-nographic -serial mon:stdio"
-QB_NETWORK_DEVICE = "-net nic,netdev=net0,macaddr=@MAC@"
-
diff --git a/meta-xilinx-bsp/conf/machine/picozed-zynq7.conf b/meta-xilinx-bsp/conf/machine/picozed-zynq7.conf
deleted file mode 100644
index c229dac6..00000000
--- a/meta-xilinx-bsp/conf/machine/picozed-zynq7.conf
+++ /dev/null
@@ -1,37 +0,0 @@
-#@TYPE: Machine
-#@NAME: picozed-zynq7
-#@DESCRIPTION: Machine support for picoZed. (http://www.picozed.org/)
-#
-# Note: This machine configuration is intended as a generic config for
-# the picozed SOM. It also covers the multiple SKUs for the picoZed
-# including 7010, 7020, 7015 and 7030.
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "ext2 vfat usbhost usbgadget"
-
-# u-boot configuration
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
-UBOOT_MACHINE = "zynq_picozed_config"
-SPL_BINARY ?= "spl/boot.bin"
-UBOOT_ELF_zynq = "u-boot"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "device-tree"
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- uEnv.txt \
- "
-
diff --git a/meta-xilinx-bsp/conf/machine/qemu-zynq7.conf b/meta-xilinx-bsp/conf/machine/qemu-zynq7.conf
deleted file mode 100644
index 97251048..00000000
--- a/meta-xilinx-bsp/conf/machine/qemu-zynq7.conf
+++ /dev/null
@@ -1,27 +0,0 @@
-#@TYPE: Machine
-#@NAME: qemu-zynq7
-#@DESCRIPTION: Zynq QEMU machine support ('xilinx-zynq-a9' model)
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-MACHINE_FEATURES = "ext2 vfat"
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "device-tree"
-
-# Use the networking setup from qemuarm
-FILESOVERRIDES_append_pn-init-ifupdown = ":qemuarm"
-
-# This machine is a targeting a QEMU model, runqemu setup:
-IMAGE_CLASSES += "qemuboot"
-QB_MEM = "-m 1024"
-QB_MACHINE = "-machine xilinx-zynq-a9"
-QB_OPT_APPEND = "-nographic -serial null -serial mon:stdio"
-QB_NETWORK_DEVICE = "-net nic,netdev=net0,macaddr=@MAC@"
-
diff --git a/meta-xilinx-bsp/conf/machine/qemu-zynqmp-cg.conf b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-cg.conf
new file mode 100644
index 00000000..cb92bc71
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-cg.conf
@@ -0,0 +1,42 @@
+#@TYPE: Machine
+#@NAME: QEMU ZynqMP CG machine
+#@DESCRIPTION: Machine configuration for running a ZynqMP CG system on QEMU w/ testimage
+
+# This machine is NOT designed to be inherited by other machines or used as an
+# example of how to create a machine. It is only useful for running testimage
+# with runqemu.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'qemu-zynqmp-cg:']['qemu-zynqmp-cg' !='${MACHINE}']}"
+#### Regular settings follow
+
+# The following is from conf/machine/include/qemu.inc, but we can not use it
+# as it changes other values that need to come from the distro and the
+# AMD machine settings
+XSERVER ?= "xserver-xorg \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast xserver-xorg-extension-glx', '', d)} \
+ xf86-video-fbdev \
+ xf86-video-modesetting \
+ "
+
+MACHINE_FEATURES = "alsa bluetooth usbgadget screen vfat"
+
+MACHINEOVERRIDES =. "qemuall:"
+
+IMAGE_FSTYPES += "tar.bz2 ext4"
+
+# Don't include kernels in standard images
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+
+# Provide the nfs server kernel module for all qemu images
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-xlnx = " features/nfsd/nfsd-enable.scc"
+
+
+# Now include the generic machine which already supports QEMU booting
+require conf/machine/zynqmp-cg-generic.conf
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' qemu_zynqmp_cg']['qemu-zynqmp-cg' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/qemu-zynqmp-dr.conf b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-dr.conf
new file mode 100644
index 00000000..5fcb3541
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-dr.conf
@@ -0,0 +1,42 @@
+#@TYPE: Machine
+#@NAME: QEMU ZynqMP DR machine
+#@DESCRIPTION: Machine configuration for running a ZynqMP DR system on QEMU w/ testimage
+
+# This machine is NOT designed to be inherited by other machines or used as an
+# example of how to create a machine. It is only useful for running testimage
+# with runqemu.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'qemu-zynqmp-dr:']['qemu-zynqmp-dr' !='${MACHINE}']}"
+#### Regular settings follow
+
+# The following is from conf/machine/include/qemu.inc, but we can not use it
+# as it changes other values that need to come from the distro and the
+# AMD machine settings
+XSERVER ?= "xserver-xorg \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast xserver-xorg-extension-glx', '', d)} \
+ xf86-video-fbdev \
+ xf86-video-modesetting \
+ "
+
+MACHINE_FEATURES = "alsa bluetooth usbgadget screen vfat"
+
+MACHINEOVERRIDES =. "qemuall:"
+
+IMAGE_FSTYPES += "tar.bz2 ext4"
+
+# Don't include kernels in standard images
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+
+# Provide the nfs server kernel module for all qemu images
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-xlnx = " features/nfsd/nfsd-enable.scc"
+
+
+# Now include the generic machine which already supports QEMU booting
+require conf/machine/zynqmp-dr-generic.conf
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' qemu_zynqmp_dr']['qemu-zynqmp-dr' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/qemu-zynqmp-eg.conf b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-eg.conf
new file mode 100644
index 00000000..5f4b972c
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-eg.conf
@@ -0,0 +1,42 @@
+#@TYPE: Machine
+#@NAME: QEMU ZynqMP EG machine
+#@DESCRIPTION: Machine configuration for running a ZynqMP EG system on QEMU w/ testimage
+
+# This machine is NOT designed to be inherited by other machines or used as an
+# example of how to create a machine. It is only useful for running testimage
+# with runqemu.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'qemu-zynqmp-eg:']['qemu-zynqmp-eg' !='${MACHINE}']}"
+#### Regular settings follow
+
+# The following is from conf/machine/include/qemu.inc, but we can not use it
+# as it changes other values that need to come from the distro and the
+# AMD machine settings
+XSERVER ?= "xserver-xorg \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast xserver-xorg-extension-glx', '', d)} \
+ xf86-video-fbdev \
+ xf86-video-modesetting \
+ "
+
+MACHINE_FEATURES = "alsa bluetooth usbgadget screen vfat"
+
+MACHINEOVERRIDES =. "qemuall:"
+
+IMAGE_FSTYPES += "tar.bz2 ext4"
+
+# Don't include kernels in standard images
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+
+# Provide the nfs server kernel module for all qemu images
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-xlnx = " features/nfsd/nfsd-enable.scc"
+
+
+# Now include the generic machine which already supports QEMU booting
+require conf/machine/zynqmp-eg-generic.conf
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' qemu_zynqmp_eg']['qemu-zynqmp-eg' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/qemu-zynqmp-ev.conf b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-ev.conf
new file mode 100644
index 00000000..6058bfa4
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/qemu-zynqmp-ev.conf
@@ -0,0 +1,42 @@
+#@TYPE: Machine
+#@NAME: QEMU ZynqMP EV machine
+#@DESCRIPTION: Machine configuration for running a ZynqMP EV system on QEMU w/ testimage
+
+# This machine is NOT designed to be inherited by other machines or used as an
+# example of how to create a machine. It is only useful for running testimage
+# with runqemu.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'qemu-zynqmp-ev:']['qemu-zynqmp-ev' !='${MACHINE}']}"
+#### Regular settings follow
+
+# The following is from conf/machine/include/qemu.inc, but we can not use it
+# as it changes other values that need to come from the distro and the
+# AMD machine settings
+XSERVER ?= "xserver-xorg \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast xserver-xorg-extension-glx', '', d)} \
+ xf86-video-fbdev \
+ xf86-video-modesetting \
+ "
+
+MACHINE_FEATURES = "alsa bluetooth usbgadget screen vfat"
+
+MACHINEOVERRIDES =. "qemuall:"
+
+IMAGE_FSTYPES += "tar.bz2 ext4"
+
+# Don't include kernels in standard images
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+
+# Provide the nfs server kernel module for all qemu images
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-xlnx = " features/nfsd/nfsd-enable.scc"
+
+
+# Now include the generic machine which already supports QEMU booting
+require conf/machine/zynqmp-ev-generic.conf
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' qemu_zynqmp_ev']['qemu-zynqmp-ev' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/qemu-zynqmp.conf b/meta-xilinx-bsp/conf/machine/qemu-zynqmp.conf
new file mode 100644
index 00000000..91a96ede
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/qemu-zynqmp.conf
@@ -0,0 +1,45 @@
+#@TYPE: Machine
+#@NAME: QEMU ZynqMP machine
+#@DESCRIPTION: Machine configuration for running a ZynqMP system on QEMU w/ testimage
+
+# This machine is NOT designed to be inherited by other machines or used as an
+# example of how to create a machine. It is only useful for running testimage
+# with runqemu.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'qemu-zynqmp:']['qemu-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# The following is from conf/machine/include/qemu.inc, but we can not use it
+# as it changes other values that need to come from the distro and the
+# AMD machine settings
+XSERVER ?= "xserver-xorg \
+ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'mesa-driver-swrast xserver-xorg-extension-glx', '', d)} \
+ xf86-video-fbdev \
+ xf86-video-modesetting \
+ "
+
+MACHINE_FEATURES = "alsa bluetooth usbgadget screen vfat"
+
+MACHINEOVERRIDES =. "qemuall:"
+
+IMAGE_FSTYPES += "tar.bz2 ext4"
+
+# Don't include kernels in standard images
+RDEPENDS:${KERNEL_PACKAGE_NAME}-base = ""
+
+# Provide the nfs server kernel module for all qemu images
+KERNEL_FEATURES:append:pn-linux-yocto = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-yocto-rt = " features/nfsd/nfsd-enable.scc"
+KERNEL_FEATURES:append:pn-linux-xlnx = " features/nfsd/nfsd-enable.scc"
+
+
+# Now include the generic machine which already supports QEMU booting
+require conf/machine/zynqmp-generic.conf
+
+# This may break standalone runqemu, but allows testimage to work
+QB_XILINX_SERIAL = ""
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' qemu_zynqmp']['qemu-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/s3adsp1800-qemu-microblazeeb.conf b/meta-xilinx-bsp/conf/machine/s3adsp1800-qemu-microblazeeb.conf
deleted file mode 100644
index 3a21eb78..00000000
--- a/meta-xilinx-bsp/conf/machine/s3adsp1800-qemu-microblazeeb.conf
+++ /dev/null
@@ -1,24 +0,0 @@
-#@TYPE: Machine
-#@NAME: s3adsp1800-qemu-microblazeeb
-#@DESCRIPTION: MicroBlaze QEMU machine support ('petalogix-s3adsp1800' model)
-
-require conf/machine/include/tune-microblaze.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-TUNE_FEATURES_tune-microblaze += "v8.00 bigendian barrel-shift pattern-compare multiply-low"
-
-MACHINE_FEATURES = ""
-
-USE_VT = ""
-SERIAL_CONSOLE = "115200 ttyUL0"
-
-KERNEL_IMAGETYPE ?= "linux.bin.ub"
-
-# This machine is a targeting a QEMU model, runqemu setup:
-IMAGE_CLASSES += "qemuboot"
-QB_MEM = "-m 256"
-QB_MACHINE = "-machine petalogix-s3adsp1800"
-QB_OPT_APPEND = "-nographic -serial mon:stdio"
-QB_NETWORK_DEVICE = "-net nic,netdev=net0,macaddr=@MAC@"
-
diff --git a/meta-xilinx-bsp/conf/machine/vck190-versal.conf b/meta-xilinx-bsp/conf/machine/vck190-versal.conf
new file mode 100644
index 00000000..ed049268
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/vck190-versal.conf
@@ -0,0 +1,45 @@
+#@TYPE: Machine
+#@NAME: vck190-versal
+#@DESCRIPTION: Machine configuration for the VCK190 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'vck190-versal:']['vck190-versal' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in versal-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "CIPS_0_pspmc_0_psv_sbsauart_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vck190-reva-x-ebm-01-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "pl011"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PLM variables
+YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "CIPS_0_pspmc_0_psv_sbsauart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "CIPS_0_pspmc_0_psv_sbsauart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# vck190-versal Serial Console
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# VCK190 board uses Versal AI Core device hence use soc variant based generic
+# machine inclusion
+require conf/machine/versal-ai-core-generic.conf
+
+# This machine conf file uses vck190-versal xsa as reference input.
+# User can override with vck190 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "vck190-versal"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' vck190_versal']['vck190-versal' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf b/meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf
new file mode 100644
index 00000000..bfd60336
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/vcu118-microblazeel.conf
@@ -0,0 +1,50 @@
+#@TYPE: Machine
+#@NAME: vcu118-microblazeel
+#@DESCRIPTION: Machine configuration for the VCU118 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'vcu118-microblazeel:']['vcu118-microblazeel' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in microblazeel-generic.conf will be set.
+
+# Yocto VCU118 device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "DDR4_0"
+DT_PADDING_SIZE:pn-device-tree ?= "0x1000"
+DTC_FLAGS:pn-device-tree ?= ""
+XSCTH_PROC:pn-device-tree ?= "microblaze_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD vcu118-rev2.0}"
+
+# Yocto FS-Boot variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fs-boot ?= "axi_uartlite_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fs-boot ?= "axi_uartlite_0"
+YAML_MAIN_MEMORY_CONFIG:pn-fs-boot ?= "DDR4_0"
+YAML_FLASH_MEMORY_CONFIG:pn-fs-boot ?= "axi_quad_spi_0"
+XSCTH_PROC:pn-fs-boot ?= "microblaze_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x80000000"
+UBOOT_LOADADDRESS ?= "0x80000000"
+
+# vcu118-microblazeel Serial Console
+SERIAL_CONSOLES ?= "115200;ttyUL0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Set DDR Base address for u-boot-xlnx-scr variables
+DDR_BASEADDR ?= "0x80000000"
+SKIP_APPEND_BASEADDR ?= "0"
+
+# Required generic machine inclusion
+require conf/machine/microblaze-generic.conf
+
+# This machine conf file uses vcu118-microblazeel xsa as reference input.
+# User can override with vcu118 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "vcu118-microblazeel"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' vcu118_microblazeel']['vcu118-microblazeel' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/vek280-versal.conf b/meta-xilinx-bsp/conf/machine/vek280-versal.conf
new file mode 100644
index 00000000..ffe2fcb7
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/vek280-versal.conf
@@ -0,0 +1,55 @@
+XILINX_DEPRECATED[vek280-versal] = "${@'vek280-versal is not supported in 2023.2' if d.getVar("XILINX_RELEASE_VERSION") == 'v2023.2' else ''}"
+
+#@TYPE: Machine
+#@NAME: vek280-versal
+#@DESCRIPTION: Machine configuration for the VEK280 evaluation boards.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'vek280-versal:']['vek280-versal' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in versal-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "CIPS_0_pspmc_0_psv_sbsauart_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vek280-revb}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "pl011"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PLM variables
+YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "CIPS_0_pspmc_0_psv_sbsauart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "CIPS_0_pspmc_0_psv_sbsauart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# vek280-versal Serial Console
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+require conf/machine/versal-ai-edge-generic.conf
+
+# This machine conf file uses vek280-versal xsa as reference input.
+# User can override with vek280 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "vek280-versal"
+
+# VEK280 board has 12GB memory only but default versal-generic has QB_MEM set to
+# 8G, Hence we need set 12G in QB_MEM.
+QB_MEM = "-m 12G"
+
+QEMU_HW_DTB_PS = "${QEMU_HW_DTB_PATH}/board-versal-ps-vek280.dtb"
+QEMU_HW_DTB_PMC = "${QEMU_HW_DTB_PATH}/board-versal-pmc-virt.dtb"
+
+# Yocto MACHINE_FEATURES Variable
+MACHINE_FEATURES += "vdu"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' vek280_versal']['vek280-versal' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/vmk180-versal.conf b/meta-xilinx-bsp/conf/machine/vmk180-versal.conf
new file mode 100644
index 00000000..0f474f78
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/vmk180-versal.conf
@@ -0,0 +1,45 @@
+#@TYPE: Machine
+#@NAME: vmk180-versal
+#@DESCRIPTION: Machine configuration for the VMK180 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'vmk180-versal:']['vmk180-versal' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in versal-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vmk180-reva-x-ebm-01-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "pl011"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PLM variables
+YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# vmk180-versal Serial Console
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# VMK180 board uses Versal Prime device hence use soc variant based generic
+# machine inclusion
+require conf/machine/versal-prime-generic.conf
+
+# This machine conf file uses vmk180-versal xsa as reference input.
+# User can override with vmk180 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "vmk180-versal"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' vmk180_versal']['vmk180-versal' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/vpk120-versal.conf b/meta-xilinx-bsp/conf/machine/vpk120-versal.conf
new file mode 100644
index 00000000..e200d42d
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/vpk120-versal.conf
@@ -0,0 +1,48 @@
+#@TYPE: Machine
+#@NAME: vpk120-versal
+#@DESCRIPTION: Machine configuration for the VPK120 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'vpk120-versal:']['vpk120-versal' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in versal-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vpk120-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "pl011"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PLM variables
+YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# vpk120-versal Serial Console
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# VPK120 board uses Versal Premium device hence use soc variant based generic
+# machine inclusion
+require conf/machine/versal-premium-generic.conf
+
+# This machine conf file uses vpk120-versal xsa as reference input.
+# User can override with vpk120 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "vpk120-versal"
+
+QEMU_HW_DTB_PS = "${QEMU_HW_DTB_PATH}/board-versal-ps-vpk120.dtb"
+QEMU_HW_DTB_PMC = "${QEMU_HW_DTB_PATH}/board-versal-pmc-virt.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' vpk120_versal']['vpk120-versal' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/vpk180-versal.conf b/meta-xilinx-bsp/conf/machine/vpk180-versal.conf
new file mode 100644
index 00000000..92630e97
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/vpk180-versal.conf
@@ -0,0 +1,48 @@
+#@TYPE: Machine
+#@NAME: vpk180-versal
+#@DESCRIPTION: Machine configuration for the VPK180 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'vpk180-versal:']['vpk180-versal' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in versal-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD versal-vpk180-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "pl011"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PLM variables
+YAML_SERIAL_CONSOLE_STDIN:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-plm-firmware ?= "versal_cips_0_pspmc_0_psv_sbsauart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# vpk180-versal Serial Console
+SERIAL_CONSOLES ?= "115200;ttyAMA0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# VPK180 board uses Versal Premium device hence use soc variant based generic
+# machine inclusion
+require conf/machine/versal-premium-generic.conf
+
+# This machine conf file uses vpk180-versal xsa as reference input.
+# User can override with vpk180 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "vpk180-versal"
+
+QEMU_HW_DTB_PS = "${QEMU_HW_DTB_PATH}/board-versal-ps-vpk180.dtb"
+QEMU_HW_DTB_PMC = "${QEMU_HW_DTB_PATH}/board-versal-pmc-virt.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' vpk180_versal']['vpk180-versal' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zc1254-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zc1254-zynqmp.conf
index 51dd2a9d..c3518577 100644
--- a/meta-xilinx-bsp/conf/machine/zc1254-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zc1254-zynqmp.conf
@@ -3,36 +3,11 @@
#@DESCRIPTION: Machine support for ZC1254 Evaluation Board.
#
-SOC_VARIANT ?= "dr"
+SOC_VARIANT = "dr"
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
+require conf/machine/zynqmp-generic.conf
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-UBOOT_MACHINE = "xilinx_zynqmp_zc1254_revA_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
-
-SERIAL_CONSOLE ?= "115200 ttyPS0"
-
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
+# Add board compatibility override
+MACHINEOVERRIDES .= ":zc1254"
KERNEL_DEVICETREE = "xilinx/zynqmp-zc1254-revA.dtb"
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
-
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- virtual/boot-bin \
- virtual/bootloader \
- "
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
diff --git a/meta-xilinx-bsp/conf/machine/zc1275-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zc1275-zynqmp.conf
deleted file mode 100644
index 1e5cd0d7..00000000
--- a/meta-xilinx-bsp/conf/machine/zc1275-zynqmp.conf
+++ /dev/null
@@ -1,38 +0,0 @@
-#@TYPE: Machine
-#@NAME: zc1275-zynqmp
-#@DESCRIPTION: Machine support for ZC1275 Evaluation Board.
-#
-
-SOC_VARIANT ?= "dr"
-
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-UBOOT_MACHINE = "xilinx_zynqmp_zc1275_revB_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
-
-SERIAL_CONSOLE ?= "115200 ttyPS0"
-
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
-
-KERNEL_DEVICETREE = "xilinx/zynqmp-zc1275-revB.dtb"
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
-
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- virtual/boot-bin \
- virtual/bootloader \
- "
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
diff --git a/meta-xilinx-bsp/conf/machine/zc702-zynq7.conf b/meta-xilinx-bsp/conf/machine/zc702-zynq7.conf
index fbd58a6e..1db0616f 100644
--- a/meta-xilinx-bsp/conf/machine/zc702-zynq7.conf
+++ b/meta-xilinx-bsp/conf/machine/zc702-zynq7.conf
@@ -1,50 +1,44 @@
#@TYPE: Machine
#@NAME: zc702-zynq7
-#@DESCRIPTION: Machine support for ZC702 Evaluation Board.
-#
-# For details on the Evaluation board:
-# http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC702-G.htm
-# For documentation and design files for the ZC702:
-# http://www.xilinx.com/support/index.html/content/xilinx/en/supportNav/boards_and_kits/zynq-7000_soc_boards_and_kits/zynq-7000_soc_zc702_evaluation_kit.html
-# For the FSBL 'zynq_fsbl_0.elf' refer to UG873 and the associated design files.
-#
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-# u-boot configuration
-UBOOT_MACHINE = "zynq_zc702_config"
-SPL_BINARY ?= "spl/boot.bin"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-KERNEL_DEVICETREE = "zynq-zc702.dtb"
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- uEnv.txt \
- "
-
-# Although not fully supported you can run this machine on the mainline QEMU 'xilinx-zynq-a9' machine
-IMAGE_CLASSES += "qemuboot"
-QB_MEM = "-m 1024"
-QB_MACHINE = "-machine xilinx-zynq-a9"
-QB_OPT_APPEND = "-nographic -serial null -serial mon:stdio"
-QB_NETWORK_DEVICE = "-net nic,netdev=net0,macaddr=@MAC@"
-
-# Xilinx's fork of QEMU has much better results, so let's default to that
-# Use qemu-xilinx instead of mainline
-PREFERRED_PROVIDER_qemu-helper-native = "qemu-xilinx-helper-native"
-
-IMAGE_CLASSES += "qemuboot-xilinx"
+#@DESCRIPTION: Machine configuration for the ZC702 evaluation boards.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zc702-zynq7:']['zc702-zynq7' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynq-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "ps7_uart_1"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PS7_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zc702}"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "ps7_uart_1"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "ps7_uart_1"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zc702-zynq7 Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+require conf/machine/zynq-generic.conf
+
+# This eval board machine conf file uses zc702-zynq7 xsa as reference input.
+# User can override with zc702 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zc702-zynq7"
+
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "zynq-zc702.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zc702_zynq7']['zc702-zynq7' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zc706-zynq7.conf b/meta-xilinx-bsp/conf/machine/zc706-zynq7.conf
index 741ef5de..7e0525d1 100644
--- a/meta-xilinx-bsp/conf/machine/zc706-zynq7.conf
+++ b/meta-xilinx-bsp/conf/machine/zc706-zynq7.conf
@@ -1,51 +1,44 @@
#@TYPE: Machine
#@NAME: zc706-zynq7
-#@DESCRIPTION: Machine support for ZC706 Evaluation Board.
-#
-# For details on the Evaluation board:
-# http://www.xilinx.com/products/boards-and-kits/EK-Z7-ZC706-G.htm
-# For documentation and design files for the ZC702:
-# http://www.xilinx.com/support/index.html/content/xilinx/en/supportNav/boards_and_kits/zynq-7000_soc_boards_and_kits/zynq-7000_soc_zc706_evaluation_kit.html
-# For the FSBL 'zynq_fsbl_0.elf' refer to UG873 and the associated design files.
-#
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost usbgadget"
-
-# u-boot configuration
-UBOOT_MACHINE = "zynq_zc706_config"
-SPL_BINARY ?= "spl/boot.bin"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-KERNEL_DEVICETREE = "zynq-zc706.dtb"
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- uEnv.txt \
- "
-
-# Although not fully supported you can run this machine on the mainline QEMU 'xilinx-zynq-a9' machine
-IMAGE_CLASSES += "qemuboot"
-QB_MEM = "-m 1024"
-QB_MACHINE = "-machine xilinx-zynq-a9"
-QB_OPT_APPEND = "-nographic -serial null -serial mon:stdio"
-QB_NETWORK_DEVICE = "-net nic,netdev=net0,macaddr=@MAC@"
-
-# Xilinx's fork of QEMU has much better results, so let's default to that
-# Use qemu-xilinx instead of mainline
-PREFERRED_PROVIDER_qemu-helper-native = "qemu-xilinx-helper-native"
-
-IMAGE_CLASSES += "qemuboot-xilinx"
+#@DESCRIPTION: Machine configuration for the ZC706 evaluation boards.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zc706-zynq7:']['zc706-zynq7' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynq-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "ps7_uart_1"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PS7_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zc706}"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "ps7_uart_1"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "ps7_uart_1"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zc706-zynq7 Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+require conf/machine/zynq-generic.conf
+
+# This eval board machine conf file uses zc702-zynq7 xsa as reference input.
+# User can override with zc702 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zc706-zynq7"
+
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "zynq-zc706.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zc706_zynq7']['zc706-zynq7' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf
index 281110d9..acd2544a 100644
--- a/meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zcu102-zynqmp.conf
@@ -1,85 +1,54 @@
#@TYPE: Machine
#@NAME: zcu102-zynqmp
-#@DESCRIPTION: Machine support for ZCU102 Evaluation Board.
-
-SOC_VARIANT ?= "eg"
-
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-UBOOT_MACHINE = "xilinx_zynqmp_zcu102_rev1_0_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
-
-# Default SD image build onfiguration, use qemu-sd to pad
-IMAGE_CLASSES += "image-types-xilinx-qemu"
-IMAGE_FSTYPES += "wic.qemu-sd"
-WKS_FILES ?= "sdimage-bootpart.wks"
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
-
-KERNEL_DEVICETREE = "xilinx/zynqmp-zcu102-rev1.0.dtb"
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- qemu-devicetrees \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
-
-# This machine has a QEMU model, runqemu setup:
-IMAGE_CLASSES += "qemuboot-xilinx"
-QB_MACHINE = "-machine xlnx-zcu102"
-QB_MEM = "-m 4096"
-QB_OPT_APPEND ?= "-nographic -serial mon:stdio -serial null"
-QB_NETWORK_DEVICE = "-net nic -net nic -net nic -net nic,netdev=net0,macaddr=@MAC@"
-
-# Use qemu-xilinx instead of mainline
-PREFERRED_PROVIDER_qemu-helper-native = "qemu-xilinx-helper-native"
-
-# Use the multiarch script instead of launching QEMU directly
-QB_SYSTEM_NAME_append = "-multiarch"
-
-# Replicate BootROM like behaviour, having loaded SPL and PMU(ROM+FW)
-QB_OPT_APPEND_append_qemuboot-xilinx = " \
- -hw-dtb ${DEPLOY_DIR_IMAGE}/qemu-hw-devicetrees/multiarch/zcu102-arm.dtb \
- ${@qemu_zynqmp_unhalt(d, True)} \
- -device loader,file=${DEPLOY_DIR_IMAGE}/arm-trusted-firmware.elf,cpu-num=0 \
- -device loader,file=${DEPLOY_DIR_IMAGE}/u-boot.elf \
- "
-
-# Attach the rootfs disk image to the second SD interface of QEMU (which is SD0)
-QB_DEFAULT_FSTYPE_qemuboot-xilinx = "wic.qemu-sd"
-QB_OPT_APPEND_append_qemuboot-xilinx = " -boot mode=5"
-QB_ROOTFS_OPT_qemuboot-xilinx = " -drive if=sd,index=1,file=@ROOTFS@,format=raw"
-
-# PMU instance args
-PMU_ROM ?= "${DEPLOY_DIR_IMAGE}/pmu-rom.elf"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-
-QB_PMU_OPT = " \
- -M microblaze-fdt \
- -display none \
- -hw-dtb ${DEPLOY_DIR_IMAGE}/qemu-hw-devicetrees/multiarch/zynqmp-pmu.dtb \
- -kernel ${PMU_ROM} \
- -device loader,file=${PMU_FIRMWARE_DEPLOY_DIR}/${PMU_FIRMWARE_IMAGE_NAME}.elf \
- -device loader,addr=0xfd1a0074,data=0x1011003,data-len=4 \
- -device loader,addr=0xfd1a007C,data=0x1010f03,data-len=4 \
- "
-QB_OPT_APPEND_append_qemuboot-xilinx = " -pmu-args '${QB_PMU_OPT}'"
-
-do_write_qemuboot_conf[depends] += "u-boot-zynq-uenv:do_deploy"
+#@DESCRIPTION: Machine configuration for the ZCU102 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu102-zynqmp:']['zcu102-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu102-rev1.0}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zcu102-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# ZCU102 board uses ZynqMP EG device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-eg-generic.conf
+
+# This eval board machine conf file uses zcu102-zynqmp xsa as reference input.
+# User can override with zcu102 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu102-zynqmp"
+
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "xilinx/zynqmp-zcu102-rev1.0.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zcu102_zynqmp']['zcu102-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu104-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu104-zynqmp.conf
index c4b4a032..b4c11f3a 100644
--- a/meta-xilinx-bsp/conf/machine/zcu104-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zcu104-zynqmp.conf
@@ -1,41 +1,58 @@
#@TYPE: Machine
#@NAME: zcu104-zynqmp
-#@DESCRIPTION: Machine support for ZCU104 Evaluation Board.
-#
+#@DESCRIPTION: Machine configuration for the ZCU104 evaluation board.
-SOC_VARIANT ?= "ev"
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu104-zynqmp:']['zcu104-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu104-revc}"
-UBOOT_MACHINE = "xilinx_zynqmp_zcu104_revC_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
-SERIAL_CONSOLE ?= "115200 ttyPS0"
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
-KERNEL_DEVICETREE = "xilinx/zynqmp-zcu104-revC.dtb"
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
+# zcu104-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
+# Required generic machine inclusion
+# ZCU104 board uses ZynqMP EV device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-ev-generic.conf
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- virtual/boot-bin \
- virtual/bootloader \
- "
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
+# This eval board machine conf file uses zcu104-zynqmp xsa as reference input.
+# User can override with zcu104 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu104-zynqmp"
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "xilinx/zynqmp-zcu104-revC.dtb"
+
+# Yocto IMAGE_FEATURES Variable
MACHINE_HWCODECS = "libomxil-xlnx"
+IMAGE_FEATURES += "hwcodecs"
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zcu104_zynqmp']['zcu104-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf
index 136efb90..ff273134 100644
--- a/meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zcu106-zynqmp.conf
@@ -1,39 +1,58 @@
#@TYPE: Machine
#@NAME: zcu106-zynqmp
-#@DESCRIPTION: Machine support for ZCU106 Evaluation Board.
+#@DESCRIPTION: Machine configuration for the ZCU106 evaluation board.
-SOC_VARIANT ?= "ev"
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu106-zynqmp:']['zcu106-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu106-reva}"
-UBOOT_MACHINE = "xilinx_zynqmp_zcu106_revA_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
-SERIAL_CONSOLE = "115200 ttyPS0"
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
-KERNEL_DEVICETREE = "xilinx/zynqmp-zcu106-revA.dtb"
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
+# zcu106-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- virtual/boot-bin \
- virtual/bootloader \
- "
+# Required generic machine inclusion
+# ZCU106 board uses ZynqMP EV device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-ev-generic.conf
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
+# This eval board machine conf file uses zcu106-zynqmp xsa as reference input.
+# User can override with zcu106 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu106-zynqmp"
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "xilinx/zynqmp-zcu106-revA.dtb"
+
+# Yocto IMAGE_FEATURES Variable
MACHINE_HWCODECS = "libomxil-xlnx"
+IMAGE_FEATURES += "hwcodecs"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zcu106_zynqmp']['zcu106-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu111-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu111-zynqmp.conf
index 068e4890..77da93ca 100644
--- a/meta-xilinx-bsp/conf/machine/zcu111-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zcu111-zynqmp.conf
@@ -1,38 +1,54 @@
#@TYPE: Machine
#@NAME: zcu111-zynqmp
-#@DESCRIPTION: Machine support for ZCU111 Evaluation Board.
-#
-
-SOC_VARIANT ?= "dr"
-
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-UBOOT_MACHINE = "xilinx_zynqmp_zcu111_revA_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
-
-SERIAL_CONSOLE ?= "115200 ttyPS0"
-
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
-
-KERNEL_DEVICETREE = "xilinx/zynqmp-zcu111-revA.dtb"
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
-
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- virtual/boot-bin \
- virtual/bootloader \
- "
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
+#@DESCRIPTION: Machine configuration for the ZCU111 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu111-zynqmp:']['zcu111-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu111-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zcu111-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# ZCU111 board uses ZynqMP DR device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-dr-generic.conf
+
+# This eval board machine conf file uses zcu111-zynqmp xsa as reference input.
+# User can override with zcu111 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu111-zynqmp"
+
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "xilinx/zynqmp-zcu111-revA.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zcu111_zynqmp']['zcu111-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu1275-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu1275-zynqmp.conf
new file mode 100644
index 00000000..18aa3eee
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/zcu1275-zynqmp.conf
@@ -0,0 +1,52 @@
+XILINX_DEPRECATED[zcu1275-zynqmp] = "${@'zcu1275-zynqmp is not supported in 2023.2' if d.getVar("XILINX_RELEASE_VERSION") == 'v2023.2' else ''}"
+
+#@TYPE: Machine
+#@NAME: zcu1275-zynqmp
+#@DESCRIPTION: Machine configuration for the ZCU1275 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu1275-zynqmp:']['zcu1275-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu1275-revb}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zcu1275-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# ZCU1275 board uses ZynqMP DR device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-dr-generic.conf
+
+# This eval board machine conf file uses zcu1275-zynqmp xsa as reference input.
+# User can override with zcu1275 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu1275-zynqmp"
+
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "xilinx/zynqmp-zcu1275-revB.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', 'zcu1275_zynqmp']['zcu1275-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu1285-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu1285-zynqmp.conf
index 04508540..6fba3619 100644
--- a/meta-xilinx-bsp/conf/machine/zcu1285-zynqmp.conf
+++ b/meta-xilinx-bsp/conf/machine/zcu1285-zynqmp.conf
@@ -1,38 +1,56 @@
+XILINX_DEPRECATED[zcu1285-zynqmp] = "${@'zcu1285-zynqmp is not supported in 2023.2' if d.getVar("XILINX_RELEASE_VERSION") == 'v2023.2' else ''}"
+
#@TYPE: Machine
#@NAME: zcu1285-zynqmp
-#@DESCRIPTION: Machine support for ZCU1285 Evaluation Board.
-#
-
-SOC_VARIANT ?= "dr"
-
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-UBOOT_MACHINE = "xilinx_zynqmp_zc1275_revB_defconfig"
-SPL_BINARY ?= "spl/boot.bin"
-
-SERIAL_CONSOLE ?= "115200 ttyPS0"
-
-SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}"
-
-KERNEL_DEVICETREE = "xilinx/zynqmp-zcu1285-revA.dtb"
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot-xlnx"
-
-PMU_FIRMWARE_IMAGE_NAME ?= "pmu-firmware-zynqmp-pmu"
-PMU_FIRMWARE_DEPLOY_DIR ?= "${TOPDIR}/pmutmp/deploy/images/zynqmp-pmu"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- arm-trusted-firmware \
- virtual/boot-bin \
- virtual/bootloader \
- "
-IMAGE_BOOT_FILES += " \
- uEnv.txt \
- atf-uboot.ub \
- "
+#@DESCRIPTION: Machine configuration for the ZCU1285 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu1285-zynqmp:']['zcu1285-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu1285-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zcu1285-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# ZCU1285 board uses ZynqMP DR device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-dr-generic.conf
+
+# This eval board machine conf file uses zcu1285-zynqmp xsa as reference input.
+# User can override with zcu1285 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu1285-zynqmp"
+
+# KERNEL_DEVICETREE is disabled as we use board device tree from DTG to match
+# the xsa. User can enable explicitly if required from local.conf.
+# KERNEL_DEVICETREE = "xilinx/zynqmp-zcu1285-revA.dtb"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', 'zcu1285_zynqmp']['zcu1285-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf
new file mode 100644
index 00000000..7bb2c9db
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/zcu208-zynqmp.conf
@@ -0,0 +1,50 @@
+#@TYPE: Machine
+#@NAME: zcu208-zynqmp
+#@DESCRIPTION: Machine configuration for the ZCU208 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu208-zynqmp:']['zcu208-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu208-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zcu208-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# ZCU208 board uses ZynqMP DR device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-dr-generic.conf
+
+# This eval board machine conf file uses zcu208-zynqmp xsa as reference input.
+# User can override with zcu208 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu208-zynqmp"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zcu208_zynqmp']['zcu208-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zcu216-zynqmp.conf b/meta-xilinx-bsp/conf/machine/zcu216-zynqmp.conf
new file mode 100644
index 00000000..f4e1619d
--- /dev/null
+++ b/meta-xilinx-bsp/conf/machine/zcu216-zynqmp.conf
@@ -0,0 +1,50 @@
+#@TYPE: Machine
+#@NAME: zcu216-zynqmp
+#@DESCRIPTION: Machine configuration for the ZCU216 evaluation board.
+
+#### Preamble
+MACHINEOVERRIDES =. "${@['', 'zcu216-zynqmp:']['zcu216-zynqmp' !='${MACHINE}']}"
+#### Regular settings follow
+
+# Variables that changes based on hw design or board specific requirement must be
+# defined before calling the required inclusion file else pre-expansion value
+# defined in zynqmp-generic.conf will be set.
+
+# Yocto device-tree variables
+YAML_CONSOLE_DEVICE_CONFIG:pn-device-tree ?= "psu_uart_0"
+YAML_MAIN_MEMORY_CONFIG:pn-device-tree ?= "PSU_DDR_0"
+YAML_DT_BOARD_FLAGS ?= "{BOARD zcu216-reva}"
+
+# Yocto arm-trusted-firmware(TF-A) variables
+ATF_CONSOLE ?= "cadence"
+TFA_BL33_LOAD ?= "0x8000000"
+
+# Yocto PMUFW variables
+YAML_SERIAL_CONSOLE_STDIN:pn-pmu-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-pmu-firmware ?= "psu_uart_0"
+
+# Yocto FSBL variables
+YAML_SERIAL_CONSOLE_STDIN:pn-fsbl-firmware ?= "psu_uart_0"
+YAML_SERIAL_CONSOLE_STDOUT:pn-fsbl-firmware ?= "psu_uart_0"
+
+# Yocto KERNEL Variables
+UBOOT_ENTRYPOINT ?= "0x200000"
+UBOOT_LOADADDRESS ?= "0x200000"
+
+# zcu216-zynqmp Serial Console
+SERIAL_CONSOLES ?= "115200;ttyPS0"
+YAML_SERIAL_CONSOLE_BAUDRATE ?= "115200"
+
+# Required generic machine inclusion
+# ZCU216 board uses ZynqMP DR device hence use soc variant based generic machine
+# inclusion
+require conf/machine/zynqmp-dr-generic.conf
+
+# This eval board machine conf file uses zcu216-zynqmp xsa as reference input.
+# User can override with zcu216 custom xsa using HDF_BASE and HDF_PATH variables
+# from local.conf.
+HDF_MACHINE = "zcu216-zynqmp"
+
+#### No additional settings should be after the Postamble
+#### Postamble
+PACKAGE_EXTRA_ARCHS:append = "${@['', ' zcu216_zynqmp']['zcu216-zynqmp' != '${MACHINE}']}"
diff --git a/meta-xilinx-bsp/conf/machine/zedboard-zynq7.conf b/meta-xilinx-bsp/conf/machine/zedboard-zynq7.conf
deleted file mode 100644
index 0b0a0de2..00000000
--- a/meta-xilinx-bsp/conf/machine/zedboard-zynq7.conf
+++ /dev/null
@@ -1,36 +0,0 @@
-#@TYPE: Machine
-#@NAME: zedboard-zynq7
-#@DESCRIPTION: Machine support for ZedBoard. (http://www.zedboard.org/)
-#
-# For details on the Evaluation board:
-# http://www.zedboard.org/content/overview
-# For design files (including 'zynq_fsbl_0.elf') for the ZedBoard:
-# http://www.zedboard.org/reference-designs-categories/zynq-concepts-tools-and-techniques-zedboard
-#
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-# u-boot configuration
-UBOOT_MACHINE = "zynq_zed_config"
-SPL_BINARY ?= "spl/boot.bin"
-UBOOT_ELF_zynq = "u-boot"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-KERNEL_DEVICETREE = "zynq-zed.dtb"
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- uEnv.txt \
- "
-
diff --git a/meta-xilinx-bsp/conf/machine/zybo-linux-bd-zynq7.conf b/meta-xilinx-bsp/conf/machine/zybo-linux-bd-zynq7.conf
deleted file mode 100644
index 87634fcc..00000000
--- a/meta-xilinx-bsp/conf/machine/zybo-linux-bd-zynq7.conf
+++ /dev/null
@@ -1,43 +0,0 @@
-#@TYPE: Machine
-#@NAME: zybo-linux-bd-zynq7
-#@DESCRIPTION: Machine support for zybo-linux-bd project.
-#
-# generated base on ZYBO linux-bd project
-#
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-PREFERRED_PROVIDER_virtual/kernel ?= "linux-xlnx"
-PREFERRED_PROVIDER_virtual/bootloader ?= "u-boot"
-
-MACHINE_FEATURES = "ext2 vfat usbhost usbgadget keyboard screen alsa sdio"
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "device-tree"
-
-UBOOT_MACHINE = "zynq_zybo_config"
-SPL_BINARY ?= "spl/boot.bin"
-FORCE_PLATFORM_INIT = "1"
-UBOOT_ELF_zynq = "u-boot"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bitstream \
- virtual/bootloader \
- "
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- bitstream \
- uEnv.txt \
- "
-
-KERNEL_FEATURES += " \
- bsp/zybo-linux-bd-zynq7/zybo-linux-bd-zynq7.scc \
- features/v4l2/v4l2-xilinx.scc \
- "
diff --git a/meta-xilinx-bsp/conf/machine/zybo-zynq7.conf b/meta-xilinx-bsp/conf/machine/zybo-zynq7.conf
deleted file mode 100644
index 732fa943..00000000
--- a/meta-xilinx-bsp/conf/machine/zybo-zynq7.conf
+++ /dev/null
@@ -1,37 +0,0 @@
-#@TYPE: Machine
-#@NAME: zybo-zynq7
-#@DESCRIPTION: Machine support for ZYBO.
-#
-# For details on the ZYBO board:
-# https://www.digilentinc.com/Products/Detail.cfm?Prod=ZYBO
-#
-
-SOC_VARIANT ?= "7z"
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "ext2 vfat usbhost usbgadget"
-
-# u-boot configuration
-PREFERRED_PROVIDER_virtual/bootloader = "u-boot"
-UBOOT_MACHINE = "zynq_zybo_config"
-SPL_BINARY ?= "spl/boot.bin"
-UBOOT_ELF_zynq = "u-boot"
-
-EXTRA_IMAGEDEPENDS += " \
- u-boot-zynq-uenv \
- virtual/boot-bin \
- virtual/bootloader \
- "
-
-SERIAL_CONSOLE = "115200 ttyPS0"
-
-KERNEL_DEVICETREE = "zynq-zybo.dtb"
-
-IMAGE_BOOT_FILES += " \
- boot.bin \
- uEnv.txt \
- "
-
diff --git a/meta-xilinx-bsp/conf/machine/zynq-generic.conf b/meta-xilinx-bsp/conf/machine/zynq-generic.conf
deleted file mode 100644
index 12fd1388..00000000
--- a/meta-xilinx-bsp/conf/machine/zynq-generic.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-#@TYPE: Machine
-#@NAME:
-#@DESCRIPTION: zynq devices
-
-require conf/machine/include/tune-zynq.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost usbgadget"
-
-EXTRA_IMAGEDEPENDS += "libyaml-native python3-cython-native python3-pyyaml-native"
diff --git a/meta-xilinx-bsp/conf/machine/zynqmp-generic.conf b/meta-xilinx-bsp/conf/machine/zynqmp-generic.conf
deleted file mode 100644
index 98385d25..00000000
--- a/meta-xilinx-bsp/conf/machine/zynqmp-generic.conf
+++ /dev/null
@@ -1,15 +0,0 @@
-#@TYPE: Machine
-#@NAME:
-#@DESCRIPTION: zynqmp devices
-
-require conf/machine/include/tune-zynqmp.inc
-require conf/machine/include/machine-xilinx-overrides.inc
-require conf/machine/include/machine-xilinx-default.inc
-require conf/machine/include/machine-xilinx-qemu.inc
-
-MACHINE_FEATURES = "rtc ext2 ext3 vfat usbhost"
-
-PREFERRED_PROVIDER_qemu-helper-native = "qemu-xilinx-helper-native"
-
-EXTRA_IMAGEDEPENDS += "libyaml-native python3-cython-native python3-pyyaml-native"
-