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

Infrastructure: Duplicated ACPI Tables, impacting updates for ref platforms #414

Open
gus33000 opened this issue Nov 20, 2024 · 6 comments
Labels
enhancement New feature or request

Comments

@gus33000
Copy link
Collaborator

Select QTI platforms have their ACPI files fully provided by the ACPI binary repository, due to this repo build system it is required to duplicate these files currently into the device ACPI folder with no possibility to override such requirement to instead use the file naturally available under SurfaceDuoACPI\QcomACPI\8350\builtin\DSDT_8350_MTP.aml for example.

It would be great if this could get improved for easy updates, currently we have to manually copy over each file one by one and even rename them to address this.

Further more; select devices may need to override more tables in the future, like for the debug table due to different GENI UART QUP usage for debugging (See OEM Corporation OEMZE device for a prime example of such thing)

@gus33000 gus33000 added the enhancement New feature or request label Nov 20, 2024
@sunflower2333
Copy link
Member

If there is a way to override it ...

@sunflower2333
Copy link
Member

How about make a symbol link to the reference devices' acpi in reference devices' ACPI/DSDT.aml

@gus33000
Copy link
Collaborator Author

I was thinking at some point given the links keep increasing, that maybe we should adopt the normal edkII/mu model to have multiple platforms here. I would be up for one package for one device. This would also resolve a few issues where a device may not have a memory map compatible enough to afford reusing the existing defacto base address in the fdf. That was a bit of the spirit in SurfaceDuo1Pkg and 2Pkg, it also contains very minimal lines in the end and you would be able to dial in the dxes you want with ease, and the acpi tables

@sunflower2333
Copy link
Member

well that make sense. But it will take time to refactor the whole repo and will reduced reusability, slow down ci, increase porting difficulty etc.
However as you say it can solve some issues currently meeting.
So i hope to find compromise solution that ensure reusability while meeting standards.

@gus33000
Copy link
Collaborator Author

Build times shouldn't be an issue anymore ever since we modified the ci to build every target in parallel and not consecutively. Of course this will increase aggregated custom workflows, like the one building only ref platforms or everything 855 but those iirc are also parallelized? Or should be made to be parallel

@sunflower2333
Copy link
Member

OK i will try refactor next year. Do you have any ideas about folder structure?

Is Platforms/<PlatformName>/<VendorName>/<DeviceCodeName> okay?

For example:
Platforms/Lahaina/QTI/MTP888Pkg

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

No branches or pull requests

2 participants