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

MdePkg: IndustryStandard: Rename ACPI SPCR revision 4 structure #10862

Merged
merged 2 commits into from
Mar 20, 2025

Conversation

sarah-walker-arm
Copy link
Contributor

@sarah-walker-arm sarah-walker-arm commented Mar 14, 2025

Description

The structure for the SPCR revision 4 table was originally named EFI_ACPI_4_0_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE. This prefix suggests it is an ACPI 4.0 structure, which it is not. This could cause confusion with genuine ACPI 4.0 structures and defines (eg EFI_ACPI_4_0_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE, which is unrelated to SPCR revision 4).

Rename the structure to EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_4.

  • Breaking change?
    • Breaking change - Does this PR cause a break in build or boot behavior?
    • Examples: Does it add a new library class or move a module to a different repo.
  • Impacts security?
    • Security - Does this PR have a direct security impact?
    • Examples: Crypto algorithm change or buffer overflow fix.
  • Includes tests?
    • Tests - Does this PR include any explicit test code?
    • Examples: Unit tests or integration tests.

How This Was Tested

edk2 builds for ARM FVP and boots. There are no users of the affected structure in the current edk2 tree.

Integration Instructions

N/A

The structure for the SPCR revision 4 table was originally named
EFI_ACPI_4_0_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE. This prefix suggests it
is an ACPI 4.0 structure, which it is not. This could cause confusion with
genuine ACPI 4.0 structures and defines (eg
EFI_ACPI_4_0_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_SIGNATURE, which is
unrelated to SPCR revision 4).

Rename the structure to EFI_ACPI_SERIAL_PORT_CONSOLE_REDIRECTION_TABLE_4.

Signed-off-by: Sarah Walker <[email protected]>
@mdkinney
Copy link
Member

mdkinney commented Mar 14, 2025

Looks like this content was added 10 months ago and could be used with the current names by many downstream consumers outside TianoCore repos.

This should be marked as a "breaking change" and it would be good to know how widely these names have been used outside edk2. If you know they are not in use yet, then the impact would be minimal.

@github-actions github-actions bot added the impact:breaking-change This change breaks existing APIs impacting build or boot. label Mar 17, 2025
@sarah-walker-arm
Copy link
Contributor Author

This is not used upstream in either edk2 or edk2-platforms.

@samimujawar
Copy link
Contributor

@praveensankarn We would like to get the definition in the deader file fixed. Apparently, the upstream code edk2 & edk2-platforms does not utilise this structure name.
Can you let us know if this is being used downstream, and plan to migrate the naming convention recommended in this patch, please?

@praveensankarn
Copy link
Contributor

@samimujawar,
Yes, this patch seems valid. And yes, we are using this structure in our downstream source, but we can consume the new patch once the next stable tag is released.

Thanks,
Praveen

@samimujawar
Copy link
Contributor

@praveensankarn Thank you for confirming.
@mdkinney, @lgao4 If there are no further comments, can we proceed to merge this patch, please? I think downstream repos will need to eventually catchup.

Regards,

Sami Mujawar

@mdkinney mdkinney added the push Auto push patch series in PR if all checks pass label Mar 20, 2025
@mergify mergify bot merged commit 2a3926d into tianocore:master Mar 20, 2025
126 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
impact:breaking-change This change breaks existing APIs impacting build or boot. push Auto push patch series in PR if all checks pass
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants