mirror of
https://github.com/linux-msm/laptops-kernel.git
synced 2026-08-13 14:19:53 -07:00
net: ipa: Switch to generic PAS TZ APIs
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. Reviewed-by: Alex Elder <elder@riscstar.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com> Acked-by: Alex Elder <elder@riscstar.com> Link: https://lore.kernel.org/r/20260702115835.167602-12-sumit.garg@kernel.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
committed by
Bjorn Andersson
parent
7bd52a0d45
commit
85b88ceeee
@@ -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
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user