Skip to content

Restore docking station agnostic utc cases #872

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

Draft
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

philipanda
Copy link
Contributor

@philipanda philipanda commented Jun 9, 2025

The changes are:

  • USB Type-C Display output
    • was UTCX08.XXX USB Type-C Display output () (ME: ) ()
    • is UTC007.XXX USB Type-C Display output () (ME: )
    • Changed from automated to manual as the implementation was wrong. It was detecting a docking station, not a display. A docking station should not even be used for this test.
  • USB Type-C PD current limiting
    • was UTC{1,2,3}33.{201,202,301} USB Type-C PD current limiting () (ME: ) ()
    • is UTC033.001 USB Type-C PD current limiting (Firmware) (ME: )
  • USB Type-A charging capability
    • was UTCX02.001 USB Type-A charging capability (Firmware) (ME: ) ()
    • is `UTC002.001 USB Type-A charging capability (Firmware) (ME: )
  • Thunderbolt 4 USB Type-C power output
    • was UTCX04.001 Thunderbolt 4 USB Type-C power output (Firmware) (ME: ) ()
    • is UTC002.001 USB Type-A charging capability (Firmware) (ME: )

@philipanda philipanda requested review from mkopec and macpijan June 9, 2025 06:33
@philipanda philipanda marked this pull request as ready for review June 9, 2025 06:34
Signed-off-by: Filip Gołaś <filip.golas@3mdeb.com>
Signed-off-by: Filip Gołaś <filip.golas@3mdeb.com>
Signed-off-by: Filip Gołaś <filip.golas@3mdeb.com>
@philipanda philipanda force-pushed the restore-docking-station-agnostic-utc-cases branch from f940cca to 838b07a Compare June 9, 2025 06:53
@macpijan
Copy link
Contributor

macpijan commented Jun 9, 2025

@philipanda
Copy link
Contributor Author

Does it need some changes in https://github.com/Dasharo/open-source-firmware-validation/blob/develop/test_cases.json ?

Right, some changes should happen there.
I am not sure what's the correct way of documenting the changes there though. The test cases that were restored in this PR shouldn't be split into docking station variants altogether. I suppose we should just add another set of mappings, but will our current tools be able to handle a sequence of updates? Like A->B->C? Tests other than the mentioned in the description weren't affected.

@philipanda philipanda marked this pull request as draft June 9, 2025 09:00
@krystian-hebel
Copy link
Contributor

Tools will handle A->B->C (assuming Previous IDs has correct format, as described in documentation). They wouldn't handle A->(B,C), and the way I understand what happened for UTC is something like A->(B,C,D,E)->F. None of the UTC cases was deprecated in the database, and if my understanding is correct, now it should be enough to do A->F, B->F, C->F etc.

I'm more worried about 1-to-N cases for other UTC that those mentioned here. There is no future-proof way that I can think of, even if we were to change the logic to support such relations, each case would point to 3 other cases (or however many docking stations we currently test), but it won't account for the stations added later. In my opinion, in such case adding a new set of tests for a new dock to scope is an action, and shouldn't be done by the tool after inaction of person using this tool. After all, new stations aren't added often, and if they are, then next releases can be copied from a fresh one, and not from a very old one.

Just to confirm, the changes mentioned here would be A->(B,C...)->Z, and not A->(B,C...)->A, right?

@philipanda
Copy link
Contributor Author

Tools will handle A->B->C (assuming Previous IDs has correct format, as described in documentation). They wouldn't handle A->(B,C), and the way I understand what happened for UTC is something like A->(B,C,D,E)->F. None of the UTC cases was deprecated in the database, and if my understanding is correct, now it should be enough to do A->F, B->F, C->F etc.

I'm more worried about 1-to-N cases for other UTC that those mentioned here. There is no future-proof way that I can think of, even if we were to change the logic to support such relations, each case would point to 3 other cases (or however many docking stations we currently test), but it won't account for the stations added later. In my opinion, in such case adding a new set of tests for a new dock to scope is an action, and shouldn't be done by the tool after inaction of person using this tool. After all, new stations aren't added often, and if they are, then next releases can be copied from a fresh one, and not from a very old one.

Just to confirm, the changes mentioned here would be A->(B,C...)->Z, and not A->(B,C...)->A, right?

The changes would be like

A->(B,C,D,E,F,G)->(H,I)

  • the docking station model is not relevant, but the ME state is, so there still have to be two variants for that

@macpijan macpijan closed this Jul 3, 2025
@macpijan macpijan deleted the restore-docking-station-agnostic-utc-cases branch July 3, 2025 13:46
@philipanda philipanda restored the restore-docking-station-agnostic-utc-cases branch July 3, 2025 14:04
@philipanda philipanda reopened this Jul 3, 2025
@macpijan
Copy link
Contributor

Blocker: we are not sure how we would set the changed_to flags.

We consider regenerating the tests DB, we could then simply add these tests to the DB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants