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: Correctly invoke _SEG,_BBN, and _ADR methods for PCI region accesses, plus assorted bits #208

Merged
merged 7 commits into from Mar 5, 2024

Conversation

IsaacWoods
Copy link
Member

Replaces #155

This changes various methods around the interpreter to take a mutable reference to the AmlContext, which creates some borrow checking problems, but also allows us to invoke control methods from field accesses. This is required for fields located in PCI config space, as they need to invoke the _SEG, _BBN, and _ADR methods to correctly access the PCI bridge.

Also contains changes that were sensible to make while addressing the fallout of these changes.

IsaacWoods and others added 5 commits March 5, 2024 20:58
This is necessary because these methods will need to invoke methods in
the future.

Co-authored-by: Ron Williams <ron.williams.redox@gmail.com>
Co-authored-by: Ron Williams <ron.williams.redox@gmail.com>
Easy change while we're here
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.
For some reason, this *definitely* required an extra scope before, but
doesn't seem to now...
@IsaacWoods
Copy link
Member Author

cc @rw-vanc

@IsaacWoods IsaacWoods merged commit 7db4539 into rust-osdev:main Mar 5, 2024
4 checks passed
@IsaacWoods IsaacWoods deleted the mutable_ctx branch March 5, 2024 23:50
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.

None yet

1 participant