Toradex Apalis iMX8 + Black Magic Decklink Micro SDI recorder

Hello,

I wanted to know if a Blackmagic Decklink micro SDI m.2/mPCIe card would work with Toradex Apalis imx8 board using Torizon

Blackmagic does provide arm64 drivers for this board and i have run the board successfully on a nvidia jetson xavier nx board.

the drivers are provided as deb packages or rpm or tarball. I am wondering if this would work with Torizon OS . would trying to install the deb package in debian based container work ?

the package seems to require following dependencies

 Software Dependencies
---------------------

The Desktop Video packages require some additional libraries and packages:

 * dkms
 * Linux kernel headers/source (for currently running kernel version)

All packages above are included in most modern distributions. Consult your
distribution's documentation for more information.

i have attached the full readme from the driver package as reference.
ReadMe.txt (12.9 KB)

`

Hi @nkj !

We are checking the information you shared and will get back to you as soon as possible.

In the meantime, could you please share the following information:

Best regards,

see below result from tdx-info. for the current testing using the ixora carrier board.

Software summary
------------------------------------------------------------
Bootloader:               U-Boot
Kernel version:           5.15.129-6.5.0+git.6f8fd49366db #1-TorizonCore SMP PREEMPT Fri Dec 22 11:15:52 UTC 2023
Kernel command line:      pci=nomsi root=LABEL=otaroot rootfstype=ext4 quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:3 ostree=/ostree/boot.1/torizon/d84a97a24c27b978c409f4a362d0c0c28589d246081ac1a02c48b317582ca645/0
Distro name:              NAME="TorizonCore"
Distro version:           VERSION_ID=6.5.0-build.8
Distro variant:           VARIANT="Docker"
Hostname:                 apalis-imx8-06548593
------------------------------------------------------------

Hardware info
------------------------------------------------------------
HW model:                 Toradex Apalis iMX8QM/QP on Apalis Evaluation Board
Toradex version:          0037 V1.0B
Serial number:            06548593
Processor arch:           aarch64
------------------------------------------------------------

i have tried to run the deb package using apt inside a debian container running on torizon os. not sure if this is the correct approach but it did not work complaining about missing linux headers.
here is the result

root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# apt install ./desktopvideo_12.7.1a1_arm64.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'desktopvideo' instead of './desktopvideo_12.7.1a1_arm64.deb'
The following additional packages will be installed:
  binutils binutils-aarch64-linux-gnu binutils-common bzip2 cpp cpp-12 dkms dpkg-dev gcc gcc-12 kmod libasan8 libatomic1 libbinutils libcc1-0 libctf-nobfd0 libctf0 libdpkg-perl libgcc-12-dev libgdbm-compat4 libgdbm6 libgprofng0
  libhwasan0 libisl23 libitm1 libjansson4 libkmod2 liblsan0 libmpc3 libmpfr6 libperl5.36 libtsan2 libubsan1 linux-headers-6.1.0-17-arm64 linux-headers-6.1.0-17-common linux-headers-arm64 linux-kbuild-6.1 lsb-release make patch perl
  perl-base perl-modules-5.36 xz-utils
Suggested packages:
  binutils-doc bzip2-doc cpp-doc gcc-12-locales cpp-12-doc menu debian-keyring gcc-multilib manpages-dev autoconf automake libtool flex bison gdb gcc-doc gcc-12-doc gnupg | sq | sqop | pgpainless-cli sensible-utils git bzr gdbm-l10n
  make-doc ed diffutils-doc perl-doc libterm-readline-gnu-perl | libterm-readline-perl-perl libtap-harness-archive-perl
Recommended packages:
  desktopvideo-gui fakeroot build-essential gnupg | sq | sqop | pgpainless-cli libalgorithm-merge-perl libc6-dev | libc-dev libc6-dev libfile-fcntllock-perl liblocale-gettext-perl
The following NEW packages will be installed:
  binutils binutils-aarch64-linux-gnu binutils-common bzip2 cpp cpp-12 desktopvideo dkms dpkg-dev gcc gcc-12 kmod libasan8 libatomic1 libbinutils libcc1-0 libctf-nobfd0 libctf0 libdpkg-perl libgcc-12-dev libgdbm-compat4 libgdbm6
  libgprofng0 libhwasan0 libisl23 libitm1 libjansson4 libkmod2 liblsan0 libmpc3 libmpfr6 libperl5.36 libtsan2 libubsan1 linux-headers-6.1.0-17-arm64 linux-headers-6.1.0-17-common linux-headers-arm64 linux-kbuild-6.1 lsb-release make
  patch perl perl-modules-5.36 xz-utils
The following packages will be upgraded:
  perl-base
1 upgraded, 44 newly installed, 0 to remove and 9 not upgraded.
Need to get 64.8 MB/210 MB of archives.
After this operation, 456 MB of additional disk space will be used.
Get:1 /home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64/desktopvideo_12.7.1a1_arm64.deb desktopvideo arm64 12.7.1a1 [145 MB]
Get:2 http://deb.debian.org/debian bookworm/main arm64 perl-base arm64 5.36.0-7+deb12u1 [1478 kB]
Get:3 http://deb.debian.org/debian bookworm/main arm64 perl-modules-5.36 all 5.36.0-7+deb12u1 [2815 kB]
Get:4 http://deb.debian.org/debian bookworm/main arm64 libgdbm6 arm64 1.23-3 [70.9 kB]
Get:5 http://deb.debian.org/debian bookworm/main arm64 libgdbm-compat4 arm64 1.23-3 [48.0 kB]
Get:6 http://deb.debian.org/debian bookworm/main arm64 libperl5.36 arm64 5.36.0-7+deb12u1 [4014 kB]
Get:7 http://deb.debian.org/debian bookworm/main arm64 perl arm64 5.36.0-7+deb12u1 [239 kB]
Get:8 http://deb.debian.org/debian bookworm/main arm64 lsb-release all 12.0-1 [6416 B]
Get:9 http://deb.debian.org/debian bookworm/main arm64 libkmod2 arm64 30+20221128-1 [54.4 kB]
Get:10 http://deb.debian.org/debian bookworm/main arm64 kmod arm64 30+20221128-1 [89.9 kB]
Get:11 http://deb.debian.org/debian bookworm/main arm64 libisl23 arm64 0.25-1 [611 kB]
Get:12 http://deb.debian.org/debian bookworm/main arm64 libmpfr6 arm64 4.2.0-1 [600 kB]
Get:13 http://deb.debian.org/debian bookworm/main arm64 libmpc3 arm64 1.3.1-1 [49.2 kB]
Get:14 http://deb.debian.org/debian bookworm/main arm64 cpp-12 arm64 12.2.0-14 [8226 kB]
Get:15 http://deb.debian.org/debian bookworm/main arm64 cpp arm64 4:12.2.0-3 [6832 B]
Get:16 http://deb.debian.org/debian bookworm/main arm64 libcc1-0 arm64 12.2.0-14 [37.7 kB]
Get:17 http://deb.debian.org/debian bookworm/main arm64 binutils-common arm64 2.40-2 [2487 kB]
Get:18 http://deb.debian.org/debian bookworm/main arm64 libbinutils arm64 2.40-2 [645 kB]
Get:19 http://deb.debian.org/debian bookworm/main arm64 libctf-nobfd0 arm64 2.40-2 [144 kB]
Get:20 http://deb.debian.org/debian bookworm/main arm64 libctf0 arm64 2.40-2 [79.2 kB]
Get:21 http://deb.debian.org/debian bookworm/main arm64 libgprofng0 arm64 2.40-2 [680 kB]
Get:22 http://deb.debian.org/debian bookworm/main arm64 libjansson4 arm64 2.14-2 [40.2 kB]
Get:23 http://deb.debian.org/debian bookworm/main arm64 binutils-aarch64-linux-gnu arm64 2.40-2 [2637 kB]
Get:24 http://deb.debian.org/debian bookworm/main arm64 binutils arm64 2.40-2 [64.9 kB]
Get:25 http://deb.debian.org/debian bookworm/main arm64 libitm1 arm64 12.2.0-14 [23.9 kB]
Get:26 http://deb.debian.org/debian bookworm/main arm64 libatomic1 arm64 12.2.0-14 [9536 B]
Get:27 http://deb.debian.org/debian bookworm/main arm64 libasan8 arm64 12.2.0-14 [2095 kB]
Get:28 http://deb.debian.org/debian bookworm/main arm64 liblsan0 arm64 12.2.0-14 [926 kB]
Get:29 http://deb.debian.org/debian bookworm/main arm64 libtsan2 arm64 12.2.0-14 [2179 kB]
Get:30 http://deb.debian.org/debian bookworm/main arm64 libubsan1 arm64 12.2.0-14 [862 kB]
Get:31 http://deb.debian.org/debian bookworm/main arm64 libhwasan0 arm64 12.2.0-14 [998 kB]
Get:32 http://deb.debian.org/debian bookworm/main arm64 libgcc-12-dev arm64 12.2.0-14 [959 kB]
Get:33 http://deb.debian.org/debian bookworm/main arm64 gcc-12 arm64 12.2.0-14 [16.3 MB]
Get:34 http://deb.debian.org/debian bookworm/main arm64 gcc arm64 4:12.2.0-3 [5244 B]
Get:35 http://deb.debian.org/debian bookworm/main arm64 libdpkg-perl all 1.21.22 [603 kB]
Get:36 http://deb.debian.org/debian bookworm/main arm64 bzip2 arm64 1.0.8-5+b1 [48.9 kB]
Get:37 http://deb.debian.org/debian bookworm/main arm64 xz-utils arm64 5.4.1-0.2 [469 kB]
Get:38 http://deb.debian.org/debian bookworm/main arm64 patch arm64 2.7.6-7 [121 kB]
Get:39 http://deb.debian.org/debian bookworm/main arm64 make arm64 4.3-4.1 [391 kB]
Get:40 http://deb.debian.org/debian bookworm/main arm64 dpkg-dev all 1.21.22 [1353 kB]
Get:41 http://deb.debian.org/debian bookworm/main arm64 dkms all 3.0.10-8+deb12u1 [48.7 kB]
Get:42 http://deb.debian.org/debian-security bookworm-security/main arm64 linux-headers-6.1.0-17-common all 6.1.69-1 [9934 kB]
Get:43 http://deb.debian.org/debian-security bookworm-security/main arm64 linux-kbuild-6.1 arm64 6.1.69-1 [1011 kB]
Get:44 http://deb.debian.org/debian-security bookworm-security/main arm64 linux-headers-6.1.0-17-arm64 arm64 6.1.69-1 [1288 kB]
Get:45 http://deb.debian.org/debian-security bookworm-security/main arm64 linux-headers-arm64 arm64 6.1.69-1 [1412 B]
Fetched 64.8 MB in 18s (3690 kB/s)
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78, <> line 45.)
debconf: falling back to frontend: Readline
debconf: unable to initialize frontend: Readline
debconf: (Can't locate Term/ReadLine.pm in @INC (you may need to install the Term::ReadLine module) (@INC contains: /etc/perl /usr/local/lib/aarch64-linux-gnu/perl/5.36.0 /usr/local/share/perl/5.36.0 /usr/lib/aarch64-linux-gnu/perl5/5.36 /usr/share/perl5 /usr/lib/aarch64-linux-gnu/perl-base /usr/lib/aarch64-linux-gnu/perl/5.36 /usr/share/perl/5.36 /usr/local/lib/site_perl) at /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7, <> line 45.)
debconf: falling back to frontend: Teletype
Extracting templates from packages: 100%
(Reading database ... 11542 files and directories currently installed.)
Preparing to unpack .../perl-base_5.36.0-7+deb12u1_arm64.deb ...
Unpacking perl-base (5.36.0-7+deb12u1) over (5.36.0-7) ...
Setting up perl-base (5.36.0-7+deb12u1) ...
Selecting previously unselected package perl-modules-5.36.
(Reading database ... 11542 files and directories currently installed.)
Preparing to unpack .../00-perl-modules-5.36_5.36.0-7+deb12u1_all.deb ...
Unpacking perl-modules-5.36 (5.36.0-7+deb12u1) ...
Selecting previously unselected package libgdbm6:arm64.
Preparing to unpack .../01-libgdbm6_1.23-3_arm64.deb ...
Unpacking libgdbm6:arm64 (1.23-3) ...
Selecting previously unselected package libgdbm-compat4:arm64.
Preparing to unpack .../02-libgdbm-compat4_1.23-3_arm64.deb ...
Unpacking libgdbm-compat4:arm64 (1.23-3) ...
Selecting previously unselected package libperl5.36:arm64.
Preparing to unpack .../03-libperl5.36_5.36.0-7+deb12u1_arm64.deb ...
Unpacking libperl5.36:arm64 (5.36.0-7+deb12u1) ...
Selecting previously unselected package perl.
Preparing to unpack .../04-perl_5.36.0-7+deb12u1_arm64.deb ...
Unpacking perl (5.36.0-7+deb12u1) ...
Selecting previously unselected package lsb-release.
Preparing to unpack .../05-lsb-release_12.0-1_all.deb ...
Unpacking lsb-release (12.0-1) ...
Selecting previously unselected package libkmod2:arm64.
Preparing to unpack .../06-libkmod2_30+20221128-1_arm64.deb ...
Unpacking libkmod2:arm64 (30+20221128-1) ...
Selecting previously unselected package kmod.
Preparing to unpack .../07-kmod_30+20221128-1_arm64.deb ...
Unpacking kmod (30+20221128-1) ...
Selecting previously unselected package libisl23:arm64.
Preparing to unpack .../08-libisl23_0.25-1_arm64.deb ...
Unpacking libisl23:arm64 (0.25-1) ...
Selecting previously unselected package libmpfr6:arm64.
Preparing to unpack .../09-libmpfr6_4.2.0-1_arm64.deb ...
Unpacking libmpfr6:arm64 (4.2.0-1) ...
Selecting previously unselected package libmpc3:arm64.
Preparing to unpack .../10-libmpc3_1.3.1-1_arm64.deb ...
Unpacking libmpc3:arm64 (1.3.1-1) ...
Selecting previously unselected package cpp-12.
Preparing to unpack .../11-cpp-12_12.2.0-14_arm64.deb ...
Unpacking cpp-12 (12.2.0-14) ...
Selecting previously unselected package cpp.
Preparing to unpack .../12-cpp_4%3a12.2.0-3_arm64.deb ...
Unpacking cpp (4:12.2.0-3) ...
Selecting previously unselected package libcc1-0:arm64.
Preparing to unpack .../13-libcc1-0_12.2.0-14_arm64.deb ...
Unpacking libcc1-0:arm64 (12.2.0-14) ...
Selecting previously unselected package binutils-common:arm64.
Preparing to unpack .../14-binutils-common_2.40-2_arm64.deb ...
Unpacking binutils-common:arm64 (2.40-2) ...
Selecting previously unselected package libbinutils:arm64.
Preparing to unpack .../15-libbinutils_2.40-2_arm64.deb ...
Unpacking libbinutils:arm64 (2.40-2) ...
Selecting previously unselected package libctf-nobfd0:arm64.
Preparing to unpack .../16-libctf-nobfd0_2.40-2_arm64.deb ...
Unpacking libctf-nobfd0:arm64 (2.40-2) ...
Selecting previously unselected package libctf0:arm64.
Preparing to unpack .../17-libctf0_2.40-2_arm64.deb ...
Unpacking libctf0:arm64 (2.40-2) ...
Selecting previously unselected package libgprofng0:arm64.
Preparing to unpack .../18-libgprofng0_2.40-2_arm64.deb ...
Unpacking libgprofng0:arm64 (2.40-2) ...
Selecting previously unselected package libjansson4:arm64.
Preparing to unpack .../19-libjansson4_2.14-2_arm64.deb ...
Unpacking libjansson4:arm64 (2.14-2) ...
Selecting previously unselected package binutils-aarch64-linux-gnu.
Preparing to unpack .../20-binutils-aarch64-linux-gnu_2.40-2_arm64.deb ...
Unpacking binutils-aarch64-linux-gnu (2.40-2) ...
Selecting previously unselected package binutils.
Preparing to unpack .../21-binutils_2.40-2_arm64.deb ...
Unpacking binutils (2.40-2) ...
Selecting previously unselected package libitm1:arm64.
Preparing to unpack .../22-libitm1_12.2.0-14_arm64.deb ...
Unpacking libitm1:arm64 (12.2.0-14) ...
Selecting previously unselected package libatomic1:arm64.
Preparing to unpack .../23-libatomic1_12.2.0-14_arm64.deb ...
Unpacking libatomic1:arm64 (12.2.0-14) ...
Selecting previously unselected package libasan8:arm64.
Preparing to unpack .../24-libasan8_12.2.0-14_arm64.deb ...
Unpacking libasan8:arm64 (12.2.0-14) ...
Selecting previously unselected package liblsan0:arm64.
Preparing to unpack .../25-liblsan0_12.2.0-14_arm64.deb ...
Unpacking liblsan0:arm64 (12.2.0-14) ...
Selecting previously unselected package libtsan2:arm64.
Preparing to unpack .../26-libtsan2_12.2.0-14_arm64.deb ...
Unpacking libtsan2:arm64 (12.2.0-14) ...
Selecting previously unselected package libubsan1:arm64.
Preparing to unpack .../27-libubsan1_12.2.0-14_arm64.deb ...
Unpacking libubsan1:arm64 (12.2.0-14) ...
Selecting previously unselected package libhwasan0:arm64.
Preparing to unpack .../28-libhwasan0_12.2.0-14_arm64.deb ...
Unpacking libhwasan0:arm64 (12.2.0-14) ...
Selecting previously unselected package libgcc-12-dev:arm64.
Preparing to unpack .../29-libgcc-12-dev_12.2.0-14_arm64.deb ...
Unpacking libgcc-12-dev:arm64 (12.2.0-14) ...
Selecting previously unselected package gcc-12.
Preparing to unpack .../30-gcc-12_12.2.0-14_arm64.deb ...
Unpacking gcc-12 (12.2.0-14) ...
Selecting previously unselected package gcc.
Preparing to unpack .../31-gcc_4%3a12.2.0-3_arm64.deb ...
Unpacking gcc (4:12.2.0-3) ...
Selecting previously unselected package libdpkg-perl.
Preparing to unpack .../32-libdpkg-perl_1.21.22_all.deb ...
Unpacking libdpkg-perl (1.21.22) ...
Selecting previously unselected package bzip2.
Preparing to unpack .../33-bzip2_1.0.8-5+b1_arm64.deb ...
Unpacking bzip2 (1.0.8-5+b1) ...
Selecting previously unselected package xz-utils.
Preparing to unpack .../34-xz-utils_5.4.1-0.2_arm64.deb ...
Unpacking xz-utils (5.4.1-0.2) ...
Selecting previously unselected package patch.
Preparing to unpack .../35-patch_2.7.6-7_arm64.deb ...
Unpacking patch (2.7.6-7) ...
Selecting previously unselected package make.
Preparing to unpack .../36-make_4.3-4.1_arm64.deb ...
Unpacking make (4.3-4.1) ...
Selecting previously unselected package dpkg-dev.
Preparing to unpack .../37-dpkg-dev_1.21.22_all.deb ...
Unpacking dpkg-dev (1.21.22) ...
Setting up lsb-release (12.0-1) ...
Selecting previously unselected package dkms.
(Reading database ... 15108 files and directories currently installed.)
Preparing to unpack .../0-dkms_3.0.10-8+deb12u1_all.deb ...
Unpacking dkms (3.0.10-8+deb12u1) ...
Selecting previously unselected package linux-headers-6.1.0-17-common.
Preparing to unpack .../1-linux-headers-6.1.0-17-common_6.1.69-1_all.deb ...
Unpacking linux-headers-6.1.0-17-common (6.1.69-1) ...
Selecting previously unselected package linux-kbuild-6.1.
Preparing to unpack .../2-linux-kbuild-6.1_6.1.69-1_arm64.deb ...
Unpacking linux-kbuild-6.1 (6.1.69-1) ...
Selecting previously unselected package linux-headers-6.1.0-17-arm64.
Preparing to unpack .../3-linux-headers-6.1.0-17-arm64_6.1.69-1_arm64.deb ...
Unpacking linux-headers-6.1.0-17-arm64 (6.1.69-1) ...
Selecting previously unselected package linux-headers-arm64.
Preparing to unpack .../4-linux-headers-arm64_6.1.69-1_arm64.deb ...
Unpacking linux-headers-arm64 (6.1.69-1) ...
Selecting previously unselected package desktopvideo.
Preparing to unpack .../5-desktopvideo_12.7.1a1_arm64.deb ...
Unpacking desktopvideo (12.7.1a1) ...
Setting up binutils-common:arm64 (2.40-2) ...
Setting up libctf-nobfd0:arm64 (2.40-2) ...
Setting up bzip2 (1.0.8-5+b1) ...
Setting up libjansson4:arm64 (2.14-2) ...
Setting up perl-modules-5.36 (5.36.0-7+deb12u1) ...
Setting up make (4.3-4.1) ...
Setting up libmpfr6:arm64 (4.2.0-1) ...
Setting up xz-utils (5.4.1-0.2) ...
update-alternatives: using /usr/bin/xz to provide /usr/bin/lzma (lzma) in auto mode
update-alternatives: warning: skip creation of /usr/share/man/man1/lzma.1.gz because associated file /usr/share/man/man1/xz.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/unlzma.1.gz because associated file /usr/share/man/man1/unxz.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzcat.1.gz because associated file /usr/share/man/man1/xzcat.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzmore.1.gz because associated file /usr/share/man/man1/xzmore.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzless.1.gz because associated file /usr/share/man/man1/xzless.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzdiff.1.gz because associated file /usr/share/man/man1/xzdiff.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzcmp.1.gz because associated file /usr/share/man/man1/xzcmp.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzgrep.1.gz because associated file /usr/share/man/man1/xzgrep.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzegrep.1.gz because associated file /usr/share/man/man1/xzegrep.1.gz (of link group lzma) doesn't exist
update-alternatives: warning: skip creation of /usr/share/man/man1/lzfgrep.1.gz because associated file /usr/share/man/man1/xzfgrep.1.gz (of link group lzma) doesn't exist
Setting up libmpc3:arm64 (1.3.1-1) ...
Setting up libatomic1:arm64 (12.2.0-14) ...
Setting up patch (2.7.6-7) ...
Setting up libubsan1:arm64 (12.2.0-14) ...
Setting up linux-headers-6.1.0-17-common (6.1.69-1) ...
Setting up libhwasan0:arm64 (12.2.0-14) ...
Setting up libasan8:arm64 (12.2.0-14) ...
Setting up libtsan2:arm64 (12.2.0-14) ...
Setting up libbinutils:arm64 (2.40-2) ...
Setting up libisl23:arm64 (0.25-1) ...
Setting up linux-kbuild-6.1 (6.1.69-1) ...
Setting up libcc1-0:arm64 (12.2.0-14) ...
Setting up liblsan0:arm64 (12.2.0-14) ...
Setting up libitm1:arm64 (12.2.0-14) ...
Setting up libkmod2:arm64 (30+20221128-1) ...
Setting up libgdbm6:arm64 (1.23-3) ...
Setting up libctf0:arm64 (2.40-2) ...
Setting up cpp-12 (12.2.0-14) ...
Setting up kmod (30+20221128-1) ...
Setting up libgprofng0:arm64 (2.40-2) ...
Setting up libgcc-12-dev:arm64 (12.2.0-14) ...
Setting up libgdbm-compat4:arm64 (1.23-3) ...
Setting up cpp (4:12.2.0-3) ...
Setting up libperl5.36:arm64 (5.36.0-7+deb12u1) ...
Setting up binutils-aarch64-linux-gnu (2.40-2) ...
Setting up binutils (2.40-2) ...
Setting up perl (5.36.0-7+deb12u1) ...
Setting up gcc-12 (12.2.0-14) ...
Setting up linux-headers-6.1.0-17-arm64 (6.1.69-1) ...
Setting up libdpkg-perl (1.21.22) ...
Setting up linux-headers-arm64 (6.1.69-1) ...
Setting up gcc (4:12.2.0-3) ...
Setting up dpkg-dev (1.21.22) ...
Setting up dkms (3.0.10-8+deb12u1) ...
Setting up desktopvideo (12.7.1a1) ...
Preparing new blackmagic-io driver for 5.15.129-6.5.0+git.6f8fd49366db kernel...
  Adding to DKMS
  Building (failed)
Loading modules...
Adding sysvinit services...
  DesktopVideoHelper
Starting sysvinit services...
  DesktopVideoHelper

********************************************************************************
Failed to build driver(s)

Possible causes:
 1. Driver is incompatible with your kernel version
 2. Kernel headers/gcc/make/etc. is not installed
 3. Kernel header version does not match the running kernel (5.15.129-6.5.0+git.6f8fd49366db)

Error messages:
dkms build -m blackmagic-io -v 12.7.1a1
---
Sign command: /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/build/scripts/sign-file
Binary /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/build/scripts/sign-file not found, modules won't be signed
Error! Your kernel headers for kernel 5.15.129-6.5.0+git.6f8fd49366db cannot be found at /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/build or /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/source.
Please install the linux-headers-5.15.129-6.5.0+git.6f8fd49366db package or use the --kernelsourcedir option to tell DKMS where it's located.

********************************************************************************

Processing triggers for libc-bin (2.36-9+deb12u3) ...
root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# apt install build-essential
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  g++ g++-12 libc-dev-bin libc6-dev libcrypt-dev libnsl-dev libnsl2 libstdc++-12-dev libtirpc-dev linux-libc-dev rpcsvc-proto
Suggested packages:
  gcc-12-doc glibc-doc manpages-dev libstdc++-12-doc
Recommended packages:
  manpages manpages-dev libc-devtools
The following NEW packages will be installed:
  build-essential g++ g++-12 libc-dev-bin libc6-dev libcrypt-dev libnsl-dev libnsl2 libstdc++-12-dev libtirpc-dev linux-libc-dev rpcsvc-proto
0 upgraded, 12 newly installed, 0 to remove and 9 not upgraded.
Need to get 14.9 MB of archives.
After this operation, 70.1 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian bookworm/main arm64 libc-dev-bin arm64 2.36-9+deb12u3 [44.3 kB]
Get:2 http://deb.debian.org/debian-security bookworm-security/main arm64 linux-libc-dev arm64 6.1.69-1 [1886 kB]
Get:3 http://deb.debian.org/debian bookworm/main arm64 libcrypt-dev arm64 1:4.4.33-2 [121 kB]
Get:4 http://deb.debian.org/debian bookworm/main arm64 libnsl2 arm64 1.3.0-2 [36.9 kB]
Get:5 http://deb.debian.org/debian bookworm/main arm64 libtirpc-dev arm64 1.3.3+ds-1 [194 kB]
Get:6 http://deb.debian.org/debian bookworm/main arm64 libnsl-dev arm64 1.3.0-2 [66.1 kB]
Get:7 http://deb.debian.org/debian bookworm/main arm64 rpcsvc-proto arm64 1.4.3-1 [59.7 kB]
Get:8 http://deb.debian.org/debian bookworm/main arm64 libc6-dev arm64 2.36-9+deb12u3 [1428 kB]
Get:9 http://deb.debian.org/debian bookworm/main arm64 libstdc++-12-dev arm64 12.2.0-14 [2006 kB]
Get:10 http://deb.debian.org/debian bookworm/main arm64 g++-12 arm64 12.2.0-14 [9071 kB]
Get:11 http://deb.debian.org/debian bookworm/main arm64 g++ arm64 4:12.2.0-3 [1336 B]
Get:12 http://deb.debian.org/debian bookworm/main arm64 build-essential arm64 12.9 [7704 B]
Fetched 14.9 MB in 11s (1316 kB/s)
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78, <> line 12.)
debconf: falling back to frontend: Readline
Selecting previously unselected package libc-dev-bin.
(Reading database ... 31711 files and directories currently installed.)
Preparing to unpack .../00-libc-dev-bin_2.36-9+deb12u3_arm64.deb ...
Unpacking libc-dev-bin (2.36-9+deb12u3) ...
Selecting previously unselected package linux-libc-dev:arm64.
Preparing to unpack .../01-linux-libc-dev_6.1.69-1_arm64.deb ...
Unpacking linux-libc-dev:arm64 (6.1.69-1) ...
Selecting previously unselected package libcrypt-dev:arm64.
Preparing to unpack .../02-libcrypt-dev_1%3a4.4.33-2_arm64.deb ...
Unpacking libcrypt-dev:arm64 (1:4.4.33-2) ...
Selecting previously unselected package libnsl2:arm64.
Preparing to unpack .../03-libnsl2_1.3.0-2_arm64.deb ...
Unpacking libnsl2:arm64 (1.3.0-2) ...
Selecting previously unselected package libtirpc-dev:arm64.
Preparing to unpack .../04-libtirpc-dev_1.3.3+ds-1_arm64.deb ...
Unpacking libtirpc-dev:arm64 (1.3.3+ds-1) ...
Selecting previously unselected package libnsl-dev:arm64.
Preparing to unpack .../05-libnsl-dev_1.3.0-2_arm64.deb ...
Unpacking libnsl-dev:arm64 (1.3.0-2) ...
Selecting previously unselected package rpcsvc-proto.
Preparing to unpack .../06-rpcsvc-proto_1.4.3-1_arm64.deb ...
Unpacking rpcsvc-proto (1.4.3-1) ...
Selecting previously unselected package libc6-dev:arm64.
Preparing to unpack .../07-libc6-dev_2.36-9+deb12u3_arm64.deb ...
Unpacking libc6-dev:arm64 (2.36-9+deb12u3) ...
Selecting previously unselected package libstdc++-12-dev:arm64.
Preparing to unpack .../08-libstdc++-12-dev_12.2.0-14_arm64.deb ...
Unpacking libstdc++-12-dev:arm64 (12.2.0-14) ...
Selecting previously unselected package g++-12.
Preparing to unpack .../09-g++-12_12.2.0-14_arm64.deb ...
Unpacking g++-12 (12.2.0-14) ...
Selecting previously unselected package g++.
Preparing to unpack .../10-g++_4%3a12.2.0-3_arm64.deb ...
Unpacking g++ (4:12.2.0-3) ...
Selecting previously unselected package build-essential.
Preparing to unpack .../11-build-essential_12.9_arm64.deb ...
Unpacking build-essential (12.9) ...
Setting up linux-libc-dev:arm64 (6.1.69-1) ...
Setting up libtirpc-dev:arm64 (1.3.3+ds-1) ...
Setting up rpcsvc-proto (1.4.3-1) ...
Setting up libcrypt-dev:arm64 (1:4.4.33-2) ...
Setting up libnsl2:arm64 (1.3.0-2) ...
Setting up libc-dev-bin (2.36-9+deb12u3) ...
Setting up libnsl-dev:arm64 (1.3.0-2) ...
Setting up libc6-dev:arm64 (2.36-9+deb12u3) ...
Setting up libstdc++-12-dev:arm64 (12.2.0-14) ...
Setting up g++-12 (12.2.0-14) ...
Setting up g++ (4:12.2.0-3) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Setting up build-essential (12.9) ...
Processing triggers for libc-bin (2.36-9+deb12u3) ...
root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# apt remove ./desktopvideo_12.7.1a1_arm64.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'desktopvideo' instead of './desktopvideo_12.7.1a1_arm64.deb'
desktopvideo is already the newest version (12.7.1a1).
0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# apt remove desktopvideo
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages were automatically installed and are no longer required:
  dkms kmod libkmod2 linux-headers-6.1.0-17-arm64 linux-headers-6.1.0-17-common linux-headers-arm64 linux-kbuild-6.1 lsb-release
Use 'apt autoremove' to remove them.
The following packages will be REMOVED:
  desktopvideo
0 upgraded, 0 newly installed, 1 to remove and 9 not upgraded.
After this operation, 165 MB disk space will be freed.
(Reading database ... 34236 files and directories currently installed.)
Removing desktopvideo (12.7.1a1) ...
Stopping sysvinit services...
  DesktopVideoHelper
Unloading modules...
Removing old drivers...
  blackmagic-io
Removing sysvinit services...
  DesktopVideoHelper
root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# apt install ./desktopvideo_12.7.1a1_arm64.deb
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'desktopvideo' instead of './desktopvideo_12.7.1a1_arm64.deb'
Recommended packages:
  desktopvideo-gui
The following NEW packages will be installed:
  desktopvideo
0 upgraded, 1 newly installed, 0 to remove and 9 not upgraded.
Need to get 0 B/145 MB of archives.
After this operation, 165 MB of additional disk space will be used.
Get:1 /home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64/desktopvideo_12.7.1a1_arm64.deb desktopvideo arm64 12.7.1a1 [145 MB]
debconf: unable to initialize frontend: Dialog
debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78, <> line 1.)
debconf: falling back to frontend: Readline
Selecting previously unselected package desktopvideo.
(Reading database ... 34136 files and directories currently installed.)
Preparing to unpack .../desktopvideo_12.7.1a1_arm64.deb ...
Unpacking desktopvideo (12.7.1a1) ...
Setting up desktopvideo (12.7.1a1) ...
Preparing new blackmagic-io driver for 5.15.129-6.5.0+git.6f8fd49366db kernel...
  Adding to DKMS
  Building (failed)
Loading modules...
Adding sysvinit services...
  DesktopVideoHelper
Starting sysvinit services...
  DesktopVideoHelper

********************************************************************************
Failed to build driver(s)

Possible causes:
 1. Driver is incompatible with your kernel version
 2. Kernel headers/gcc/make/etc. is not installed
 3. Kernel header version does not match the running kernel (5.15.129-6.5.0+git.6f8fd49366db)

Error messages:
dkms build -m blackmagic-io -v 12.7.1a1
---
Sign command: /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/build/scripts/sign-file
Binary /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/build/scripts/sign-file not found, modules won't be signed
Error! Your kernel headers for kernel 5.15.129-6.5.0+git.6f8fd49366db cannot be found at /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/build or /lib/modules/5.15.129-6.5.0+git.6f8fd49366db/source.
Please install the linux-headers-5.15.129-6.5.0+git.6f8fd49366db package or use the --kernelsourcedir option to tell DKMS where it's located.

********************************************************************************

root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# gcc
gcc: fatal error: no input files
compilation terminated.
root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# make
make: *** No targets specified and no makefile found.  Stop.
root@apalis-imx8-06548593:/home/torizon/Blackmagic_Desktop_Video_Linux_12.7.1/deb/aarch64# uname -a
Linux apalis-imx8-06548593 5.15.129-6.5.0+git.6f8fd49366db #1-TorizonCore SMP PREEMPT Fri Dec 22 11:15:52 UTC 2023 aarch64 GNU/Linux

hi @nkj,

I see there is also an MINI PVIe card from BMD.

would this one work for you too? Because this one has MINI PCIe interface which we have on the IXORA board.

Best Regards,

Matthias

hi @matthias.tx

using a mpcie to m.2 adapter i was able to plug it on the ixora board. and using lspci its correctly detected. in a container with pci-utils and pci-ids installed it correctly shows up as blackmmagic design card.

the problem i am stuck with is that the driver for it needs kernel headers for the currently running kernel which in the torizon build i am running is 5.15.129-6.5.0+git.6f8fd49366db . see the error message in previous post. under torizon core are the kernel headers on the device ?

just realized that torizon doesnt have support for the VPU for im8 and doesnt seem there is currently a timeline to support. i guess it might be fool’s errands to try to get the blackmagic driver running in torizon. if the VPU cant be used for video encoding than i am not sure how well the software encoding would handle 1080p30 video input

@nkj, we should have a VPU example here: torizon-samples/vpu/generic/vpuGeneric at bookworm-new · toradex/torizon-samples · GitHub

This sample was created to be used with our IDE V2 extension. But, you should be able to use the Dockerfile as a reference as is.

just realized that torizon doesnt have support for the VPU for im8 and doesnt seem there is currently a timeline to support.

Where did you see this information? Perhaps we need to update something.

Best Regards,
Jeremias

@jeremias.tx this was link i was referring to

this was link i was referring to

Thank you for reporting this, I’ll ask our team to update this article since we now have a working VPU sample.

Best Regards,
Jeremias