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

AML: implement boolean field #211

Merged
merged 2 commits into from
Mar 13, 2024
Merged

Conversation

rw-vanc
Copy link
Contributor

@rw-vanc rw-vanc commented Mar 8, 2024

if (field) was seen in real-world AML. This change implements support for it.

@IsaacWoods
Copy link
Member

Cool, thanks!

@IsaacWoods IsaacWoods merged commit 35f9fba into rust-osdev:main Mar 13, 2024
4 checks passed
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]>
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