Re: [PATCH v9 11/14] net: ipa: Switch to generic PAS TZ APIs
Alex Elder <[email protected]> Wed, 15 Jul 2026 07:16:08 -0500
| Newsgroups | org.infradead.lists.ath12k,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel,org.kernel.vger.linux-media,org.kernel.vger.linux-remoteproc,org.kernel.vger.linux-wireless,org.kernel.vger.netdev |
|---|---|
| Message-ID | <[email protected]> |
On 7/11/26 11:06 AM, Bjorn Andersson wrote: > On Thu, Jul 02, 2026 at 05:28:27PM +0530, Sumit Garg wrote: >> From: Sumit Garg <[email protected]> >> >> Switch ipa client driver over to generic PAS TZ APIs. Generic PAS TZ >> service allows to support multiple TZ implementation backends like QTEE >> based SCM PAS service, OP-TEE based PAS service and any further future TZ >> backend service. >> > > Please find an immutable branch with the dependencies for this patch at: > https://git.kernel.org/pub/scm/linux/kernel/git/qcom/linux.git [email protected] > > Alternatively, if you think there will be no conflicting patches in the > time leading up to next merge window provide an Ack and I can pick this > through the qcom tree. I don't see any reason there would be any conflicts (certainly no difficult conflicts) with this commit, so I think you can safely take it with the others through the Qualcomm tree. So if my ack is what you're looking for: Acked-by: Alex Elder <[email protected]> Thank you Sumit and Bjorn. > > Thanks, > Bjorn > >> Reviewed-by: Alex Elder <[email protected]> >> Reviewed-by: Konrad Dybcio <[email protected]> >> Signed-off-by: Sumit Garg <[email protected]> >> --- >> drivers/net/ipa/Kconfig | 2 +- >> drivers/net/ipa/ipa_main.c | 13 ++++++++----- >> 2 files changed, 9 insertions(+), 6 deletions(-) >> >> diff --git a/drivers/net/ipa/Kconfig b/drivers/net/ipa/Kconfig >> index 01d219d3760c..a9aff1b7977d 100644 >> --- a/drivers/net/ipa/Kconfig >> +++ b/drivers/net/ipa/Kconfig >> @@ -6,7 +6,7 @@ config QCOM_IPA >> depends on QCOM_RPROC_COMMON || (QCOM_RPROC_COMMON=n && COMPILE_TEST) >> depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n >> select QCOM_MDT_LOADER >> - select QCOM_SCM >> + select QCOM_PAS >> select QCOM_QMI_HELPERS >> help >> Choose Y or M here to include support for the Qualcomm >> diff --git a/drivers/net/ipa/ipa_main.c b/drivers/net/ipa/ipa_main.c >> index 788dd99af2a4..3cd9e44680e9 100644 >> --- a/drivers/net/ipa/ipa_main.c >> +++ b/drivers/net/ipa/ipa_main.c >> @@ -14,7 +14,7 @@ >> #include <linux/pm_runtime.h> >> #include <linux/types.h> >> >> -#include <linux/firmware/qcom/qcom_scm.h> >> +#include <linux/firmware/qcom/qcom_pas.h> >> #include <linux/soc/qcom/mdt_loader.h> >> >> #include "ipa.h" >> @@ -624,10 +624,13 @@ static int ipa_firmware_load(struct device *dev) >> } >> >> ret = qcom_mdt_load(dev, fw, path, IPA_PAS_ID, virt, phys, size, NULL); >> - if (ret) >> + if (ret) { >> dev_err(dev, "error %d loading \"%s\"\n", ret, path); >> - else if ((ret = qcom_scm_pas_auth_and_reset(IPA_PAS_ID))) >> - dev_err(dev, "error %d authenticating \"%s\"\n", ret, path); >> + } else { >> + ret = qcom_pas_auth_and_reset(IPA_PAS_ID); >> + if (ret) >> + dev_err(dev, "error %d authenticating \"%s\"\n", ret, path); >> + } >> >> memunmap(virt); >> out_release_firmware: >> @@ -758,7 +761,7 @@ static enum ipa_firmware_loader ipa_firmware_loader(struct device *dev) >> return IPA_LOADER_INVALID; >> out_self: >> /* We need Trust Zone to load firmware; make sure it's available */ >> - if (qcom_scm_is_available()) >> + if (qcom_pas_is_available()) >> return IPA_LOADER_SELF; >> >> return IPA_LOADER_DEFER; >> -- >> 2.53.0 >>