[PATCH v6 0/5] Refactor to support multiple download mode

Mukesh Ojha
2023-03-29T07:47:20Z

Intention of this series to support multiple download mode and
only modify the required bits during setting tcsr register.

Other download modes are minidump, full dump, both fulldump + minidump, nodump.

Latest minidump kernel driver patches has been sent here
https://lore.kernel.org/lkml/1679491817-2498-1-git-send-email-quic_mojha@quicinc.com/

Also, this series should be applied on
https://lore.kernel.org/lkml/1678979666-551-1-git-send-email-quic_mojha@quicinc.com/

Changes in v6:
- Applied suggested API change(at v4) by [dmitry.baryshkov]

Changes in v5: https://lore.kernel.org/lkml/1680017869-22421-1-git-send-email-quic_mojha@quicinc.com/
- Tried to fix the issue reported by kernel test robot
https://lore.kernel.org/lkml/202303280535.acb66sQT-lkp@intel.com/

- Applied some of the improvement suggested by [Bjorn.andersson]

. Dropped 'both' instead support full,mini or mini,full for setting download
mode to collect both minidump and full dump.

. logging improvement.

Changes in v4: https://lore.kernel.org/lkml/1679935281-18445-1-git-send-email-quic_mojha@quicinc.com/
- val should be shifted within the function [srinivas.kandagatla]
i.e new = (old & ~mask) | (val << ffs(mask) - 1);
- Added Acked-by [linus.walleij] on pinctrl change.

Changes in v3 : https://lore.kernel.org/lkml/1679070482-8391-1-git-send-email-quic_mojha@quicinc.com/
- Removed [1] from the series and sent as a separate patch[2], although this series
should be applied on top [2].
[1] https://lore.kernel.org/lkml/1677664555-30191-2-git-send-email-quic_mojha@quicinc.com/
[2] https://lore.kernel.org/lkml/1678979666-551-1-git-send-email-quic_mojha@quicinc.com/
- Introduce new exported symbol on suggestion from [srinivas.kandagatla]
- Use the symbol from drivers/pinctrl/qcom/pinctrl-msm.c.
- Addressed comment given by [dmitry.baryshkov]
- Converted non-standard Originally-by to Signed-off-by.

Changes in v2: https://lore.kernel.org/lkml/1677664555-30191-1-git-send-email-quic_mojha@quicinc.com/
- Addressed comment made by [bjorn]
- Added download mask.
- Passed download mode as parameter
- Accept human accepatable download mode string.
- enable = !!dload_mode
- Shifted module param callback to somewhere down in
the file so that it no longer need to know the
prototype of qcom_scm_set_download_mode()
- updated commit text.

Mukesh Ojha (5):
firmware: qcom_scm: provide a read-modify-write function
pinctrl: qcom: Use qcom_scm_io_update_field()
firmware: scm: Modify only the download bits in TCSR register
firmware: qcom_scm: Refactor code to support multiple download mode
firmware: qcom_scm: Add multiple download mode support

drivers/firmware/Kconfig | 11 -----
drivers/firmware/qcom_scm.c | 88 ++++++++++++++++++++++++++++++----
drivers/pinctrl/qcom/pinctrl-msm.c | 11 ++---
include/linux/firmware/qcom/qcom_scm.h | 2 +
4 files changed, 86 insertions(+), 26 deletions(-)

--
2.7.4