Page MenuHomeFreeBSD

uart: Add UART_ACPI_SPCR_CLASS
ClosedPublic

Authored by andrew on Aug 12 2025, 4:08 PM.
Tags
None
Referenced Files
Unknown Object (File)
May 18 2026, 6:22 AM
Unknown Object (File)
May 18 2026, 6:18 AM
Unknown Object (File)
May 16 2026, 1:39 AM
Unknown Object (File)
May 16 2026, 1:38 AM
Unknown Object (File)
May 16 2026, 1:38 AM
Unknown Object (File)
May 10 2026, 5:29 AM
Unknown Object (File)
May 10 2026, 5:21 AM
Unknown Object (File)
May 3 2026, 2:03 PM
Subscribers

Details

Summary

We don't care about most of acpi_uart_compat_data in the spcr code.
Split out the mapping from the SPCR interface type to uart class into
a new struct. This allows new SPCR interface types to be added that
don't have an entry in the DSDT, e.g. some PCI uarts may not.

Sponsored by: Arm Ltd

Diff Detail

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

Event Timeline

andrew created this revision.
jrtc27 added inline comments.
sys/dev/uart/uart_cpu_acpi.h
40

May make sense to flip these to recognise that cd_port_subtype is the key in this struct?

If it builds, it ships!

sys/dev/uart/uart_cpu_acpi.h
40

cd_port_subtype may be the key within the struct, but the iteration below iterates only over non-NULL cd_class.

This revision is now accepted and ready to land.Aug 12 2025, 6:55 PM
sys/dev/uart/uart_cpu_acpi.h
40

I put it that way around so the padding is at the end rather than the middle of the struct.

This revision was automatically updated to reflect the committed changes.