Skip to content

Add a way to test upcoming firmware #852

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

Open
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

lumag
Copy link
Collaborator

@lumag lumag commented Apr 25, 2025

The main meta-qcom layer is settled on using linux-firmware and hexagon-dsp-binaries. However it might make sense to be able to test firmware (and boot firmware) before it gets released. Add a sublayer which provides support for testing the pending firmware changes from QArtifactory.

Copy link

github-actions bot commented Apr 25, 2025

Test Results

 4 files  ±0   8 suites  ±0   3m 37s ⏱️ ±0s
31 tests ±0  31 ✅ ±0  0 💤 ±0  0 ❌ ±0 
80 runs  ±0  80 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 1ee1d52. ± Comparison against base commit 7384748.

♻️ This comment has been updated with latest results.

Copy link

@ricardosalveti
Copy link
Contributor

I understand that having this as an additional meta layer makes sense, but also not a fan of having extra layers mixed up with meta-qcom, at least based on how the files are currently structured, would be nice to find a way for this to be part of meta-qcom and enabled with a custom override.

Also, for boot firmware we are basically using this to test what is already released downstream, would probably just make more sense to propose the updates once they are available directly, as in the end we don't have other providers and don't expect this to be updated outside qualcomm linux releases (at least not for now). Once we have weekly development snapshots this would make more sense to have (to use for continuous testing).

@ricardosalveti
Copy link
Contributor

Updated boot firmware for qcs9100 is also part of #847, and I'm about to propose a similar update for 6490 (won't conflict much in the end).

@vkraleti
Copy link
Contributor

If intention here is to test latest drop of firmware before accepting, can dev-upstream be used to pull latest version?

@lumag
Copy link
Collaborator Author

lumag commented Apr 30, 2025

If intention here is to test latest drop of firmware before accepting, can dev-upstream be used to pull latest version?

I can give it a thought, but do you have any idea on your mind how to implement it?

@vkraleti
Copy link
Contributor

vkraleti commented May 2, 2025

If intention here is to test latest drop of firmware before accepting, can dev-upstream be used to pull latest version?

I can give it a thought, but do you have any idea on your mind how to implement it?

Unfortunately, there is no predictable way to know what the latest firmware will be. Generally, the one with the highest number is the latest. May be firmware recipes can scan all the directory names and pick the one with the highest number as dev-upstream variant.

@lumag
Copy link
Collaborator Author

lumag commented May 2, 2025

If intention here is to test latest drop of firmware before accepting, can dev-upstream be used to pull latest version?

I can give it a thought, but do you have any idea on your mind how to implement it?

Unfortunately, there is no predictable way to know what the latest firmware will be. Generally, the one with the highest number is the latest. May be firmware recipes can scan all the directory names and pick the one with the highest number as dev-upstream variant.

This is AUTOREV, not devupstream. And I'd rather not implement such scanning. Traversing directories on the web server can open a can of worms.

Copy link

github-actions bot commented May 7, 2025

Copy link
Contributor

@sbanerjee-quic sbanerjee-quic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

firmware-qcom-qcs6490: package latest firmware for QCS9100

The changes are for qcs9100, but subject says qcs6490 @lumag

@ricardosalveti
Copy link
Contributor

ricardosalveti commented May 8, 2025

I would prefer not mixing one layer into another here (as we might also have additional layers as we saw with the axiom related changes), should we move everything under meta-qcom into a meta-qcom folder then?

Would be a bit similar to https://github.com/jonmason/meta-arm and https://git.yoctoproject.org/meta-ti/tree/.

Copy link

@lumag lumag force-pushed the fw-boot-test branch 2 times, most recently from 5c425ef to aaf92fe Compare May 20, 2025 18:39
@lumag
Copy link
Collaborator Author

lumag commented May 20, 2025

@ricardosalveti moved meta-qcom to the subdir

@ricardosalveti
Copy link
Contributor

@ricardosalveti moved meta-qcom to the subdir

Sure, this would work for me, might just need to update ci/kas/.github and README to point to the new directory.

@ndechesne @vkraleti @sbanerjee-quic this would allow for us to host additional meta layers that are relevant to meta-qcom (e.g. tip testing, axiom integration, extras, etc) as part of this repo, a common behavior that is found in several other bsp layers.

lumag added 2 commits May 20, 2025 23:53
In order to support extra layers in the same repo, move existing
meta-qcom layer data to a subdir.

Signed-off-by: Dmitry Baryshkov <[email protected]>

Revert "meta-qcom: move existing Qualcomm layer to subdir"

This reverts commit 0119e2a.

Signed-off-by: Dmitry Baryshkov <[email protected]>
It makes sense to be able to test firmware upgrades easily. Add sublayer
to handle these tasks.

Signed-off-by: Dmitry Baryshkov <[email protected]>
lumag added 8 commits May 20, 2025 23:53
Add the recipe pulling in the latest version of the QCS6490 firmware.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Add the recipe pulling in the latest version of the QCS9100 firmware.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Add the recipe pulling in the latest version of the QCS8300 firmware.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Patch linux-firmware packages in order to remove the conflict between
the files provided by the recipe and the tip versions of the firmware
(to be added in the next commits).

Signed-off-by: Dmitry Baryshkov <[email protected]>
…ages away

Patch Hexagon DSP binaries packages in order to remove the conflict
between the files provided by the recipe and the tip versions of the
firmware (to be added in the next commits).

Signed-off-by: Dmitry Baryshkov <[email protected]>
Add recipe to package the latest DSP firmware files for the board in
order to be able to test them on the hardware.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Add recipe to package the latest DSP firmware files for the board in
order to be able to test them on the hardware.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Add recipe to package the latest DSP firmware files for the board in
order to be able to test them on the hardware.

Signed-off-by: Dmitry Baryshkov <[email protected]>
Copy link

@mwasilew
Copy link
Contributor

I think we're missing test jobs using the new firmware. Or is the new firmware already included in the default builds?

@koenkooi
Copy link
Contributor

@ricardosalveti moved meta-qcom to the subdir

Sure, this would work for me, might just need to update ci/kas/.github and README to point to the new directory.

@ndechesne @vkraleti @sbanerjee-quic this would allow for us to host additional meta layers that are relevant to meta-qcom (e.g. tip testing, axiom integration, extras, etc) as part of this repo, a common behavior that is found in several other bsp layers.

This would be a nice solution to being able to host more BSP related layers. I do warn about moving non-BSP layers like meta-qcom-distro into this, it makes coupling the DISTRO to the BSP a bit too easy, usually breaking standalone BSP usage.

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.

6 participants