mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 13:14:02 +02:00
remoteproc: qcom_wcnss: Switch to generic PAS TZ APIs
Switch qcom_wcnss 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: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com> Tested-by: Mukesh Ojha <mukesh.ojha@oss.qualcomm.com> # Lemans Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Sumit Garg <sumit.garg@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260702115835.167602-7-sumit.garg@kernel.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
This commit is contained in:
parent
f3b1357673
commit
ea3b5245f5
|
|
@ -19,7 +19,7 @@
|
|||
#include <linux/platform_device.h>
|
||||
#include <linux/pm_domain.h>
|
||||
#include <linux/pm_runtime.h>
|
||||
#include <linux/firmware/qcom/qcom_scm.h>
|
||||
#include <linux/firmware/qcom/qcom_pas.h>
|
||||
#include <linux/regulator/consumer.h>
|
||||
#include <linux/remoteproc.h>
|
||||
#include <linux/soc/qcom/mdt_loader.h>
|
||||
|
|
@ -257,7 +257,7 @@ static int wcnss_start(struct rproc *rproc)
|
|||
wcnss_indicate_nv_download(wcnss);
|
||||
wcnss_configure_iris(wcnss);
|
||||
|
||||
ret = qcom_scm_pas_auth_and_reset(WCNSS_PAS_ID);
|
||||
ret = qcom_pas_auth_and_reset(WCNSS_PAS_ID);
|
||||
if (ret) {
|
||||
dev_err(wcnss->dev,
|
||||
"failed to authenticate image and release reset\n");
|
||||
|
|
@ -269,7 +269,7 @@ static int wcnss_start(struct rproc *rproc)
|
|||
if (wcnss->ready_irq > 0 && ret == 0) {
|
||||
/* We have a ready_irq, but it didn't fire in time. */
|
||||
dev_err(wcnss->dev, "start timed out\n");
|
||||
qcom_scm_pas_shutdown(WCNSS_PAS_ID);
|
||||
qcom_pas_shutdown(WCNSS_PAS_ID);
|
||||
ret = -ETIMEDOUT;
|
||||
goto disable_iris;
|
||||
}
|
||||
|
|
@ -311,7 +311,7 @@ static int wcnss_stop(struct rproc *rproc)
|
|||
0);
|
||||
}
|
||||
|
||||
ret = qcom_scm_pas_shutdown(WCNSS_PAS_ID);
|
||||
ret = qcom_pas_shutdown(WCNSS_PAS_ID);
|
||||
if (ret)
|
||||
dev_err(wcnss->dev, "failed to shutdown: %d\n", ret);
|
||||
|
||||
|
|
@ -557,10 +557,10 @@ static int wcnss_probe(struct platform_device *pdev)
|
|||
|
||||
data = of_device_get_match_data(&pdev->dev);
|
||||
|
||||
if (!qcom_scm_is_available())
|
||||
if (!qcom_pas_is_available())
|
||||
return -EPROBE_DEFER;
|
||||
|
||||
if (!qcom_scm_pas_supported(WCNSS_PAS_ID)) {
|
||||
if (!qcom_pas_supported(WCNSS_PAS_ID)) {
|
||||
dev_err(&pdev->dev, "PAS is not available for WCNSS\n");
|
||||
return -ENXIO;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user