RPi4 Upstream Kernel

The output of your aplay -L is significantly different than mine. But I think that was with the rpi4 kernel.

Nope. The output I posted above was using the linux upstream kernel. I switched to linux-rc and the output was the same.

After thought:

They have been switching back and forth with snd_bcm2835.enable_compat_alsa=. You might try snd_bcm2835.enable_compat_alsa=1 (instead of 0) and see what that does.

Well, still no change in my configuration.

So let me backup and try to get upstream working like you have it.
What do I need to do to recreate your setup?

xfce image + arm-unstable updates + linux-rc kernel? Then rename to kernel8.img and reboot?

And would you mind posting your config.txt and cmdline.txt?

xfce image + arm-unstable updates + linux kernel. reboot. (linux-rc is obsolete right now)

cmdline.txt:

root=PARTUUID=b75fdbb1-02 rw rootwait console=ttyS1,115200 console=tty0 audit=0 snd_bcm2835.enable_headphones=1

config.txt:

[ray@pi4 ~]$ cat /boot/config.txt
# See /boot/overlays/README for all available options

arm_freq=2000

device_tree=dtbs/broadcom/bcm2711-rpi-4-b.dtb
gpu_mem=512
initramfs initramfs-linux.img followkernel
kernel=Image
arm_64bit=1
disable_overscan=1

#enable sound
dtparam=audio=on
hdmi_drive=2
enable_uart=1
1 Like

After thought. I have issues with pulseaudo and upstream so I uninstalled pulseaudo and installed pipewire.

I too have pipewire installed… but I do have this:
$ pacman -Ss plasma-pa

extra/plasma-pa 5.23.5-1 (plasma) [installed]
    Plasma applet for audio volume management using PulseAudio

Forgot. VERY important!! install xf86-video-fbdev.

Bah, my download failed. Starting over. This will take a while, my internet connection is lousy.

Recreating your setup worked great, very straightforward.

$ aplay -L

null
    Discard all samples (playback) or generate zero samples (capture)
lavrate
    Rate Converter Plugin Using Libav/FFmpeg Library
samplerate
    Rate Converter Plugin Using Samplerate Library
speexrate
    Rate Converter Plugin Using Speex Resampler
jack
    JACK Audio Connection Kit
oss
    Open Sound System
pulse
    PulseAudio Sound Server
speex
    Plugin using Speex DSP (resample, agc, denoise, echo, dereverb)
upmix
    Plugin for channel upmix (4,6,8)
vdownmix
    Plugin for channel downmix (stereo) with a simple spacialization
default
    Default ALSA Output (currently PulseAudio Sound Server)
sysdefault:CARD=ALSA
    bcm2835 ALSA, bcm2835 ALSA
    Default Audio Device
usbstream:CARD=ALSA
    bcm2835 ALSA
    USB Stream Output
sysdefault:CARD=Headphones
    bcm2835 Headphones, bcm2835 Headphones
    Default Audio Device
usbstream:CARD=Headphones
    bcm2835 Headphones
    USB Stream Output
sysdefault:CARD=vc4hdmi0
    vc4-hdmi-0, MAI PCM i2s-hifi-0
    Default Audio Device
front:CARD=vc4hdmi0,DEV=0
    vc4-hdmi-0, MAI PCM i2s-hifi-0
    Front output / input
iec958:CARD=vc4hdmi0,DEV=0
    vc4-hdmi-0, MAI PCM i2s-hifi-0
    IEC958 (S/PDIF) Digital Audio Output
usbstream:CARD=vc4hdmi0
    vc4-hdmi-0
    USB Stream Output
sysdefault:CARD=vc4hdmi1
    vc4-hdmi-1, MAI PCM i2s-hifi-0
    Default Audio Device
front:CARD=vc4hdmi1,DEV=0
    vc4-hdmi-1, MAI PCM i2s-hifi-0
    Front output / input
iec958:CARD=vc4hdmi1,DEV=0
    vc4-hdmi-1, MAI PCM i2s-hifi-0
    IEC958 (S/PDIF) Digital Audio Output
usbstream:CARD=vc4hdmi1
    vc4-hdmi-1
    USB Stream Output

Now to figure out why this is not working for me, starting with adding uefi firmware and installing grub.

This pretty much confirms, this is all related to uefi failing to keep up with the changes. It can not boot a rpi kernel and it can not boot with new device trees. I should give up on grub and my multi-booting ideas. And probably commit to the upstream kernel while I am at it.

@Darksky Changes were made in 5.16 for v3d. Have you tried building the v3d driver with the upstream kernel with those changes?

Seems wayland really prefers v3d. It will work with llvmpipe but it is too slow for video playback (dropped frames + high cpu). But it does work pretty well for just regular 2D desktop work.

Nope. Never tried with the v3d kernel. I will try today if I have time. Today is grocery day so do not have much time.

Is cma 256 enough for your 4k monitor?

I do not understand the issues with the upstream v3d. It seems odd that Phoronix would mention the drm/v3d work, but fail to mention that it does not work. It makes me think there is some way to get v3d working with the upstream kernel.

I am home today, so just a 1920x1080 monitor.

I tried to mess with it on 5.15 the other day and it did not work. I just looked at the linux 5.16 config and V3D is not exposed so will have to find what enabled exposes it before I can enable it. Is cma 384 enough for your 4k monitor.

I think this is what needs to be applied to get v3d available in the kernel config.

That is what I am looking for in the linux config but it is not there right now. Something has to be enabled for it to show up.

drivers/gpu/drm/v3d/Kconfig

- depends on ARCH_BCM || ARCH_BCMSTB || COMPILE_TEST
+ depends on ARCH_BCM || ARCH_BCMSTB || ARCH_BCM2835 || COMPILE_TEST

I think this will get it to show up in make config.