CI: build-tools: build all host tools
[openwrt/staging/jow.git] / target / linux / ipq807x / patches-6.1 / 0116-remoteproc-qcom-Update-regmap-offsets-for-halt-regis.patch
1 From 8c73af6e8d78c66cfef0f551b00d375ec0b67ff3 Mon Sep 17 00:00:00 2001
2 From: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
3 Date: Sat, 30 Jan 2021 10:50:09 +0530
4 Subject: [PATCH] remoteproc: qcom: Update regmap offsets for halt register
5
6 Fixed issue in reading halt-regs parameter from device-tree.
7
8 Signed-off-by: Gokul Sriram Palanisamy <gokulsri@codeaurora.org>
9 Signed-off-by: Sricharan R <sricharan@codeaurora.org>
10 ---
11 drivers/remoteproc/qcom_q6v5_wcss.c | 22 ++++++++++++++--------
12 1 file changed, 14 insertions(+), 8 deletions(-)
13
14 --- a/drivers/remoteproc/qcom_q6v5_wcss.c
15 +++ b/drivers/remoteproc/qcom_q6v5_wcss.c
16 @@ -86,7 +86,7 @@
17 #define TCSR_WCSS_CLK_MASK 0x1F
18 #define TCSR_WCSS_CLK_ENABLE 0x14
19
20 -#define MAX_HALT_REG 3
21 +#define MAX_HALT_REG 4
22
23 #define WCNSS_PAS_ID 6
24
25 @@ -154,6 +154,7 @@ struct wcss_data {
26 u32 version;
27 bool aon_reset_required;
28 bool wcss_q6_reset_required;
29 + bool bcr_reset_required;
30 const char *ssr_name;
31 const char *sysmon_name;
32 int ssctl_id;
33 @@ -875,10 +876,13 @@ static int q6v5_wcss_init_reset(struct q
34 }
35 }
36
37 - wcss->wcss_q6_bcr_reset = devm_reset_control_get_exclusive(dev, "wcss_q6_bcr_reset");
38 - if (IS_ERR(wcss->wcss_q6_bcr_reset)) {
39 - dev_err(wcss->dev, "unable to acquire wcss_q6_bcr_reset\n");
40 - return PTR_ERR(wcss->wcss_q6_bcr_reset);
41 + if (desc->bcr_reset_required) {
42 + wcss->wcss_q6_bcr_reset = devm_reset_control_get_exclusive(dev,
43 + "wcss_q6_bcr_reset");
44 + if (IS_ERR(wcss->wcss_q6_bcr_reset)) {
45 + dev_err(wcss->dev, "unable to acquire wcss_q6_bcr_reset\n");
46 + return PTR_ERR(wcss->wcss_q6_bcr_reset);
47 + }
48 }
49
50 return 0;
51 @@ -929,9 +933,9 @@ static int q6v5_wcss_init_mmio(struct q6
52 return -EINVAL;
53 }
54
55 - wcss->halt_q6 = halt_reg[0];
56 - wcss->halt_wcss = halt_reg[1];
57 - wcss->halt_nc = halt_reg[2];
58 + wcss->halt_q6 = halt_reg[1];
59 + wcss->halt_wcss = halt_reg[2];
60 + wcss->halt_nc = halt_reg[3];
61
62 return 0;
63 }
64 @@ -1179,6 +1183,7 @@ static const struct wcss_data wcss_ipq80
65 .crash_reason_smem = WCSS_CRASH_REASON,
66 .aon_reset_required = true,
67 .wcss_q6_reset_required = true,
68 + .bcr_reset_required = false,
69 .ssr_name = "q6wcss",
70 .ops = &q6v5_wcss_ipq8074_ops,
71 .requires_force_stop = true,
72 @@ -1193,6 +1198,7 @@ static const struct wcss_data wcss_qcs40
73 .version = WCSS_QCS404,
74 .aon_reset_required = false,
75 .wcss_q6_reset_required = false,
76 + .bcr_reset_required = true,
77 .ssr_name = "mpss",
78 .sysmon_name = "wcnss",
79 .ssctl_id = 0x12,