-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
SCMI-Server: Add support for multiple source files in build #6190
Conversation
@jforissier can you please provide some feedback on this when you have time? Thanks in advance. |
@nicola-mazzucato-arm yes I will, but I would also like @etienne-lms to check this when he's back from vacations 😉 Thanks! |
@jforissier Thanks. Can you please help me figuring out where the failures happened? |
The CI jobs pulls the SCMI code from the master branch of https://github.com/ARM-software/SCP-firmware.git (see https://github.com/OP-TEE/optee_os/actions/runs/5643523525/job/15392702318?pr=6190#step:5:193), which indeed doesn't have the file
They are unrelated to this PR. They are about insufficient disk space, and I have submitted a fix (OP-TEE/build#671). Sorry about that :-/ |
Right! That seems a bit to create a circular dependency :)
Thanks! That's a relief :) |
You can do it by adding a commit that changes the CI file (
Call this commit "[TESTING] Update CI to test with SCP firmware PR 812" for instance. |
@nicola-mazzucato-arm I'm sorry the line should be:
...that is, with parentheses |
Thanks @jforissier , I was just adding the |
22ce024
to
e57570a
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
for commits
"core: scmi-server: Add support for conditional options for SCMI-Perf" and
"optee-fvp: Enable CFG_SCPFW_SCMI_PERF_PROTOCOL_OPS" with comment addressed or not.
core/lib/scmi-server/sub.mk
Outdated
srcs-$(CFG_SCPFW_MOD_SCMI_PERF) += $(scpfw-path)/$3/$2/src/scmi_perf_protocol_ops.c | ||
endif | ||
|
||
ifneq (,$(filter y, $(CFG_SCPFW_SCMI_PERF_FAST_CHANNELS))) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you foresee added CFG_ dependencies? Unless what, ifneq ($(CFG_SCPFW_SCMI_PERF_xxx),y)
is simpler.
Ditto at line 159.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not really.. I will change this and push an updated PR. Thanks!
e57570a
to
4fa5dc0
Compare
FYI @jforissier @etienne-lms I have updated the PR. Thanks |
@jforissier can you kindly kick-off all the tests? Thanks in advance :) |
Done. Can we expect the SCP-firmware to be merged before merging this? I do not want to merge something that breaks CI for everyone. |
Thanks! I was hoping the other way round :). The moment you merge this PR I will merge PR812 in SCP. That should align the two repos and CI should be happy in either sides. |
Then the SCP build has to be disabled first in CI. Add a commit (first commit in the series) that explains that the build is going to be broken by subsequent commits and will require 812 to be merged in SCP-firmware and therefore the build is disabled temporarily. Then when 812 is merged you can simply revert that commit. |
4fa5dc0
to
91dd41a
Compare
Thanks @jforissier for the suggestion. PR has been resubmitted with the scmi-server temporarily disabled. |
One typo: s/rever/revert
(No need for a blank line between the two)
|
91dd41a
to
dc26486
Compare
Thank you @jforissier For this new force-push:
|
@jforissier any clue why the multi-platform failed? Thanks |
.github/workflows/ci.yml
Outdated
@@ -81,7 +81,7 @@ jobs: | |||
|
|||
function _make() { make -j$(nproc) -s O=out $*; } | |||
function download_plug_and_trust() { mkdir -p $HOME/se050 && git clone --single-branch -b v0.4.2 https://github.com/foundriesio/plug-and-trust $HOME/se050/plug-and-trust || (rm -rf $HOME/se050 ; echo Nervermind); } | |||
function download_scp_firmware() { git clone --single-branch https://github.com/ARM-software/SCP-firmware.git $HOME/scp-firmware || echo Nervermind; } | |||
function download_scp_firmware() { #Temporarily disabled } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You cannot use a comment here, it comments out the closing brace. Add it on the previous line.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You cannot use a comment here, it comments out the closing brace. Add it on the previous line.
Got it, thanks!
New set submitted.
dc26486
to
0235833
Compare
PR812 in SCP-firmware [1] has added some source files into mod_scmi_perf directory, but it currently fails when building for the optee-os case. This is due to the fact that the current build system in optee, for building the scmi-server fetched from SCP-firmware codebase, works well under the assumption that only one source file is required. To unlock the circular dependency between build systems and source codes, temporarily remove the build for the scmi-server. This will allow the following two patches to be safely merged into the optee_os repo: core: scmi-server: Add support for conditional options for SCMI-Perf optee-fvp: Enable CFG_SCPFW_SCMI_PERF_PROTOCOL_OPS Subsequently, PR812 in SCP-firmware can be merged, and immediately a revert patch for this present one will follow to reintroduce the libscmi-server build. Link: ARM-software/SCP-firmware#812 [1] Acked-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
SCMI-Server is built upon the SCP-firmware source tree and a recent change [1] being proposed is moving functionalities into side source files. This patch adds support to fetch those additional files based on two options: CFG_SCPFW_SCMI_PERF_FAST_CHANNELS (existing) CFG_SCPFW_SCMI_PERF_PROTOCOL_OPS (new) [1] ARM-software/SCP-firmware#812 Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
Enable the SCMI-Perf protocol operations for the optee-fvp target. Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com> Acked-by: Etienne Carriere <etienne.carriere@foss.st.com>
0235833
to
cf1af05
Compare
@jforissier anything else required on my end for this to be merged? Thanks |
No, we're good, thanks! |
A previous patch temporarily removed the libscmi-server build. Now that the related PR in SCP-firmware has been merged, reintroduce the build step. Refs: ARM-software/SCP-firmware#812 OP-TEE#6190 Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
A previous patch temporarily removed the libscmi-server build. Now that the related PR in SCP-firmware has been merged, reintroduce the build step. Link: ARM-software/SCP-firmware#812 Link: OP-TEE#6190 Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
A previous patch temporarily removed the libscmi-server build. Now that the related PR in SCP-firmware has been merged, reintroduce the build step. Link: ARM-software/SCP-firmware#812 Link: OP-TEE#6190 Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
A previous patch temporarily removed the libscmi-server build. Now that the related PR in SCP-firmware has been merged, reintroduce the build step. Link: ARM-software/SCP-firmware#812 Link: #6190 Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
A previous patch temporarily removed the libscmi-server build. Now that the related PR in SCP-firmware has been merged, reintroduce the build step. Link: ARM-software/SCP-firmware#812 Link: OP-TEE#6190 Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
A previous patch temporarily removed the libscmi-server build. Now that the related PR in SCP-firmware has been merged, reintroduce the build step. Link: ARM-software/SCP-firmware#812 Link: OP-TEE#6190 Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by: Etienne Carriere <etienne.carriere@foss.st.com> Signed-off-by: Nicola Mazzucato <nicola.mazzucato@arm.com>
This PR adds support to include c files, other than the "mod_" matching name from the SCP-firmware source tree to build the SCMI Server.
This is required to properly integrate the following change in SCP-firmware:
ARM-software/SCP-firmware#812