summaryrefslogtreecommitdiffstats
path: root/drivers/remoteproc
diff options
context:
space:
mode:
authorSibi Sankar <sibis@codeaurora.org>2019-11-18 22:44:07 +0100
committerBjorn Andersson <bjorn.andersson@linaro.org>2019-12-17 00:43:37 +0100
commitb7ff96cc68eb39726b095601c149a99e4943e117 (patch)
treef604e42e188eed8f327a023f793b478cb141f9a1 /drivers/remoteproc
parentremoteproc: qcom: pas: Add SM8150 ADSP, CDSP, Modem and SLPI support (diff)
downloadlinux-b7ff96cc68eb39726b095601c149a99e4943e117.tar.xz
linux-b7ff96cc68eb39726b095601c149a99e4943e117.zip
remoteproc: qcom: pas: Add auto_boot flag
Add auto_boot flag and set it to false for modem. This allows for the delayed boot up of modem after the dependencies are met in userspace. Signed-off-by: Sibi Sankar <sibis@codeaurora.org> Link: https://lore.kernel.org/r/0101016e80790f6a-98fb016c-9639-4124-b6ee-fe7639af734f-000000@us-west-2.amazonses.com Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Diffstat (limited to 'drivers/remoteproc')
-rw-r--r--drivers/remoteproc/qcom_q6v5_pas.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/remoteproc/qcom_q6v5_pas.c b/drivers/remoteproc/qcom_q6v5_pas.c
index 686b861aa70e..b890e6e305f3 100644
--- a/drivers/remoteproc/qcom_q6v5_pas.c
+++ b/drivers/remoteproc/qcom_q6v5_pas.c
@@ -33,6 +33,7 @@ struct adsp_data {
const char *firmware_name;
int pas_id;
bool has_aggre2_clk;
+ bool auto_boot;
char **active_pd_names;
char **proxy_pd_names;
@@ -388,6 +389,8 @@ static int adsp_probe(struct platform_device *pdev)
return -ENOMEM;
}
+ rproc->auto_boot = desc->auto_boot;
+
adsp = (struct qcom_adsp *)rproc->priv;
adsp->dev = &pdev->dev;
adsp->rproc = rproc;
@@ -471,6 +474,7 @@ static const struct adsp_data adsp_resource_init = {
.firmware_name = "adsp.mdt",
.pas_id = 1,
.has_aggre2_clk = false,
+ .auto_boot = true,
.ssr_name = "lpass",
.sysmon_name = "adsp",
.ssctl_id = 0x14,
@@ -481,6 +485,7 @@ static const struct adsp_data sm8150_adsp_resource = {
.firmware_name = "adsp.mdt",
.pas_id = 1,
.has_aggre2_clk = false,
+ .auto_boot = true,
.active_pd_names = (char*[]){
"load_state",
NULL
@@ -499,6 +504,7 @@ static const struct adsp_data cdsp_resource_init = {
.firmware_name = "cdsp.mdt",
.pas_id = 18,
.has_aggre2_clk = false,
+ .auto_boot = true,
.ssr_name = "cdsp",
.sysmon_name = "cdsp",
.ssctl_id = 0x17,
@@ -509,6 +515,7 @@ static const struct adsp_data sm8150_cdsp_resource = {
.firmware_name = "cdsp.mdt",
.pas_id = 18,
.has_aggre2_clk = false,
+ .auto_boot = true,
.active_pd_names = (char*[]){
"load_state",
NULL
@@ -527,6 +534,7 @@ static const struct adsp_data mpss_resource_init = {
.firmware_name = "modem.mdt",
.pas_id = 4,
.has_aggre2_clk = false,
+ .auto_boot = false,
.active_pd_names = (char*[]){
"load_state",
NULL
@@ -546,6 +554,7 @@ static const struct adsp_data slpi_resource_init = {
.firmware_name = "slpi.mdt",
.pas_id = 12,
.has_aggre2_clk = true,
+ .auto_boot = true,
.ssr_name = "dsps",
.sysmon_name = "slpi",
.ssctl_id = 0x16,
@@ -556,6 +565,7 @@ static const struct adsp_data sm8150_slpi_resource = {
.firmware_name = "slpi.mdt",
.pas_id = 12,
.has_aggre2_clk = false,
+ .auto_boot = true,
.active_pd_names = (char*[]){
"load_state",
NULL
@@ -574,6 +584,7 @@ static const struct adsp_data wcss_resource_init = {
.crash_reason_smem = 421,
.firmware_name = "wcnss.mdt",
.pas_id = 6,
+ .auto_boot = true,
.ssr_name = "mpss",
.sysmon_name = "wcnss",
.ssctl_id = 0x12,