Linux 5.6 support?

Getting started with a Blackmagic product? Ask questions here about setup and installation.
  • Author
  • Message
Offline

flimzy

  • Posts: 1
  • Joined: Sat Apr 18, 2020 4:10 pm
  • Real Name: Jonathan Hall

Linux 5.6 support?

PostSat Apr 18, 2020 4:25 pm

I'm running Linux kernel 5.6.4, as my video card is not supported by the 5.4 series.

Installing Blackmagic Desktop 11.5 fails, however. (Full log below). I'm assuming this is simply due to a lack of support for this kernel? If accurate, is there an estimate when the 5.6 kernels will be supported?

Thank you.

Contents of /var/lib/dkms/blackmagic/11.5a34/build/make.log:
--------
DKMS make.log for blackmagic-11.5a34 for kernel 5.6.4 (x86_64)
Sat 18 Apr 2020 05:58:11 PM CEST
make -C /lib/modules/5.6.4/build M=/var/lib/dkms/blackmagic/11.5a34/build
make[1]: Entering directory '/usr/src/linux-headers-5.6.4'
AR /var/lib/dkms/blackmagic/11.5a34/build/built-in.a
CC [M] /var/lib/dkms/blackmagic/11.5a34/build/blackmagic_serial.o
CC [M] /var/lib/dkms/blackmagic/11.5a34/build/blackmagic_core.o
CC [M] /var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.o
SHIPPED /var/lib/dkms/blackmagic/11.5a34/build/bmd-support.o
CC [M] /var/lib/dkms/blackmagic/11.5a34/build/blackmagic_dma.o
CC [M] /var/lib/dkms/blackmagic/11.5a34/build/blackmagic_gate.o
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c: In function ‘dl_uptime’:
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:326:18: error: storage size of ‘ts’ isn’t known
struct timespec ts;
^~
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:327:2: error: implicit declaration of function ‘getrawmonotonic’ [-Werror=implicit-function-declaration]
getrawmonotonic(&ts);
^~~~~~~~~~~~~~~
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:326:18: warning: unused variable ‘ts’ [-Wunused-variable]
struct timespec ts;
^~
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c: In function ‘dl_get_time_us’:
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:337:18: error: storage size of ‘t’ isn’t known
struct timespec t;
^
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:338:2: error: implicit declaration of function ‘getnstimeofday’; did you mean ‘getname_flags’? [-Werror=implicit-function-declaration]
getnstimeofday(&t);
^~~~~~~~~~~~~~
getname_flags
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:337:18: warning: unused variable ‘t’ [-Wunused-variable]
struct timespec t;
^
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c: In function ‘dl_pci_map_bar’:
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:421:9: error: implicit declaration of function ‘ioremap_nocache’; did you mean ‘ioremap_cache’? [-Werror=implicit-function-declaration]
return ioremap_nocache(base, pci_resource_len(dev, bar));
^~~~~~~~~~~~~~~
ioremap_cache
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:421:9: warning: returning ‘int’ from a function with return type ‘void *’ makes pointer from integer without a cast [-Wint-conversion]
return ioremap_nocache(base, pci_resource_len(dev, bar));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c: In function ‘dl_uptime’:
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:332:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c: In function ‘dl_get_time_us’:
/var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.c:345:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:268: /var/lib/dkms/blackmagic/11.5a34/build/blackmagic_lib.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:1683: /var/lib/dkms/blackmagic/11.5a34/build] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-5.6.4'
make: *** [Makefile:43: all] Error 2
Offline
User avatar

Wallacy

  • Posts: 6
  • Joined: Thu Dec 05, 2013 4:13 pm
  • Real Name: Wallacy Freitas

Re: Linux 5.6 support?

PostTue Apr 21, 2020 6:26 pm

Exacly my problem BTW... I tried to change some EXTRA_CFLAGS += , but no luck, i always get some problems with time.h // ktime.h
Offline

wmendez

  • Posts: 24
  • Joined: Fri Dec 14, 2018 6:43 pm
  • Real Name: Will Mendez

Re: Linux 5.6 support?

PostMon May 04, 2020 2:58 am

Same on this end with Kernel 5.6.8-200 on Fedora 31.

Tried running sudo dkms install blackmagic-io/11.5a34 which usually works, but no go.

cat /var/lib/dkms/blackmagic-io/11.5a34/build/make.log
DKMS make.log for blackmagic-io-11.5a34 for kernel 5.6.8-200.fc31.x86_64 (x86_64)
Sun 03 May 2020 10:56:02 PM EDT
make -C /lib/modules/5.6.8-200.fc31.x86_64/build M=/var/lib/dkms/blackmagic-io/11.5a34/build
make[1]: Entering directory '/usr/src/kernels/5.6.8-200.fc31.x86_64'
AR /var/lib/dkms/blackmagic-io/11.5a34/build/built-in.a
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_client.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_dev.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_device.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_driver.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_serial.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_export.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_pci_ids.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bm_locks.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bm_mm.o
SHIPPED /var/lib/dkms/blackmagic-io/11.5a34/build/blackmagic.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bm_pci.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.o
CC [M] /var/lib/dkms/blackmagic-io/11.5a34/build/bmio_audio.o
/var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.c: In function ‘bm_uptime’:
/var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.c:920:18: error: storage size of ‘t’ isn’t known
920 | struct timespec t;
| ^
/var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.c:921:2: error: implicit declaration of function ‘getrawmonotonic’ [-Werror=implicit-function-declaration]
921 | getrawmonotonic(&t);
| ^~~~~~~~~~~~~~~
/var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.c:920:18: warning: unused variable ‘t’ [-Wunused-variable]
920 | struct timespec t;
| ^
/var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.c:926:1: warning: control reaches end of non-void function [-Wreturn-type]
926 | }
| ^
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:268: /var/lib/dkms/blackmagic-io/11.5a34/build/bm_util.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/var/lib/dkms/blackmagic-io/11.5a34/build/bmio_serial.c: In function ‘bmio_serial_remove’:
/var/lib/dkms/blackmagic-io/11.5a34/build/bmio_serial.c:267:2: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
267 | struct tty_struct *tty = tty_port_tty_get(&serial->port);
| ^~~~~~
make[1]: *** [Makefile:1683: /var/lib/dkms/blackmagic-io/11.5a34/build] Error 2
make[1]: Leaving directory '/usr/src/kernels/5.6.8-200.fc31.x86_64'
make: *** [Makefile:46: all] Error 2
Offline

TauAkiou

  • Posts: 2
  • Joined: Tue May 12, 2020 5:04 pm
  • Real Name: Robin Hall

Re: Linux 5.6 support?

PostTue May 12, 2020 5:21 pm

This happens because Linux kernel 5.6 drops several deprecated functions that the blackmagic driver uses:

Code: Select all
struct timespec getrawmonotonic(void)
void getnstimeofday(struct timespec *)
void __iomem * ioremap_nocache(resource_size_t offset, unsigned long size);


I was going to provide some links to information, but the board won't let me post URLs.

I made some small changes to the driver source with the newer definitions to fix the compile errors and it built:
(getrawmonotonic -> ktime_get_raw_ts64)
(getnstimeofday -> ktime_get_real_ts64)
(ioremap_nocache -> ioremap_cache)

The driver seems to work, though I don't know if these changes are going to have any residual effects. Probably best to wait until blackmagic releases a fixed version for kernel 5.6.
Offline

TauAkiou

  • Posts: 2
  • Joined: Tue May 12, 2020 5:04 pm
  • Real Name: Robin Hall

Re: Linux 5.6 support?

PostMon May 18, 2020 10:58 pm

As an update, I tried it out with my PS4 and it seemed to work perfectly fine. I'm going to try it again with a few other devices, but overall those few changes seem to be all it needed to work.

I would post the patches here, for anyone that would want to try them (if you really need your capture card working again), but I can't post files or attach links.

If you want the diff files to try it yourself, DM me.
Offline
User avatar

VennStone

  • Posts: 55
  • Joined: Sun Sep 29, 2019 6:50 pm
  • Location: Athens
  • Real Name: Ven Stone

Re: Linux 5.6 support?

PostThu May 21, 2020 7:49 am

I would be interested in testing this out.
Debian 10 / 11
Magewell 11100 Pro
Intensity Pro
Intensity Pro 4K
DeckLink Mini Recorder 4K
DeckLink Quad
Offline

superfly

  • Posts: 3
  • Joined: Sun Jun 07, 2020 3:12 am
  • Real Name: Raoul Snyman

Re: Linux 5.6 support?

PostSun Jun 07, 2020 3:17 am

Thanks @TauAkiou for those pointers, I was able to make the necessary changes to the drivers and compile them. Unfortunately, now all I get is a black screen :-( I tried with a previous kernel version (5.5) and the drivers compiled correctly, but I still had the black screen.
Offline

superfly

  • Posts: 3
  • Joined: Sun Jun 07, 2020 3:12 am
  • Real Name: Raoul Snyman

Re: Linux 5.6 support?

PostMon Jun 08, 2020 9:46 pm

Just wanted to update my post here and say that the reason I was getting a black screen was because my video camera was outputting 1080p, but that the DeckLink recorder needed 1080i. Once I configured my camera to send 1080i, everything worked :-)
Offline

wmendez

  • Posts: 24
  • Joined: Fri Dec 14, 2018 6:43 pm
  • Real Name: Will Mendez

Re: Linux 5.6 support?

PostFri Jul 17, 2020 9:02 pm

Just a heads up, Desktop Video 11.6 is now available for download on the support section. It should resolved the 5.6 Kernel issue.

Return to Getting Started

Who is online

Users browsing this forum: No registered users and 19 guests