12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- From 8c73af6e8d78c66cfef0f551b00d375ec0b67ff3 Mon Sep 17 00:00:00 2001
- From: Gokul Sriram Palanisamy <[email protected]>
- Date: Sat, 30 Jan 2021 10:50:09 +0530
- Subject: [PATCH] remoteproc: qcom: Update regmap offsets for halt register
- Fixed issue in reading halt-regs parameter from device-tree.
- Signed-off-by: Gokul Sriram Palanisamy <[email protected]>
- Signed-off-by: Sricharan R <[email protected]>
- ---
- drivers/remoteproc/qcom_q6v5_wcss.c | 22 ++++++++++++++--------
- 1 file changed, 14 insertions(+), 8 deletions(-)
- --- a/drivers/remoteproc/qcom_q6v5_wcss.c
- +++ b/drivers/remoteproc/qcom_q6v5_wcss.c
- @@ -86,7 +86,7 @@
- #define TCSR_WCSS_CLK_MASK 0x1F
- #define TCSR_WCSS_CLK_ENABLE 0x14
-
- -#define MAX_HALT_REG 3
- +#define MAX_HALT_REG 4
-
- #define WCNSS_PAS_ID 6
-
- @@ -154,6 +154,7 @@ struct wcss_data {
- u32 version;
- bool aon_reset_required;
- bool wcss_q6_reset_required;
- + bool bcr_reset_required;
- const char *ssr_name;
- const char *sysmon_name;
- int ssctl_id;
- @@ -875,10 +876,13 @@ static int q6v5_wcss_init_reset(struct q
- }
- }
-
- - wcss->wcss_q6_bcr_reset = devm_reset_control_get_exclusive(dev, "wcss_q6_bcr_reset");
- - if (IS_ERR(wcss->wcss_q6_bcr_reset)) {
- - dev_err(wcss->dev, "unable to acquire wcss_q6_bcr_reset\n");
- - return PTR_ERR(wcss->wcss_q6_bcr_reset);
- + if (desc->bcr_reset_required) {
- + wcss->wcss_q6_bcr_reset = devm_reset_control_get_exclusive(dev,
- + "wcss_q6_bcr_reset");
- + if (IS_ERR(wcss->wcss_q6_bcr_reset)) {
- + dev_err(wcss->dev, "unable to acquire wcss_q6_bcr_reset\n");
- + return PTR_ERR(wcss->wcss_q6_bcr_reset);
- + }
- }
-
- return 0;
- @@ -928,9 +932,9 @@ static int q6v5_wcss_init_mmio(struct q6
- return -EINVAL;
- }
-
- - wcss->halt_q6 = halt_reg[0];
- - wcss->halt_wcss = halt_reg[1];
- - wcss->halt_nc = halt_reg[2];
- + wcss->halt_q6 = halt_reg[1];
- + wcss->halt_wcss = halt_reg[2];
- + wcss->halt_nc = halt_reg[3];
-
- return 0;
- }
- @@ -1176,6 +1180,7 @@ static const struct wcss_data wcss_ipq80
- .crash_reason_smem = WCSS_CRASH_REASON,
- .aon_reset_required = true,
- .wcss_q6_reset_required = true,
- + .bcr_reset_required = false,
- .ssr_name = "q6wcss",
- .ops = &q6v5_wcss_ipq8074_ops,
- .requires_force_stop = true,
- @@ -1190,6 +1195,7 @@ static const struct wcss_data wcss_qcs40
- .version = WCSS_QCS404,
- .aon_reset_required = false,
- .wcss_q6_reset_required = false,
- + .bcr_reset_required = true,
- .ssr_name = "mpss",
- .sysmon_name = "wcnss",
- .ssctl_id = 0x12,
|