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

Improvements for the mppark branch #70

Draft
wants to merge 12 commits into
base: mppark
Choose a base branch
from

Conversation

gus33000
Copy link
Member

Note: these changes require the merge of a PR for BootShim, and the UEFI will not work otherwise.

BootShim PR: imbushuo/boot-shim#4

Details:

  • The UEFI now reads parameters passed by bootshim via an updated preloader struct, these parameters allow the UEFI to load different acpi tables, enabling SD card boot capability for windows, and/or changing processor declarations for EL2/Hyper-V
  • In addition, a new parameter has been added which tells the UEFI to either start normally, with PSCI, or start in EL1 with no PSCI, or start in EL2 with no PSCI
  • Due to frequent changes to ACPI tables, the build process now builds them, during testing it didn't add much more time to the build process, at worst a minute was added, not impacting Azure Dev Ops limits
  • Hapanero digitizer resolution declaration has been fixed, so touch coordinates are now properly calibrated for the phone display
  • On the ACPI front, the CPU core declarations have been changed to be declared inside containers, a requirement windows has added recently. This notably allows the Windows CPU scheduler to better understand how to schedule tasks given the processor topology (Class0/Class1).
  • TPM2 tables have been added for reference, but they are not bundled as part of the UEFI build process.
  • FADT now reports Mobile for the device form, something that windows seems to use for its scheduler and modern standby features
  • The side interaction device, removed between the official BSP version 1072 and 1075, has been added back to ACPI tables, for future use cases

Please do not merge this commit without merging the BootShim one, as they depend on each other.

@gus33000 gus33000 added the enhancement New feature or request label Aug 14, 2020
@gus33000 gus33000 requested a review from imbushuo August 14, 2020 11:03
@gus33000 gus33000 self-assigned this Aug 14, 2020
@gus33000
Copy link
Member Author

Ideally if we merge this was master, we need to backport the USB C changes to the new SSDT variants

@gus33000
Copy link
Member Author

Backported the ACPI table USB C changes from upstream to align with recent changes and resolve merge conflcts

@imbushuo
Copy link
Collaborator

It will take a while for me to review the thing, also we are bringing a EL2 PSCI fix at some branch.

@gus33000
Copy link
Member Author

gus33000 commented Sep 8, 2020

I guess this commit will be marked as work in progress now given we now have the PSCI patch, and this needs to take into consideration these changes.

I think for the boot options,

  • default psci would be what we have currently in master, with the psci patch as it's needed afterall
  • mppark only
  • mppark with el2 escalation

we would essentially keep the existing 3 options, I don't think there's a need for having an option that doesn't apply the psci patch, but if there is, it could potentially be added as well

@gus33000 gus33000 marked this pull request as draft September 8, 2020 10:22
@gus33000
Copy link
Member Author

gus33000 commented Sep 10, 2020

Splitting this PR into individual PRs, right now see #77, #78, #79, #80, #81, #82

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants