2376470_en-US

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2376470_en-US

2376470_en-US

radeonsi_dri.so is missing

Hi

i need to build radeonsi_dri.so in my T1040 board, can you help me to build this?



Re: radeonsi_dri.so is missing

Yes — but first important point: radeonsi_dri.so is Mesa’s Gallium OpenGL DRI driver for AMD Radeon GPUs from Southern Islands (GCN/GFX6) and newer, so your T1040 itself is only the CPU/SoC; you will need a supported external AMD GPU attached (typically over PCIe) plus a working Linux DRM stack for that GPU. The T1040 is a 64-bit e5500 Power Architecture SoC and it does provide PCIe 2.0 controllers, so the platform can host an external GPU in principle. 

Also, radeonsi is built from Mesa’s src/gallium/drivers/radeonsi code, and Mesa’s Meson build system exposes gallium-drivers and dri-drivers-path options that are exactly what you need to produce/install a radeonsi DRI driver.

I suggest cross-build Mesa on an x86 Linux host rather than building natively on the board.

Step 1: Verify the board/GPU side first
lspci -nn | egrep 'VGA|Display|3D'
dmesg | egrep 'drm|amdgpu|radeon'
ls /dev/dri
``

Step 2: Prepare a cross toolchain
# t1040-ppc64be.ini
[binaries]
c = '/opt/t1040-sdk/bin/powerpc64-linux-gnu-gcc'
cpp = '/opt/t1040-sdk/bin/powerpc64-linux-gnu-g++'
ar = '/opt/t1040-sdk/bin/powerpc64-linux-gnu-gcc-ar'
strip = '/opt/t1040-sdk/bin/powerpc64-linux-gnu-strip'
pkg-config = '/opt/t1040-sdk/bin/powerpc64-linux-gnu-pkg-config'
# IMPORTANT: this is the host-side llvm-config that Meson uses to locate LLVM
llvm-config = '/usr/bin/llvm-config'

 

[host_machine]
system = 'linux'
cpu_family = 'ppc64'
cpu = 'powerpc64'
endian = 'big'

Step 3: Get a stable Mesa source tree
cd mesa
git checkout mesa-25.2.8
``

Step 4: Configure Mesa for radeonsi
eson setup build-t1040 \
  --cross-file t1040-ppc64be.ini \
  -Dprefix=/usr \
  -Dbuildtype=release \
  -Dplatforms=x11,drm,surfaceless \
  -Dglx=dri \
  -Degl=enabled \
  -Dgbm=enabled \
  -Dgallium-drivers=radeonsi,swrast \
  -Dvulkan-drivers=[] \
  -Dgallium-va=disabled \
  -Dgallium-vdpau=disabled \
  -Dgallium-omx=disabled \
  -Dvideo-codecs=[] \
  -Ddri-drivers-path=/usr/lib64/dri
``

Step 5: Build and install into a staging directory
eson compile -C build-t1040 -j$(nproc)

 

DESTDIR=$PWD/stage meson install -C build-t1040

You should typically end up with something like:

stage/usr/lib64/dri/radeonsi_dri.so
 
Step 6: Copy to the target
scp stage/usr/lib64/dri/radeonsi_dri.so root@:/usr/lib64/dri/
``

Step 7: Test on the T1040
export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
export LIBGL_DRIVERS_PATH=/usr/lib64/dri
glxinfo -B
 
If you are using Yocto:

For an embedded T1040 project, the cleanest solution is usually not to manually copy one .so, but to enable mesa with radeonsi in your Yocto image/recipe, so the entire dependency chain stays version-aligned.

タグ(1)
評価なし
バージョン履歴
最終更新日:
8 時間前
更新者: