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

[Feature]: Enable Advanced Logger in PEI and MM on Q35 and SBSA #522

Closed
TaylorBeebe opened this issue Apr 26, 2023 · 3 comments · Fixed by #801
Closed

[Feature]: Enable Advanced Logger in PEI and MM on Q35 and SBSA #522

TaylorBeebe opened this issue Apr 26, 2023 · 3 comments · Fixed by #801
Assignees
Labels
state:backlog In the backlog type:feature-request A new feature proposal urgency:low Little to no impact

Comments

@TaylorBeebe
Copy link
Contributor

TaylorBeebe commented Apr 26, 2023

Feature Overview

Advanced Logger is enabled in DXE on Q35 and SBSA, and it should be enabled in all phases.

Solution Overview

Add PEIM, PEI_CORE, MM_CORE, and MM_STANDALONE instances of AdvancedLoggerLib and the Advanced Logger DebugLib.

Alternatives Considered

No response

Urgency

Low

Are you going to implement the feature request?

I will implement the feature

Do you need maintainer feedback?

No maintainer feedback needed

Anything else?

No response

@TaylorBeebe TaylorBeebe added state:needs-triage Needs to triaged to determine next steps type:feature-request A new feature proposal labels Apr 26, 2023
@github-actions github-actions bot added urgency:low Little to no impact labels Apr 26, 2023
TaylorBeebe added a commit that referenced this issue Apr 29, 2023
## Description

Adds Project Mu's Advanced Logger functionality to Q35.

An issue has been created to enable Advanced Logger in MM and PEI:
#522

- [x] 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

Booting on Q35

## Integration Instructions

N/A
@TaylorBeebe TaylorBeebe changed the title [Feature]: Enable Advanced Logger in PEI and MM on Q35 [Feature]: Enable Advanced Logger in PEI and MM on Q35 and SBSA May 1, 2023
TaylorBeebe added a commit to TaylorBeebe/mu_tiano_platforms that referenced this issue May 1, 2023
Description

Adds Project Mu's Advanced Logger functionality to SBSA.

An issue has been created to enable Advanced Logger in MM and PEI:
microsoft#522

- [ ] 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

Running on SBSA

Integration Instructions

N/A
TaylorBeebe added a commit to TaylorBeebe/mu_tiano_platforms that referenced this issue May 1, 2023
Description

Adds Project Mu's Advanced Logger functionality to SBSA.

An issue has been created to enable Advanced Logger in MM and PEI:
microsoft#522

- [ ] 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

Running on SBSA

Integration Instructions

N/A
TaylorBeebe added a commit to TaylorBeebe/mu_tiano_platforms that referenced this issue May 3, 2023
Description

Adds Project Mu's Advanced Logger functionality to SBSA.

An issue has been created to enable Advanced Logger in MM and PEI:
microsoft#522

- [ ] 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

Running on SBSA

Integration Instructions

N/A
TaylorBeebe added a commit to TaylorBeebe/mu_tiano_platforms that referenced this issue May 5, 2023
Description

Adds Project Mu's Advanced Logger functionality to SBSA.

An issue has been created to enable Advanced Logger in MM and PEI:
microsoft#522

- [ ] 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

Running on SBSA

Integration Instructions

N/A
TaylorBeebe added a commit that referenced this issue May 5, 2023
Description

Adds Project Mu's Advanced Logger functionality to SBSA.

An issue has been created to enable Advanced Logger in MM and PEI:
#522

- [ ] 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

Running on SBSA

Integration Instructions

N/A
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had activity in 45 days. It will be closed if no further activity occurs within 7 days. Thank you for your contributions.

@github-actions github-actions bot added the state:stale Has not been updated in a long time label Jul 16, 2023
@TaylorBeebe TaylorBeebe added state:backlog In the backlog and removed state:needs-triage Needs to triaged to determine next steps state:stale Has not been updated in a long time labels Jul 17, 2023
@TaylorBeebe
Copy link
Contributor Author

The following PR fulfills this request: #801

@kuqin12
Copy link
Contributor

kuqin12 commented Dec 20, 2023

The following PR fulfills this request: #801

The #801 will not be able to cover MM_CORE and MM_STANDALONE due to the fact that current advanced logger implementation is relying on the memory buffer to be initialized from TFA, which will require further customization.

The modification of TFA for broader usage needs separate planning. We will discuss this internally before any public movement here.

kuqin12 added a commit that referenced this issue Dec 20, 2023
## Description

This change introduces non DXE advanced logger, which should enable us
to verify the advanced logger related changes better. Resolves #522.

- [x] 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

This change was tested on both QEMU Q35 and SBSA packages and verified
bootable to UEFI shell.

## Integration Instructions

N/A

---------

Signed-off-by: kuqin12 <42554914+kuqin12@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
state:backlog In the backlog type:feature-request A new feature proposal urgency:low Little to no impact
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants