Page MenuHomeFreeBSD

arm64: Use the common activate function in nexus
ClosedPublic

Authored by andrew on Oct 25 2024, 2:20 PM.
Tags
None
Referenced Files
Unknown Object (File)
Nov 7 2024, 2:26 AM
Unknown Object (File)
Nov 6 2024, 2:33 PM
Unknown Object (File)
Nov 6 2024, 2:24 PM
Unknown Object (File)
Nov 6 2024, 12:34 PM
Unknown Object (File)
Nov 2 2024, 11:04 AM
Unknown Object (File)
Nov 1 2024, 12:32 PM
Unknown Object (File)
Nov 1 2024, 12:32 PM
Unknown Object (File)
Nov 1 2024, 12:31 PM
Subscribers

Details

Summary

For non-memory and non-ioport spaces use the common
bus_generic_rman_activate_resource function in the arm64 nexus. We
can't currently use it for memory types as it doesn't support
non-posted memory.

Sponsored by: Arm Ltd

Diff Detail

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

Event Timeline

Is the same change needed for nexus drivers on other INTRNG platforms? I guess it isn't required, per se, but it is a nice cleanup to reduce duplicated code?

This revision is now accepted and ready to land.Oct 25 2024, 4:21 PM

I think the other drivers can use bus_generic_rman_activate_resource directly, however I can't easily test them.

Should I be testing this on Graviton (with my _AEI patches minus the bogus resource activation one)?

+1 for deduplication

sys/arm64/arm64/nexus.c
362

Isn't removing intr_activate_irq() a mistake? I can't find who calls it after the patch...

Should I be testing this on Graviton (with my _AEI patches minus the bogus resource activation one)?

This one is optional, it's a cleanup after merging common code.

sys/arm64/arm64/nexus.c
362

See D47282