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

Allow arbitrary SVD values to be set through ConfApp #77

Merged
merged 5 commits into from
Dec 15, 2022

Conversation

os-d
Copy link
Contributor

@os-d os-d commented Dec 10, 2022

Description

Currently, mu_feature_config is in a transition to an XML based backend. The current YAML based ConfApp expects SVDs with the IDs "Device.ConfigData.*". However, the XML has no such restriction. In the case of the XML, we want to allow arbitrary SVD provided variables to be set, as this option is only provided in the manufacturing mode state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces are set to remove the remaining YAML pieces.

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

  • Impacts functionality?
  • Impacts security?
  • Breaking change?
  • Includes tests?
  • Includes documentation?

How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in manufacturing mode, applying an SVD with arbitrary variables, rebooting to the EFI shell, using dmpstore to dump the variables to a file, applying that file in Config Editor and seeing that the current variable state matches what was provided in the SVD.

Integration Instructions

N/A

@os-d os-d requested review from kuqin12 and apop5 December 10, 2022 00:38
@github-actions github-actions bot added the impact:testing Affects testing label Dec 10, 2022
@codecov-commenter
Copy link

codecov-commenter commented Dec 10, 2022

Codecov Report

Merging #77 (208d07e) into main (9d05a7d) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #77   +/-   ##
=======================================
  Coverage   50.10%   50.10%           
=======================================
  Files          16       16           
  Lines        6219     6219           
=======================================
  Hits         3116     3116           
  Misses       3103     3103           
Flag Coverage Δ
Linux 50.10% <ø> (ø)
Windows_NT 50.10% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

SetupDataPkg/ConfApp/SetupConf.c Show resolved Hide resolved
SetupDataPkg/ConfApp/SetupConf.c Show resolved Hide resolved
SetupDataPkg/ConfApp/SetupConf.c Show resolved Hide resolved
SetupDataPkg/ConfApp/SetupConf.c Show resolved Hide resolved
@os-d os-d enabled auto-merge (squash) December 14, 2022 21:40
@os-d os-d merged commit 3b6e9ba into microsoft:main Dec 15, 2022
@os-d os-d deleted the osde/arbitrary_svd branch December 15, 2022 01:35
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
github-actions bot pushed a commit to kuqin12/mu_feature_config that referenced this pull request Dec 15, 2022
## Description

Currently, mu_feature_config is in a transition to an XML based backend.
The current YAML based ConfApp expects SVDs with the IDs
`"Device.ConfigData.*"`. However, the XML has no such restriction. In
the case of the XML, we want to allow arbitrary SVD provided variables
to be set, as this option is only provided in the manufacturing mode
state (used often for bringup and debug).

This change leaves the YAML processing in place until more XML pieces
are set to remove the remaining YAML pieces.

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

- [x] Impacts functionality?
- [ ] Impacts security?
- [ ] Breaking change?
- [x] Includes tests?
- [ ] Includes documentation?

## How This Was Tested

Tested with unit tests and in QemuQ35 by booting to the ConfApp in
manufacturing mode, applying an SVD with arbitrary variables, rebooting
to the EFI shell, using dmpstore to dump the variables to a file,
applying that file in Config Editor and seeing that the current variable
state matches what was provided in the SVD.

## Integration Instructions

N/A
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
impact:testing Affects testing
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants