diff mbox series

[v6,2/8] remoteproc: qcom: Add flag in adsp private data structure

Message ID 1662643422-14909-3-git-send-email-quic_srivasam@quicinc.com
State Accepted
Commit 272dca8d14c46d03c633756d150b1c48c1dcb594
Headers show
Series Update ADSP pil loader for SC7280 platform | expand

Commit Message

Srinivasa Rao Mandadapu Sept. 8, 2022, 1:23 p.m. UTC
Add flag in qcom_adsp private data structure and initialize
it to distinguish ADSP and WPSS modules for using iommu selectively.

Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
---
Changes since V5:
	-- Rename adsp_sandbox_needed to has_iommu.
Changes since V3:
	-- Rename is_adsp_sb_needed to adsp_sandbox_needed.
Changes since V2:
	-- Add is_adsp_sb_needed flag instead of is_wpss.

 drivers/remoteproc/qcom_q6v5_adsp.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Sibi Sankar Sept. 14, 2022, 9:06 a.m. UTC | #1
On 9/8/22 6:53 PM, Srinivasa Rao Mandadapu wrote:
> Add flag in qcom_adsp private data structure and initialize
> it to distinguish ADSP and WPSS modules for using iommu selectively.

There are other flags available to distinguish between ADSP and WPSS
like 'is_wpss'. So you probably want to tweak your commit message to
just say if it has a iommu in front of it or not and skip referencing
WPSS.

Reviewed-by: Sibi Sankar <quic_sibis@quicinc.com>

> 
> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
> Reviewed-by: Stephen Boyd <swboyd@chromium.org>
> ---
> Changes since V5:
> 	-- Rename adsp_sandbox_needed to has_iommu.
> Changes since V3:
> 	-- Rename is_adsp_sb_needed to adsp_sandbox_needed.
> Changes since V2:
> 	-- Add is_adsp_sb_needed flag instead of is_wpss.
> 
>   drivers/remoteproc/qcom_q6v5_adsp.c | 5 +++++
>   1 file changed, 5 insertions(+)
> 
> diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
> index 2f3b9f5..fa2ccac 100644
> --- a/drivers/remoteproc/qcom_q6v5_adsp.c
> +++ b/drivers/remoteproc/qcom_q6v5_adsp.c
> @@ -62,6 +62,7 @@ struct adsp_pil_data {
>   	const char *sysmon_name;
>   	int ssctl_id;
>   	bool is_wpss;
> +	bool has_iommu;
>   	bool auto_boot;
>   
>   	const char **clk_ids;
> @@ -99,6 +100,7 @@ struct qcom_adsp {
>   	phys_addr_t mem_reloc;
>   	void *mem_region;
>   	size_t mem_size;
> +	bool has_iommu;
>   
>   	struct device *proxy_pds[QCOM_Q6V5_RPROC_PROXY_PD_MAX];
>   	size_t proxy_pd_count;
> @@ -596,12 +598,15 @@ static int adsp_probe(struct platform_device *pdev)
>   	}
>   
>   	rproc->auto_boot = desc->auto_boot;
> +	rproc->has_iommu = desc->has_iommu;
>   	rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
>   
>   	adsp = (struct qcom_adsp *)rproc->priv;
>   	adsp->dev = &pdev->dev;
>   	adsp->rproc = rproc;
>   	adsp->info_name = desc->sysmon_name;
> +	adsp->has_iommu = desc->has_iommu;
> +
>   	platform_set_drvdata(pdev, adsp);
>   
>   	if (desc->is_wpss)
>
diff mbox series

Patch

diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 2f3b9f5..fa2ccac 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -62,6 +62,7 @@  struct adsp_pil_data {
 	const char *sysmon_name;
 	int ssctl_id;
 	bool is_wpss;
+	bool has_iommu;
 	bool auto_boot;
 
 	const char **clk_ids;
@@ -99,6 +100,7 @@  struct qcom_adsp {
 	phys_addr_t mem_reloc;
 	void *mem_region;
 	size_t mem_size;
+	bool has_iommu;
 
 	struct device *proxy_pds[QCOM_Q6V5_RPROC_PROXY_PD_MAX];
 	size_t proxy_pd_count;
@@ -596,12 +598,15 @@  static int adsp_probe(struct platform_device *pdev)
 	}
 
 	rproc->auto_boot = desc->auto_boot;
+	rproc->has_iommu = desc->has_iommu;
 	rproc_coredump_set_elf_info(rproc, ELFCLASS32, EM_NONE);
 
 	adsp = (struct qcom_adsp *)rproc->priv;
 	adsp->dev = &pdev->dev;
 	adsp->rproc = rproc;
 	adsp->info_name = desc->sysmon_name;
+	adsp->has_iommu = desc->has_iommu;
+
 	platform_set_drvdata(pdev, adsp);
 
 	if (desc->is_wpss)