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

bsp: linux-firmware: add SRCREV_FORMAT #1204

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

quaresmajose
Copy link
Member

@quaresmajose quaresmajose commented Jun 29, 2023

The SRCREV_FORMAT variable must be set when multiple SCMs are used.

bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression was ${@bb.fetch2.get_srcrev(d)} which triggered exception FetchError: Fetcher failure: The SRCREV_FORMAT variable must be set when multiple SCMs are used. The SCMs are:
git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git;protocol=https;branch=main
git://github.com/NXP/imx-firmware.git;protocol=https;branch=lf-5.15.71_2.2.0;destsuffix=imx-firmware;name=imx-firmware;
The variable dependency chain for the failure is: SRCPV -> PV -> BP -> FILESPATH

@quaresmajose quaresmajose requested a review from a team June 29, 2023 16:56
The SRCREV_FORMAT variable must be set when multiple SCMs are used.

| bb.data_smart.ExpansionError: Failure expanding variable SRCPV, expression was ${@bb.fetch2.get_srcrev(d)} which triggered exception FetchError: Fetcher failure: The SRCREV_FORMAT variable must be set when multiple SCMs are used.
| The SCMs are:
| git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git;protocol=https;branch=main
| git://github.com/NXP/imx-firmware.git;protocol=https;branch=lf-5.15.71_2.2.0;destsuffix=imx-firmware;name=imx-firmware;
| The variable dependency chain for the failure is: SRCPV -> PV -> BP -> FILESPATH

Signed-off-by: Jose Quaresma <[email protected]>
@@ -18,6 +18,7 @@ SRC_URI:append:imx-nxp-bsp = "\
git://github.com/NXP/imx-firmware.git;protocol=https;branch=${IMX_FIRMWARE_BRANCH};destsuffix=imx-firmware;name=imx-firmware; \
"
SRCREV_imx-firmware ?= "982bb10dfabfb9e7b9dc106c59a4fbb2c45bfb44"
SRCREV_FORMAT = "imx-firmware"
Copy link
Member

Choose a reason for hiding this comment

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

Should we use just the main SRCURI or combine both here? In the end this imx-firmware is just an extra.

Copy link
Member Author

Choose a reason for hiding this comment

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

This was a quick fix on main-next, maybe the better solution would be to submit upstream all those we have in this bbapppend.

Copy link
Member

Choose a reason for hiding this comment

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

Upstream should help, but this would be needed anyway. My thinking is that the leading SRCREV to be used here would be from the main git repo instead of imx-firmware.

Copy link
Member Author

Choose a reason for hiding this comment

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

It should be the two but because main repo uses just one they don't set the name so we don't know it.
We can add a name to the default to use the two but look a bit ugly:

SRC_URI:remove =  "git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git;protocol=https;branch=main"
SRC_URI:append = " git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git;protocol=https;branch=main;name=main"
SRCREV_FORMAT = "main_imx-firmware"

Copy link
Member

Choose a reason for hiding this comment

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

Right, I think the right thing to do here would instead remove all these extra appends (as we have logic here for multiple socs) into separated recipes, as then we would probably be able to drop this append entirely.

Copy link
Member

Choose a reason for hiding this comment

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

Since I don't think it makes sense for the stm32mp15 build to have a linux-firmware package that has the hash from imx-firmware, maybe to start we could duplicate the original SRC_URI to add a name to it, and have SRCREV_FORMAT = "main" only, what do you think?

Copy link
Member Author

Choose a reason for hiding this comment

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

Currently this only affect main-next and what I have on SRCREV_FORMAT solves the problem for now but as I am here it will be better to separated it to new recipes so I will do that.

Copy link
Member

Choose a reason for hiding this comment

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

Thanks, it would be a nice change for us anyway :-)

@quaresmajose quaresmajose marked this pull request as draft June 29, 2023 21:25
@quaresmajose quaresmajose self-assigned this Aug 3, 2023
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.

2 participants