AVA Platform quirks and errata
Date: 2023-12-21
Last Updated: 2024-03-01
GRAPHICS
PHYSICAL OUTPUT
The AVA contains an Aspeed VGA output, and some display managers (gdm3 confirmed) choose it by default, even if it’s not connect and even though HDMI is available. I could not find any config setting or work around to make gdm3 ignore the VGA output except for disabling the ast
kernel module:
root@ava:~# cat > /etc/modprobe.d/ast.conf <<'EOF'
blacklist ast
EOF
root@ava:~# reboot
gdm3 + wayland
If gdm3 refuses to launch with wayland, it might be because of udev rules forcing xorg (e.g. see if file /lib/udev/rules.d/61-gdm.rules
) exists. The override conf is written to /var/run/gdm3/custom.conf
which you can edit and then restart gdm3.
Graphics during booting process with GPUs
There is no UEFI GOP driver support on AVA, according to ADLINK. †
†. ADLINK Industrial Pi Wiki (Retrieved 2024-02-26) (Archive.org snapshot)
However, you can enable graphics during boot by flashing the GPU’s ROM. Instructions on how to flash arm64 EFI OptionRom on an AMDGPU
PCI
See also:
Discussion on the ampere computing forum about AMD GPU bugs and patches.
MMIO access
The PCI standard implementation in the AVA platform has a few problems. PCI devices that require unaligned MMIO reads, like a GPU, require a patched kernel to overcome those problems.
Some patches come from Ampere themselves, and a single patch reverts an amdgpu
change that makes it not work on AVA.
Note: Build the patched kernel with CONFIG_ALTRA_ERRATUM_82288=y
You can find a 6.5.11 kernel with rebased patches here: GitHub - epilys/linux at 6.5.11-ampere-pci-fixes and 6.6.2 here GitHub - epilys/linux at 6.6.2-ampere-pci-fixes
The original (not rebased) patches are also attached as files in this page. The amdgpu
patch has been merged into linux but might be missing from earlier versions and need to be applied.
ECAM access
Ampere Altra supports only 32-bit ECAM reads. Linux includes a quirk fix.
PCI/ACPI: Add Ampere Altra SOC MCFG quirk · torvalds/linux@877c1a5
Tips for mainline kernel
When you want to use the mainline kernel with defconfig, also enable the following config options.
DRM_AMDGPU
FW_LOADER_COMPRESS, FW_LOADER_COMPRESS_ZSTD
CMDLINE flags
pcie_aspm=off amdgpu.aspm=0 amdgpu.runpm=0
†
†.AMD GPUs on the Altra devkit and other Altras - patches available now