Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

missing kernel_default.dtbo #3

Open
micmzr opened this issue Jan 14, 2022 · 3 comments
Open

missing kernel_default.dtbo #3

micmzr opened this issue Jan 14, 2022 · 3 comments

Comments

@micmzr
Copy link

micmzr commented Jan 14, 2022

I am trying to compile ‘offloaded_doublevadd_publisher’ using ZCU102 firmware, but it seems that kernel_default.dtbo file is missing.

@vmayoral
Copy link
Member

vmayoral commented Jan 14, 2022

Current releases are made for Vitis 2020.2. @micmzr what Vitis version are you using?

Which error are you getting exactly, can you paste it in here?

@micmzr
Copy link
Author

micmzr commented Jan 14, 2022

I am using Vitis 2020.2.2, because I also work with KV260.

I set zcu102.cfg instead of kv260.cfg in ./src/acceleration_examples/offloaded_doublevadd_publisher/CmakeLists.txt.

select firmware:

$ colcon acceleration select zcu102

and got following error:

$ colcon build --build-base=build-zcu102 --install-base=install-zcu102 --merge-install --mixin zcu102 --packages-select ament_vitis vitis_common ros2acceleration offloaded_doublevadd_publisher
[…]
[Processing: offloaded_doublevadd_publisher]
[Processing: offloaded_doublevadd_publisher]
--- stderr: offloaded_doublevadd_publisher
cp: cannot stat '/home/mmazur/krs_ws/install-zcu102/../acceleration/firmware/select/data/../device_tree/kernel_default.dtbo': No such file or directory
/home/xilinx/Vitis/2020.2/gnu/aarch64/lin/aarch64-linux/x86_64-petalinux-linux/usr/bin/aarch64-xilinx-linux/aarch64-xilinx-linux-ld.real: /home/mmazur/krs_ws/install/lib/libvitis_common.a(utilities.cpp.o): Relocations in generic ELF (EM: 62)
[…]
/home/xilinx/Vitis/2020.2/gnu/aarch64/lin/aarch64-linux/x86_64-petalinux-linux/usr/bin/aarch64-xilinx-linux/aarch64-xilinx-linux-ld.real: /home/mmazur/krs_ws/install/lib/libvitis_common.a: error adding symbols: file in wrong format
collect2.real: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/offloaded_doublevadd_publisher.dir/build.make:142: offloaded_doublevadd_publisher] Błąd 1
make[1]: *** [CMakeFiles/Makefile2:78: CMakeFiles/offloaded_doublevadd_publisher.dir/all] Błąd 2
make: *** [Makefile:141: all] Błąd 2

@vmayoral
Copy link
Member

vmayoral commented Jan 14, 2022

@micmzr thanks, ok, I see what's going on.

Shortly, KV260 uses the dfx-mgr infrastructure by default to load/unload acceleration kernels. If you wish to use it in the ZCU102, you'll need to configure PetaLinux appropriately (I don't think it ships enabled by default).

When I created the rootfs for ZCU102 it didn't, so to load kernels in this board I was using the BOOT.BIN approach (i.e. kernel's loaded from the BOOT.BIN file on every power cycle). Assuming you'll also be using the BOOT.BIN approach, kernel_default.dtbo will be a placeholder so you can you just create the file yourself or fetch it from https://github.com/ros-acceleration/acceleration_firmware_kv260.

If instead you plan on using dfx-mgr, then I encourage you to read its documentation and learn how the device tree overlays are used for each accelerator. That'll help you create the right dtsi for each kernel (from where you can get the corresponding dtbo).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants