Page MenuHomeFreeBSD

arm64/gicv3: Initialize all ITS collections at attach time
AbandonedPublic

Authored by scottph on Oct 13 2020, 7:14 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Nov 6, 5:58 AM
Unknown Object (File)
Tue, Oct 15, 6:15 AM
Unknown Object (File)
Sep 27 2024, 6:41 PM
Unknown Object (File)
Jun 30 2024, 11:22 AM
Unknown Object (File)
Jun 29 2024, 8:41 PM
Unknown Object (File)
Jun 28 2024, 6:49 PM
Unknown Object (File)
Jun 1 2024, 7:08 PM
Unknown Object (File)
Apr 28 2024, 6:09 AM
Subscribers

Details

Summary

When device drivers attach, they configure interrupts. We want to
target all interrupts to the boot cpu early on, and then shuffle
them at a later point. However, we use domain proximity
information to limit which cpus an ITS will target. To handle the
case where the boot cpu isn't in the ITS's proximity doman, we
locate all redistributors and configure all ITS collections at
attach time, so that we're ready to configure any interrupts.

Sponsored by: Ampere Computing

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

Another approach could be to just all interrupts to target the boot cpu, maybe before ap startup and maybe apply proximity restrictions after ap startup?

D28340's approach of letting all CPUs get targeted by an ITS removes the need for changing this initialization.