Re: [PATCH v12 0/5] Introduce SoC sleep stats driver
From: Shawn Guo
Date: Fri Oct 15 2021 - 09:45:02 EST
On Wed, Oct 13, 2021 at 12:08:19PM +0530, Maulik Shah wrote:
> Changes in v12:
> - Address Stephan's comments from v11
> - Rename driver and compatible to qcom,rpm(h)-stats
> - Skip reading SMEM for RPM targets
> - Make driver register in late_init to avoid -EPROBE_DEFER from smem.
> - Change size to 0x10000 for RPM targets since area contains many others stats.
>
> Changes in v11:
> - Address Bjorn's comments from v10
> - Add a case for RPM based targets dynamic offset in driver
> - Update commit messages to use qcom sleep stats instead of soc sleep stats
> - Drop individual target dtsi changes for sc7180 and sc7280
> - Add single change to enable sleep stats for RPMh based targets
> - Add single change to enable sleep stats for RPM based targets
>
> Changes in v10:
> - Updated device node name to use memory instead of aop_msgram
> - Remove Lina's email from maintainers
> - Rename driver to qcom_sleep_stats. Update makefile, Kconfig accordingly
> - Address Bjorn's comments from v9
>
> Changes in v9:
> - Remove soft dependency on smem module
> - Return -EIO to userspace in case of error
> - Make struct sleep_stats *stat a const pointer
> - Remove the driver from soc_sleep_stats_driver name
> - Remove offset address and directly mention the msgram address in dtsi
> - Use devm_platform_get_and_ioremap_resource() to ioremap dtsi address
> - Update device node name to mention aop_msgram instead rpmh-sleep-stats
> - Update dtsi and documentation accordingly but retain the reviews
>
> Changes in v8:
> - Addressed bjorn's comments in driver from v7
> - Update aoss_qmp device node reg size for sc7280
>
> Changes in v7:
> - Fix example in bindings documentation as per #address/size-cells = <1>.
> - Add comment in driver from where 'ddr' subsystems name is read.
> - Update comment in driver to s/beside/besides and others from v6.
> - Rename debugfs_create_entries() from v6.
> - Drop use of memcpy_fromio() to find the name.
> - Use sizeof(*prv_data) in devm_kzalloc().
> - Add change to define readq() if its not yet defined for compile support.
> - Add wpss subsystem in the list of subsystems.
> - Add module soft dependency on smem module.
> - Add new change to add device node for sc7280.
>
> Changes in v6:
> - Address stephen's comments from v5 which includes below
> - Pad 0 in documentation example to make address 8 digit
> - define macro to calculate offset in driver
> - Add appended_stats_avail to prv_data instead of using entire stats_config
> - make array subsystems[] as const
> - Add comment for SSR case
> - Use memcpy_fromio() and devm_kcalloc() during probe
> - Change file permission mode from 444 to 400
>
> - Address guenter's comments to add depends on QCOM_SMEM
>
> - Add adsp_island and cdsp_island subsystems
> - Use strim() to remove whitespace in stat name
>
> Changes in v5:
> - Remove underscore from node name in Documentation and DTSI change
> - Remove global config from driver change
>
> Changes in v4:
> - Address bjorn's comments from v3 on change 2.
> - Add bjorn's Reviewed-by on change 3 and 4.
>
> Changes in v3:
> - Address stephen's comments from v2 in change 1 and 2.
> - Address bjorn's comments from v2 in change 3 and 4.
> - Add Rob and bjorn's Reviewed-by on YAML change.
>
> Changes in v2:
> - Convert Documentation to YAML.
> - Address stephen's comments from v1.
> - Use debugfs instead of sysfs.
> - Add sc7180 dts changes for sleep stats
> - Add defconfig changes to enable driver
> - Include subsystem stats from [1] in this single stats driver.
> - Address stephen's comments from [1]
> - Update cover letter inline to mention [1]
>
> Qualcomm Technologies, Inc. (QTI)'s chipsets support SoC level low power
> modes. SoCs Always On Processor/Resource Power Manager produces statistics
> of the SoC sleep modes involving lowering or powering down of the rails and
> the oscillator clock.
>
> Additionally multiple subsystems present on SoC like modem, spss, adsp,
> cdsp maintains their low power mode statistics in shared memory (SMEM).
>
> Statistics includes SoC sleep mode type, number of times LPM entered, time
> of last entry, exit, and accumulated sleep duration in seconds.
>
> This series adds a driver to read the stats and export to debugfs.
>
> [1] https://lore.kernel.org/patchwork/patch/1149381/
>
> Mahesh Sivasubramanian (2):
> dt-bindings: Introduce QCOM Sleep stats bindings
> soc: qcom: Add Sleep stats driver
>
> Maulik Shah (3):
> arm64: defconfig: Enable Sleep stats driver
> arm64: dts: qcom: Enable RPMh Sleep stats
> arm64: dts: qcom: Enable RPM Sleep stats
On SDM660:
Tested-by: Shawn Guo <shawn.guo@xxxxxxxxxx>