PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2870
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 12:04 pm

If you are setting the CMA size on the command line then you are overriding the positioning set by Device Tree. The CMA area needs to be in the first 1GB, so "CMA=512M@256M" ought to work.

PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2870
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 12:06 pm

I observe on my machine that /lib/firmware/brcm doesn't contain a file brcmfmac43455-sdio.raspberrypi,4-model-b.txt but only brcmfmac43455-sdio.txt - is that normal?
Yes, that's normal, although it may be something we change in the future.

User avatar
dickon
Posts: 1418
Joined: Sun Dec 09, 2012 3:54 pm
Location: Home, just outside Reading

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 12:18 pm

PhilE wrote:
Sat Jun 06, 2020 12:04 pm
If you are setting the CMA size on the command line then you are overriding the positioning set by Device Tree. The CMA area needs to be in the first 1GB, so "CMA=512M@256M" ought to work.
It doesn't, and you're the first mention of the '@256M' that I think I've seen around these parts. dom and 6by9 have both suggested 'cma=256M' only.

Code: Select all

root@pi4:~# dmesg | grep -i cma
[    0.000000] Reserved memory: bypass linux,cma node, using cmdline CMA params instead
[    0.000000] OF: reserved mem: node linux,cma compatible matching fail
[    0.000000] cma: Failed to reserve 512 MiB
[    0.000000] Kernel command line: coherent_pool=1M 8250.nr_uarts=1 snd_bcm2835.enable_compat_alsa=0 snd_bcm2835.enable_hdmi=1 snd_bcm2835.enable_headphones=1 video=HDMI-A-1:3840x2160M@60,margin_left=48,margin_right=48,margin_top=48,margin_bottom=48 smsc95xx.macaddr=DC:A6:32:03:0F:D3 vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000  dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/nfs elevator=deadline rootwait rw nfsroot=172.29.23.1:/var/local/nfsroot/telly-buster ip=dhcp consoleblank=0 net.ifnames=0 cma=512M@256M netbooted
[    0.000000] Memory: 1709436K/1835008K available (9532K kernel code, 1102K rwdata, 3348K rodata, 1088K init, 1199K bss, 125572K reserved, 0K cma-reserved)
[   14.941000] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
[   14.958608] bcm2835_vc_sm_cma_probe: Videocore shared memory driver
[   17.094892] [drm:vc4_bo_create [vc4]] *ERROR* Failed to allocate from CMA:
root@pi4:~# uname -a
Linux pi4 5.4.44-v8+ #1320 SMP PREEMPT Wed Jun 3 16:20:05 BST 2020 aarch64 GNU/Linux
root@pi4:~# 

dg1sek
Posts: 3
Joined: Mon May 11, 2020 5:48 pm

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 2:10 pm

dickon wrote:
Sat Jun 06, 2020 11:38 am
cma > 256M stopped it for me. Can you paste the output of 'dmesg | grep -i cma' and your cmdline.txt?

Code: Select all

root@raspberrypi4:~# dmesg | grep -i cma
[    0.000000] Reserved memory: created CMA memory pool at 0x000000001ec00000, size 256 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] Memory: 3626148K/4050944K available (9532K kernel code, 1102K rwdata, 3348K rodata, 1088K init, 1199K bss, 162652K reserved, 262144K cma-reserved)
[    4.939201] vc_sm_cma: module is from the staging directory, the quality is unknown, you have been warned.
[    4.978948] bcm2835_vc_sm_cma_probe: Videocore shared memory driver

Code: Select all

root@raspberrypi4:/boot# more cmdline.txt 
dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=PARTUUID=a9c324d4-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial
-consoles

User avatar
dickon
Posts: 1418
Joined: Sun Dec 09, 2012 3:54 pm
Location: Home, just outside Reading

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 2:24 pm

Hmm. With cma=512M@128M and gpu_mem=256, I get the CMA allocated and wifi still works. So that's a definite improvement.

PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2870
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 2:31 pm

Why do you need so much gpu_mem and CMA?

User avatar
dickon
Posts: 1418
Joined: Sun Dec 09, 2012 3:54 pm
Location: Home, just outside Reading

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 2:40 pm

Honestly? I have no idea.

I have just seen both settings mentioned as a sort of AV-fixing panacea at various times for various problems, and with no real understanding of how the two interoperate -- if at all -- I think I've just ended up with both, more or less by default.

I think I'm now coming to the realisation -- from your question -- that they both more or less do the same thing, with gpu_mem being the whole-GPU-including-IL RAM setting, and the CMA being the modern, V4L2 mechanism to do more or less the same thing? So if I stick to vlc and avoid omxplayer, I can set gpu_mem back to something reasonable like 64M and still have 1080p H.264 working?

PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2870
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 3:02 pm

Yes, that's the idea. GPU RAM is effectively single purpose and only used by OMX etc., whereas with CMA Linux has a chance to also use it for user processes. There is even a mechanism to reverse the memory allocations and allow the VPU to temporarily grab some CMA.

64MB sounds like plenty for the GPU, but if you run into problems you can always up it slightly.

User avatar
dickon
Posts: 1418
Joined: Sun Dec 09, 2012 3:54 pm
Location: Home, just outside Reading

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 3:17 pm

Right, ta.

I've got *two whole gigabytes* in this thing -- the GPU can have what it likes, as far as I'm concerned... :-)

PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2870
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 3:24 pm

Yes, provided it leaves room in the first 1GB for the kernel and CMA.

noee
Posts: 18
Joined: Thu Nov 21, 2019 5:30 pm

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 4:45 pm

Hmmm, begs the question:

Do we still *need* CMA=512M on cmdline.txt with 5.4 and 4K video playback?

PhilE
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 2870
Joined: Mon Sep 29, 2014 1:07 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 5:11 pm

The best way to supply the CMA figure is as a parameter of the vc4-fkms-v3d or vc4-kms-v3d overlay:

Code: Select all

dtoverlay=vc4-fkms-v3d,cma-256
Use "dtoverlay -h vc4-fkms-v3d" for the options.

512MB sounds huge - try lowering it.

User avatar
dickon
Posts: 1418
Joined: Sun Dec 09, 2012 3:54 pm
Location: Home, just outside Reading

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 5:34 pm

That was fun. Don't set cma=64M on the commandline: you get junk on the serial port instead of a console, and the thing crashes after attempting to set the screenmode...

User avatar
dickon
Posts: 1418
Joined: Sun Dec 09, 2012 3:54 pm
Location: Home, just outside Reading

Re: Moving Linux Kernel to 5.4

Sat Jun 06, 2020 7:50 pm

And with gpu_mem=64 I don't get a picture on-screen. 1080p H.264, 4Kp60 display, vlc. Needs 128 to work. So it can have that, and 256M of CMA.

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Sun Jun 07, 2020 4:03 pm

dickon wrote:
Sat Jun 06, 2020 11:34 am
Bluestang wrote:
Sat May 30, 2020 10:51 pm
Update: using the 4.9.118 64bit kernel has no issues for me. 64b kernel is playing videos just fine with vlc and omxplayer.
As of yesterday evening, I've had Linux pi4 5.4.44-v8+ #1320 SMP PREEMPT Wed Jun 3 16:20:05 BST 2020 aarch64 GNU/Linux with fkms playing H.264 and HEVC quite happily, albeit with the usual 1080p max. for H.264, and 8b display for HEVC. Just not as root, as detailed in the 64b kernel thread.
Reminder using a custom Retropie image under Rasbian Buster:

I can confirm that I have no issues as well with 5.4.44-v8+ #1320 using vc4-fkms-v3d.

I tried my luck with the KMS version and here are my results: (OMX player disabled in the EmulationStation menu, this defaults to VLC player)

1. Splashscreens videos do not play. I believe the OMX player is used to play these.

2. I'm get error msgs - mmal_vc_component_create: failed to create component 'vc.ril.hvs' (1:ENOMEM) and mmal_component_create_core: could not create component 'vc.ril.hvs' (1) when the video snaps play in EmulationStation. They still play but...

3. This driver also seems to be unstable because it does crash more often than not right when a new video snap plays. I've tried various things in the config.txt using the KMS options (CMA-256/512,audio on/off, etc) but I still get a crash. I can't pin down what is causing the crash because sometimes it appears stable but then crashes when a different snap plays as a new game is highlighted in a gamelist.

4. One thing of note, the TEX MAX skyrockets to 2000+ with the KMS driver. Not sure what that is about but this the last setting of the display shown with SHOW FPS in EmulationStation setting on.

dom
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5501
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Mon Jun 08, 2020 10:06 am

Bluestang wrote:
Sun Jun 07, 2020 4:03 pm
I can confirm that I have no issues as well with 5.4.44-v8+ #1320 using vc4-fkms-v3d.

I tried my luck with the KMS version and here are my results: (OMX player disabled in the EmulationStation menu, this defaults to VLC player)
KMS is fundamentally incompatible with any firmware code that drives the display or uses the HVS.
The arm is also writing to the HVS and so crashes are expected.
The intention is that trying to use firmware features will fail gracefully (e.g. "could not create component 'vc.ril.hvs' " is desired behaviour).
There may be situations where things slip though, and more likely the arm side code (e.g. retroplayer) doesn't handle the failure well if it's not been tested in that mode.

If you find example code that tries to access HVS/display through firmware and crashes the firmware or kernel then we can take a look (we can't make it work, but making it fail more gracefully may be possible).

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Mon Jun 08, 2020 3:57 pm

dom wrote:
Mon Jun 08, 2020 10:06 am
Bluestang wrote:
Sun Jun 07, 2020 4:03 pm
I can confirm that I have no issues as well with 5.4.44-v8+ #1320 using vc4-fkms-v3d.

I tried my luck with the KMS version and here are my results: (OMX player disabled in the EmulationStation menu, this defaults to VLC player)
KMS is fundamentally incompatible with any firmware code that drives the display or uses the HVS.
The arm is also writing to the HVS and so crashes are expected.
The intention is that trying to use firmware features will fail gracefully (e.g. "could not create component 'vc.ril.hvs' " is desired behaviour).
There may be situations where things slip though, and more likely the arm side code (e.g. retroplayer) doesn't handle the failure well if it's not been tested in that mode.

If you find example code that tries to access HVS/display through firmware and crashes the firmware or kernel then we can take a look (we can't make it work, but making it fail more gracefully may be possible).
I'm not sure where or how to find the code you might need. I'm no expert in this field...

I've experimented more with the KMS driver and I can't get any sound from the emulators when I use the KMS audio driver as well. The custom RetroPie image I'm running plays background music in EmulationStation and that plays fine using the KMS audio driver but no sound in games which I've tried numerous things to no avail.

If I use the built-in Broadcom audio there is no issue except the random crashing but I think has to do more with the VLC player being unstable. I was able to narrow it down to VLC because I also experienced the same crashes in the FKMS driver that was also using the VLC player. Once I switched to the OMX player the crashes went away.

dom
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5501
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Mon Jun 08, 2020 5:04 pm

Bluestang wrote:
Mon Jun 08, 2020 3:57 pm
I've experimented more with the KMS driver and I can't get any sound from the emulators when I use the KMS audio driver as well. The custom RetroPie image I'm running plays background music in EmulationStation and that plays fine using the KMS audio driver but no sound in games which I've tried numerous things to no avail.
Does retropie work with other alsa audio devices? (e.g. USB or I2S)
Did you add the vc4 alsa config file from here?
What does "aplay -L" report? Does "aplay <wav file>" work?

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Mon Jun 08, 2020 6:46 pm

dom wrote:
Mon Jun 08, 2020 5:04 pm
Bluestang wrote:
Mon Jun 08, 2020 3:57 pm
I've experimented more with the KMS driver and I can't get any sound from the emulators when I use the KMS audio driver as well. The custom RetroPie image I'm running plays background music in EmulationStation and that plays fine using the KMS audio driver but no sound in games which I've tried numerous things to no avail.
Does retropie work with other alsa audio devices? (e.g. USB or I2S)
I believe so, but I can't test this. The RetroPie forums are littered with posts about add-on sound card issues that were resolved/fixed. There are setups out there that use an external sound card to provide the sound - i.e. arcade cabinets.
Did you add the vc4 alsa config file from here?
Yes. And I even tried the original vc4hdmi.conf just to be certain.
What does "aplay -L" report? Does "aplay <wav file>" work?

Code: Select all

pi@playbox4:~$ aplay -L
null
    Discard all samples (playback) or generate zero samples (capture)
default:CARD=vc4hdmi
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    Default Audio Device
sysdefault:CARD=vc4hdmi
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    Default Audio Device
hdmi:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    HDMI Audio Output
dmix:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    Direct sample mixing device
dsnoop:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    Direct sample snooping device
hw:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    Direct hardware device without any conversions
plughw:CARD=vc4hdmi,DEV=0
    vc4-hdmi, MAI PCM vc4-hdmi-hifi-0
    Hardware device with all software conversions
default:CARD=vc4hdmi1
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    Default Audio Device
sysdefault:CARD=vc4hdmi1
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    Default Audio Device
hdmi:CARD=vc4hdmi1,DEV=0
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    HDMI Audio Output
dmix:CARD=vc4hdmi1,DEV=0
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    Direct sample mixing device
dsnoop:CARD=vc4hdmi1,DEV=0
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    Direct sample snooping device
hw:CARD=vc4hdmi1,DEV=0
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    Direct hardware device without any conversions
plughw:CARD=vc4hdmi1,DEV=0
    vc4-hdmi1, MAI PCM vc4-hdmi-hifi-0
    Hardware device with all software conversions

This might be the issue?

Code: Select all

pi@playbox4:/tmp$ aplay Ring10.wav
aplay: main:828: audio open error: Device or resource busy

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Tue Jun 09, 2020 12:00 am

dom wrote:
Mon Jun 08, 2020 5:04 pm
Does "aplay <wav file>" work?
I did some more testing and enabled the Broadcom audio driver (dtparam=sound=on) in config.txt. I added the snd_bcm2835.enable_hdmi=1, snd_bcm2835.enable_headphones=1, and snd_bcm2835.enable_compat_alsa=1 to separate the devices for my personal preference. Neither combination of turning them off/on does anything to fix the errors.

1. aplay <wav file> works using the default Broadcom driver as expected. However, when I subsequently play the same wave file using the aplay -D default:vc4hdmi <wav file> (to specify to use the KMS audio driver) I get garbled sound. I am using the default ALSA Front_Center.wav file and what I get back sounds like a garbled male voice - lol. If I try to go back and use the Broadcom driver I get a pcm write error (input/output error).

2. With dtparam=sound=off, I get the same error I reported earlier - aplay: main:828: audio open error: Device or resource busy.

dom
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5501
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Tue Jun 09, 2020 11:44 am

Bluestang wrote:
Tue Jun 09, 2020 12:00 am
2. With dtparam=sound=off, I get the same error I reported earlier - aplay: main:828: audio open error: Device or resource busy.
Sounds like something else is using the alsa device. Is some part of retropi running? Is pulseaudio installed?
Try

Code: Select all

lsof /dev/snd/*

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Tue Jun 09, 2020 1:46 pm

dom wrote:
Tue Jun 09, 2020 11:44 am
Bluestang wrote:
Tue Jun 09, 2020 12:00 am
2. With dtparam=sound=off, I get the same error I reported earlier - aplay: main:828: audio open error: Device or resource busy.
Sounds like something else is using the alsa device. Is some part of retropi running? Is pulseaudio installed?
Try

Code: Select all

lsof /dev/snd/*
Found it: I had to dig deeper into the RetroPie custom image I'm using and there is a Python script that runs in the background (rc.local) that plays the music in EmulationStation.

So now my question shifts to can the KMS audio driver play multiple audio sources at once (i.e. mixing)?

The Python script is continuously running and is detecting if EmulationStation and the emulators in RetroPie are running or not. It's pretty straight forward and its been around for awhile.

Here is the Python script I'm using -https://pastebin.com/7E9JiZGQ

Code: Select all

pi@playbox4:~$ sudo lsof /dev/snd/*
COMMAND PID USER   FD   TYPE DEVICE SIZE/OFF  NODE NAME
alsactl 466 root    4r   CHR  116,0      0t0 13355 /dev/snd/controlC0
alsactl 466 root    5r   CHR 116,32      0t0 13364 /dev/snd/controlC1
alsactl 466 root    6r   CHR 116,64      0t0 13398 /dev/snd/controlC2
python  566 root  mem    CHR 116,16          13354 /dev/snd/pcmC0D0p
python  566 root    3u   CHR  116,0      0t0 13355 /dev/snd/controlC0
python  566 root    5u   CHR 116,16      0t0 13354 /dev/snd/pcmC0D0p
python  566 root    7u   CHR  116,0      0t0 13355 /dev/snd/controlC0

dom
Raspberry Pi Engineer & Forum Moderator
Raspberry Pi Engineer & Forum Moderator
Posts: 5501
Joined: Wed Aug 17, 2011 7:41 pm
Location: Cambridge

Re: Moving Linux Kernel to 5.4

Tue Jun 09, 2020 2:04 pm

Bluestang wrote:
Tue Jun 09, 2020 1:46 pm
So now my question shifts to can the KMS audio driver play multiple audio sources at once (i.e. mixing)?
ALSA only supports on client, so can't mix multiple clients itself.

The gpu firmware already had support for resampling and mixing through openmax,
so we claimed to support 8 ALSA devices and hooked them into the firmware's mixing code.

That's not an option with an arm side driver and the kernel doesn't handling mixing.
I believe pulseaudio and jack are options that can enable this and possibly dmix in alsalib, but I'm not an expert on them.
This is all now standard linux operation. However it is handled on other linux platforms should work here.

A quick search found
https://alsa.opensrc.org/AlsaSharing

Possibly: "Examples of ALSA lib configurations to use the software mixing plugins"

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Thu Jun 11, 2020 12:26 am

dom wrote:
Tue Jun 09, 2020 2:04 pm
Bluestang wrote:
Tue Jun 09, 2020 1:46 pm
So now my question shifts to can the KMS audio driver play multiple audio sources at once (i.e. mixing)?
ALSA only supports on client, so can't mix multiple clients itself.

The gpu firmware already had support for resampling and mixing through openmax,
so we claimed to support 8 ALSA devices and hooked them into the firmware's mixing code.

That's not an option with an arm side driver and the kernel doesn't handling mixing.
I believe pulseaudio and jack are options that can enable this and possibly dmix in alsalib, but I'm not an expert on them.
This is all now standard linux operation. However it is handled on other linux platforms should work here.

A quick search found
https://alsa.opensrc.org/AlsaSharing

Possibly: "Examples of ALSA lib configurations to use the software mixing plugins"
Well, I tried various configs but nothing seemed to work for me.

What I did find out from googling trying to find a config that would work:

Takashi Iwai - https://patchwork.kernel.org/patch/9600017/
And I'm afraid that dmix won't work with IEC958 subframe type. dmix
can deal with the direct hw access, and it's limited with the normal
linear PCM types. In theory, we can apply the dmix-style plugin onto
iec958 subframes, but the current code doesn't do it.

That said, the default should be rather passing iec958 or hdmi without
the mixing. If the stream mixing is required, you need to use some
sound server instead.
I suppose that is why PulseAudio or Jack are the current solutions...

Instead, I simply hacked up the python script to quit the pygame mixer and re-initialize it and that solves my sound issue in emulators since the sound driver is not being shared.

Ultimately I believe I proved Mr. Takashi Iwai right in that I could not get the KMS audio driver to mix with anything else and if that is what is desired than a 3rd party solution is needed for now.

Bluestang
Posts: 14
Joined: Sat May 30, 2020 8:43 pm

Re: Moving Linux Kernel to 5.4

Thu Jun 11, 2020 2:23 am

***Update on 5.4.45 64bit -

The video freezes are gone now. Thank goodness because that was getting annoying.

I'm fairly certain that I am getting about 5-10 fps more on the KMS video driver with the KMS audio driver. I need to do more testing but the latest kernel is doing pretty darn good.

Speaking of there is a new noaudio=on/off option for the overlay in the config.txt. - https://github.com/raspberrypi/linux/pull/3640

Killer Instinct on a Pi4 4GB is pretty much avging about 55 fps on my setup on mame-plus2003.

Return to “Advanced users”