buildrootでMesa3DのVulkanをインストールしておく方法について,仮説を立てました.
- Vulkan日記その1: HomebrewでVulkanをインストール
- Vulkan日記その2: デモンストレーション・プログラムを動かす
- Vulkan日記その3: Raspberry Pi 5 + Nerves で Vulkanが動くっぽい
RasPi 5 の GPU
VideoCore VII GPU, supporting OpenGL ES 3.1, Vulkan 1.2
VideoCore で検索すると,メーカーはBroadcomでした.
Frank Hunlethさんから教わったことの確認
Nerves Project代表のFrank Hunlethさんから,次のリンクを教わっていました.
調査
このオプションを調べてみると,次のようなページに行き当たりました.
64 config BR2_PACKAGE_MESA3D_VULKAN_DRIVER
65 bool
66 select BR2_PACKAGE_MESA3D_DRIVER
...
285 config BR2_PACKAGE_MESA3D_VULKAN_DRIVER_BROADCOM
286 bool "Vulkan broadcom driver"
287 depends on BR2_arm || BR2_aarch64
288 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # dri3/libxshmfence
289 select BR2_PACKAGE_MESA3D_VULKAN_DRIVER
290 help
291 Vulkan broadcom driver.
仮説
すなわち,nerves_defconfig
を次のように設定したら,Vulkanインストール済みにならないかなと思いました.
BR2_PACKAGE_MESA3D=y
BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_V3D=y
BR2_PACKAGE_MESA3D_OPENGL_ES=y
BR2_PACKAGE_MESA3D_VULKAN_DRIVER=y
BR2_PACKAGE_MESA3D_VULKAN_DRIVER_BROADCOM=y
このような設定で構築すると,次のようなアーキテクチャ構成を実現できるものと思います.
まとめ
以上をまとめると,buildrootの設定を変えることで,Raspberry Pi 5 上の Nerves で, Mesa3D の Vulkan をインストールすることができそうです.