Skip to content

v2.0.12

Compare
Choose a tag to compare
@github-actions github-actions released this 30 Jun 15:52
· 43 commits to refs/heads/main since this release
50ecba2

What's Changed

  • Required changes to KnobService and XML Schema to enable per-library header definitions and XML merging @mario-posso-escobar (#357)
    Change Details
      # Preface

    Please ensure you have read the contribution docs prior
    to submitting the pull request. In particular,
    pull request guidelines.

    Description

    Add a header reference field to the XML definitions to allow flexible build inclusion patterns.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
    • Functionality - Does the change ultimately impact how firmware functions?
    • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
    • Security - Does the change have a direct security impact on an application,
      flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter validation improvement, ...
    • Breaking change?
    • Breaking change - Will anyone consuming this change experience a break
      in build or boot behavior?
    • Examples: Add a new library class, move a module to a different repo, call
      a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
    • Documentation - Does the change contain explicit documentation additions
      outside direct code modifications (and comments)?
    • Examples: Update readme file, add feature readme file, link to documentation
      on an a separate Web page, ...

    How This Was Tested

    Tested with locally updated sampleschema.xml.
    Tested end-to-end with SCP firmware.

    Integration Instructions

    'headerRef' is an optional attribute that, when used, is consumed by KnobService to reference headers instead of generating the 'Enum' and 'Struct' type definitions in-place. This attribute will not breaking existing XMLs.

      </blockquote>
      <hr>
    </details>
    
  • SetupDataPkg/Tools/setup.py: Expand script to publish binaries for ReadUefiVarsToConfVarList, WriteConfVarListToUefiVars. @vignan-devops (#368)
    Change Details
      ## Description

    The existing Setup.py will create a binary of ConfigEditor.

    Expanding the script to also create binaries of ReadUefiVarsToConfVarList and WriteConfVarListToUefiVars.

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    Generated binaries were tested on a system to Read/Write variables.

    Integration Instructions

    N/A




  • SetupDataPkg/ConfigKnobShimPeiLib: Revert ConfigKnobShimPeiLib change and fix unit test. @apop5 (#371)
    Change Details
      ## Description

    Commit #369 erroneously removed the implementation for GetConfigKnobOverride from ConfigKnobShimPeiLib. Adding back the implementation to PEI and fixing the unit test to correctly work, in the same fashion as Dxe/MM versions.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    Mu Oem sample was failing with an unresolved external GetConfigKnobOverride for X64 PEI.
    After making this change, the unresolved external was resolved.

    Integration Instructions

    N/A




  • Switch to using 202311 branchs of required repos instead of 202302 @apop5 (#370)
    Change Details
      ## Description

    Project is still floating on latest 202302 versions of mu_basecore, mu_plus and mu_tiano_plus.

    Switch to using 202311 for all submodules.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    <Please describe the test(s) that were run to verify the changes.>

    Integration Instructions

    <Describe how these changes should be integrated. Use N/A if nothing is required.>

      </blockquote>
      <hr>
    </details>
    
  • SetupDataPkg/ConfigKnobShimLib: Correct unit test compilation errors. @apop5 (#369)
    Change Details
      ## Description

    Unit tests started failing due to compilation errors. This stemmed from a bug fixed in microsoft/mu_basecore#891. Once this bug was fixed,
    the unit tests starting to be compiled which blocked pipelines.

    Checking previous pipelines, these tests were not compiled due to the above mentioned bug.

    Once the fix was cherry picked back into basecore 202302, it started blocking the pipelines.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    Ran CI locally and resolved issues.

    Integration Instructions

    N/A




📖 Documentation Updates

  • Add Multiple Config Environment Build Support @os-d (#374)
    Change Details
      ## Description

    This updates the UpdateConfigHdr.py plugin to be able to generate multiple config headers from multiple XML files to support the use case where one PlatformBuild.py file is producing multiple config environments, such as non-secure world and StMM. This is backwards compatible with platforms that only build a single config environment.

    For each item, place an "x" in between [ and ] if true. Example: [x].
    (you can also check items in the GitHub UI)

    • Impacts functionality?
      • Functionality - Does the change ultimately impact how firmware functions?
      • Examples: Add a new library, publish a new PPI, update an algorithm, ...
    • Impacts security?
      • Security - Does the change have a direct security impact on an application,
        flow, or firmware?
      • Examples: Crypto algorithm change, buffer overflow fix, parameter
        validation improvement, ...
    • Breaking change?
      • Breaking change - Will anyone consuming this change experience a break
        in build or boot behavior?
      • Examples: Add a new library class, move a module to a different repo, call
        a function in a new library class in a pre-existing module, ...
    • Includes tests?
      • Tests - Does the change include any explicit test code?
      • Examples: Unit tests, integration tests, robot tests, ...
    • Includes documentation?
      • Documentation - Does the change contain explicit documentation additions
        outside direct code modifications (and comments)?
      • Examples: Update readme file, add feature readme file, link to documentation
        on an a separate Web page, ...

    How This Was Tested

    Tested on a platform with multiple config environments and with a single.

    Integration Instructions

    See docs in this PR.

      </blockquote>
      <hr>
    </details>
    

Full Changelog: v2.0.11...v2.0.12