Skip to end of banner
Go to start of banner

AVA Platform quirks and errata

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Date: 2023-12-21
Last Updated: 2024-03-01
ADLINK's AVA Developer Platform
 PRODUCT INFORMATION

PRODUCT INFORMATION
Arm SystemReady SR-compliant SOAFEE’s reference development platform based on Ampere Altra SoC

System configuration:

  • COM-HPC Ampere Altra server type module with Ampere Altra 32-core SoC

  • COM-HPC Server Base carrier board

  • 32 GB 3200MHz DDR4 ECC Reg

  • 128 GB NVMe M.2 storage

  •  1x GbE + 4x 10GbE LAN ports (optional)

  •  64x PCIe Gen4 lanes (3 x16, 2 x4 and 2 M.2 slots)

  •  Liquid cooling assembly (optional)

  • 750 Watt power supply

  • Tower enclosure

Specifications:

Ampere Altra SoC (Arm Neoverse N1 based architecture), 32 Arm v8.2 64-bit cores up to 1.7GHz, Arm SystemReady SR, 32GB DDR4 memory, 128GB NVMe storage, 64x PCIe Gen4 lanes (3 x16 available), 4x 10GbE (optional) and 1x GbE LAN, 4x USB 3.0/2.0 and 2x USB 3.0 [rear I/O], 2x USB 3.0 [front panel], open source EDKII, Yocto Linux OS support

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.

†. https://docs.ipi.wiki/com-hpc/ava/How_to_install_Nvidia_Graphic_Card_Driver.html (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: https://github.com/epilys/linux/tree/6.5.11-ampere-pci-fixes and 6.6.2 here https://github.com/epilys/linux/tree/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.

https://github.com/torvalds/linux/commit/877c1a5f79c6984bbe3f2924234c08e2f4f1acd5

discussion on LKML

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

†.https://community.amperecomputing.com/t/amd-gpus-on-the-altra-devkit-and-other-altras-patches-available-now/336

Other AVA platform information pages

  • No labels