[v6,0/2] Introduce RPM Master stats

Message ID 20230405-topic-master_stats-v6-0-2277b4433748@linaro.org
Headers
Series Introduce RPM Master stats |

Message

Konrad Dybcio April 20, 2023, 5:36 p.m. UTC
  v5 -> v6:
- pick up tags
- fix 'decisons' -> 'decisions' typo

v5: https://lore.kernel.org/r/20230405-topic-master_stats-v5-0-2e1c98a8b63e@linaro.org

v4 -> v5:
- pick up tags
- uintXY_t -> uXY
- driver.name = "rpm_master_stats" -> "qcom_rpm_master_stats"
- use dev_err_probe for debugfs file creation fail
- use PTR_ERR(dent) intead of -EINVAL for debugfs file creation fail

v4: https://lore.kernel.org/r/20230405-topic-master_stats-v4-0-4217362fcc79@linaro.org

v3 -> v4:
- Use "data" instead of "d" for naming local struct master_stats_data *
- Add "qcom_" prefix in the debugfs path
- Add "Qualcomm" prefix in MODULE_NAME
- Make the struct __packed__ to avoid padding surprises
  (even though it looks like there shouldn't be any, by eye)
- use IS_ERR for checking debugfs_create_file return value instead of
  nullchecking, that apparently changed..
- Use -ENODEV instead of -EINVAL when a MSG RAM handle is not found
- Add missing of_node_put() after of_parse_phandle()

- Vastly improve the documentation bit

v3: https://lore.kernel.org/r/20230405-topic-master_stats-v3-0-2cb2ba4f2092@linaro.org

v2 -> v3:
- rename rpm-master-stats.yaml to qcom,rpm-master-stats.yaml

v2: https://lore.kernel.org/r/20230405-topic-master_stats-v2-0-51c304ecb610@linaro.org

v1 -> v2:
- Drop the `-` in /properties/compatible to make our entry be of the
  correct type [1/2]
- Change %s to %d for printing out the iterator [2/2]

v1: https://lore.kernel.org/r/20230405-topic-master_stats-v1-0-1b1fa2739953@linaro.org

The RPM MSG ram includes per-subsystem low-power mode entry/exit/
residence/etc. statistics which are very useful for trying to debug
what I'd call "SoC insomnia", or IOW the plaftorm refusing to drop
the voltage rails to a minimum and gate the non-critical clocks.

This series adds a very short and simple driver to query that data
and expose it through debugfs.

The base used for writing this driver is:
https://github.com/sonyxperiadev/kernel/blob/aosp/LA.UM.9.14.r1/drivers/soc/qcom/rpm_master_stat.c

Signed-off-by: Konrad Dybcio <konrad.dybcio@linaro.org>
---
Konrad Dybcio (2):
      dt-bindings: soc: qcom: Add RPM Master stats
      soc: qcom: Introduce RPM master stats driver

 .../bindings/soc/qcom/qcom,rpm-master-stats.yaml   |  69 +++++++++
 drivers/soc/qcom/Kconfig                           |  11 ++
 drivers/soc/qcom/Makefile                          |   1 +
 drivers/soc/qcom/rpm_master_stats.c                | 163 +++++++++++++++++++++
 4 files changed, 244 insertions(+)
---
base-commit: 67d5d9f013d6c3829383c08162939cabff14fccc
change-id: 20230405-topic-master_stats-ba201a9af93d

Best regards,
  

Comments

Bjorn Andersson May 25, 2023, 4:54 a.m. UTC | #1
On Thu, 20 Apr 2023 19:36:16 +0200, Konrad Dybcio wrote:
> v5 -> v6:
> - pick up tags
> - fix 'decisons' -> 'decisions' typo
> 
> v5: https://lore.kernel.org/r/20230405-topic-master_stats-v5-0-2e1c98a8b63e@linaro.org
> 
> v4 -> v5:
> - pick up tags
> - uintXY_t -> uXY
> - driver.name = "rpm_master_stats" -> "qcom_rpm_master_stats"
> - use dev_err_probe for debugfs file creation fail
> - use PTR_ERR(dent) intead of -EINVAL for debugfs file creation fail
> 
> [...]

Applied, thanks!

[1/2] dt-bindings: soc: qcom: Add RPM Master stats
      commit: 0be4392435a6a0e16b3eb56a8815ebdbcd44e1a7
[2/2] soc: qcom: Introduce RPM master stats driver
      commit: a77b2a0b12801a232226d227636236ed89b77043

Best regards,