Page MenuHomeFreeBSD

arm64/gicv3: Skip programming vPE GITS_BASERs to avoid a boot crash.
ClosedPublic

Authored by scottph on Jul 24 2024, 1:15 AM.
Tags
None
Referenced Files
F162941903: D46094.id141301.diff
Sat, Jul 18, 1:17 PM
F162917829: D46094.id.diff
Sat, Jul 18, 7:14 AM
Unknown Object (File)
Mon, Jul 13, 8:10 AM
Unknown Object (File)
Mon, Jul 13, 3:06 AM
Unknown Object (File)
Sun, Jul 5, 7:29 AM
Unknown Object (File)
Fri, Jul 3, 7:44 AM
Unknown Object (File)
Thu, Jun 25, 8:01 AM
Unknown Object (File)
Mon, Jun 22, 11:29 PM

Details

Summary

On AmpereOne, the current programming of GITS_BASER2 to individual
allocations per ITS causes a:

panic: APEI Fatal Hardware Error!

This is due to the ITS reporting a BASER2_DATA_ERR error. The GIC-700
expects all GITS_BASER2.Physical_Address fields to match system-wide.

Skip programming any vPE GITS_BASER registers to avoid this crash.

Sponsored by: Ampere Computing LLC

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

sys/arm64/arm64/gicv3_its.c
596

s/ther/the/

We don't use the vPE table so it's safe to ignore.

This revision is now accepted and ready to land.Jul 24 2024, 1:30 PM

Thanks Andrew, could you (or anybody else) help merge that? My commit bit is taking a nap at the moment.

@imp, @andrew, @jhb - I was wondering if one of you could commit this please?