Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

acpi: add support for SPCR table #216

Merged
merged 1 commit into from
Jul 8, 2024
Merged

acpi: add support for SPCR table #216

merged 1 commit into from
Jul 8, 2024

Conversation

00xc
Copy link
Contributor

@00xc 00xc commented Jun 16, 2024

Add support for the Serial Port Console Redirection (SPCR). The table provides information about the configuration and use of the serial port or non-legacy UART interface.

For more information, see:
https://learn.microsoft.com/en-us/windows-hardware/drivers/serports/serial-port-console-redirection-table

Add support for the Serial Port Console Redirection (SPCR). The table
provides information about the configuration and use of the serial
port or non-legacy UART interface.
@IsaacWoods
Copy link
Member

Apologies for the delay in getting to this PR, and thanks for the contribution!

Out of interest, are you using this table for anything in a project?

@IsaacWoods IsaacWoods merged commit 20486f8 into rust-osdev:main Jul 8, 2024
4 checks passed
@00xc
Copy link
Contributor Author

00xc commented Jul 9, 2024

Out of interest, are you using this table for anything in a project?

I'm writing a hobby kernel that at some point might run on ARM, and having access to this table on that platform is really convenient for serial output.

fslongjin added a commit to DragonOS-Community/acpi-rs that referenced this pull request Sep 3, 2024
* fix: increment `processor_count` if LocalX2Apic is found

Signed-off-by: Yuuki Takano <[email protected]>

* fix: increment `local_nmi_line_count` if X1ApicNmi is found

Signed-off-by: Yuuki Takano <[email protected]>

* Add `Debug` impl for `PhysicalMapping` even when `T` is not `Debug`

* Make `read_field` and friends take a mutable context

This is necessary because these methods will need to invoke methods in
the future.

Co-authored-by: Ron Williams <[email protected]>

* Invoke `_SEG`, `_BBN`, and `_ADR` as methods for PCI region accesses

Co-authored-by: Ron Williams <[email protected]>

* Move the `aml` crate to the 2021 Edition

Easy change while we're here

* Create `OpRegion` type to abstract away field manipulation

Lots of the field reading/writing behaviour isn't quite correct yet, but
this was getting unwieldly and spread about multiple places. Creating this
abstraction will hopefully help in future.

* Simplify `DefIncrement` and `DefDecrement` borrow checking

For some reason, this *definitely* required an extra scope before, but
doesn't seem to now...

* Add test for `DefIncrement` and `DefDecrement`

* Fix test utils

* Add `SdtHeaderIterator` to get all headers.

* fix comments

* aml: add extra debug info on parsing error

* AML: implement boolean field (rust-osdev#211)

* AML: Allow Field in ToInteger (rebased) (rust-osdev#213)

* acpi: add support for SPCR table (rust-osdev#216)

Add support for the Serial Port Console Redirection (SPCR). The table
provides information about the configuration and use of the serial
port or non-legacy UART interface.

* Add a function to find and maps the entire table. (#2)

---------

Signed-off-by: Yuuki Takano <[email protected]>
Co-authored-by: Yuuki Takano <[email protected]>
Co-authored-by: Caleb Robson <[email protected]>
Co-authored-by: Isaac Woods <[email protected]>
Co-authored-by: Ron Williams <[email protected]>
Co-authored-by: rw-vanc <[email protected]>
Co-authored-by: Carlos López <[email protected]>
IsaacWoods pushed a commit to IsaacWoods/acpi that referenced this pull request Jan 30, 2025
Add support for the Serial Port Console Redirection (SPCR). The table
provides information about the configuration and use of the serial
port or non-legacy UART interface.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants