The machine specifies your design's specific characteristics. These WILL affect the configuration of the pmu firmware and other components.

Assuming you are using rel-v2024.1, scarthgap or master. You should be using 'gen-machineconf' to translate your particular devices characteristics to a machine dot conf file. (Unless you are building for a reference board, where we've already run it for you as a short cut.)

On 7/29/24 3:50 AM, Taedcke, Christian wrote:
Hello Mark,

we build the pmu-firmware for zynqmp from the scarthgap branch of
meta-xilinx. In order to do this we had to set the MACHINE variable in
the file meta-xilinx-standalone/conf/multiconfig/zynqmp-pmufw.conf

MACHINE = "zynqmp-generic"

Is there a reason why the MACHINE variable is not set in this file? How
is this intended to be used?

The machine for the multiconfigs should be the same as the machine for the primary (Linux) configuration. The generated components, including multiconfigs [in system device-tree mode], will use the common machine.

The build current has two modes, either pass in an XSA (this is the legacy mode which is currently more stable, but going away), and the newer system device tree mode, which will require you to run your XSA through the sdtgen tool to generate the correct inputs.

Then you run:

. ./poky/oe-init-build-env build
bitbake-layers add-layer meta-xilinx/meta-xilinx-core meta-xilinx/meta-microblaze meta-xilinx/meta-xilinx-standalone

# If you are using XSA flow::
bitbake-layers add-layer meta-xilinx-tools

gen-machineconf --hw-description <path to your XSA> --machine-name <name>



# If you are using SDT flow:
bitbake-layers add-layer meta-xilinx/meta-xilinx-standalone-sdt

gen-machineconf --hw-description <path to sdtgen output> --machine-name <name>



In the XSA flow you can CHOOSE to go into a multiconfig setting, but don't need to. Since the PMUFW (and FSBL) run from the blackbox 'xsct' utility it can run during the Linux build. Or you can enable the multiconfigs.. but it either case, you would use the same MACHINE setting as your local.conf.

In the SDT flow you MUST use multiconfigs. The output of gen-machineconf should already be configured to "just work".


We have updates coming 'soon' that refactor some of the workflows in gen-machineconf, but I'm not yet sure when it will go public, but the instructions about don't change significantly.


(If you are building an unmodified reference platform, then include meta-xilinx-bsps layer, set your MACHINE= and just build it. Everything is preconfigured.)

The zynqmp-generic is a qemu capable reference/base configuration. (This may change in the future as well.. We may split the reference QEMU into a separate configuration from the generic zynqmp platform.) Keep in mind though the generic isn't expected to work on ACTUAL hardware, since it only has basic SoC knowledge and not specific hardware design information.

--Mark


Ragards,
Christian





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

Reply via email to