[V7,0/2] firmware: Add support for boot_stats

Message ID cover.1688533340.git.quic_schowdhu@quicinc.com
Headers
Series firmware: Add support for boot_stats |

Message

Souradeep Chowdhury July 5, 2023, 5:32 a.m. UTC
  Qualcomm's proprietary Android boot-loaders capture boot time
stats, like the time when the bootloader started execution and at what
point the bootloader handed over control to the kernel etc. in the IMEM
region. This information is captured by the bootloader and populated on
the device tree properties "pre-abl-time" and "abl-time" which can be
be viewed from the user space like as follows:-

/sys/firmware/devicetree/base/bootstats # cat abl_time
17898

As a part of this patch series added the bindings for boot-stats which
was suggested in the v6 of the series. The link for the same is as
follows:-

https://lore.kernel.org/linux-arm-kernel/7d397e67-5d56-4975-98af-1ac9746c07f4@app.fastmail.com/

Souradeep Chowdhury (2):
  dt-bindings: firmware: bootstats: Add the dtschema
  MAINTAINERS: Add the entry for boot_stats support

 .../bindings/firmware/qcom,bootstats.yaml     | 38 +++++++++++++++++++
 MAINTAINERS                                   |  6 +++
 2 files changed, 44 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/firmware/qcom,bootstats.yaml

--
2.17.1
  

Comments

Brian Masney July 10, 2023, 3:20 p.m. UTC | #1
On Wed, Jul 05, 2023 at 11:02:30AM +0530, Souradeep Chowdhury wrote:
> Qualcomm's proprietary Android boot-loaders capture boot time
> stats, like the time when the bootloader started execution and at what
> point the bootloader handed over control to the kernel etc. in the IMEM
> region. This information is captured by the bootloader and populated on
> the device tree properties "pre-abl-time" and "abl-time" which can be
> be viewed from the user space like as follows:-
> 
> /sys/firmware/devicetree/base/bootstats # cat abl_time
> 17898
> 
> As a part of this patch series added the bindings for boot-stats which
> was suggested in the v6 of the series. The link for the same is as
> follows:-

Should boot statistics be exposed to userspace through the qcom socinfo
driver? I see that the socinfo v19 metadata has fields for the boot core
and boot cluster [1], so boot timing wouldn't be out of place.

Brian

[1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/soc/qcom/socinfo.c#n572
  
Souradeep Chowdhury July 11, 2023, 5:30 a.m. UTC | #2
On 7/10/2023 8:50 PM, Brian Masney wrote:
> On Wed, Jul 05, 2023 at 11:02:30AM +0530, Souradeep Chowdhury wrote:
>> Qualcomm's proprietary Android boot-loaders capture boot time
>> stats, like the time when the bootloader started execution and at what
>> point the bootloader handed over control to the kernel etc. in the IMEM
>> region. This information is captured by the bootloader and populated on
>> the device tree properties "pre-abl-time" and "abl-time" which can be
>> be viewed from the user space like as follows:-
>>
>> /sys/firmware/devicetree/base/bootstats # cat abl_time
>> 17898
>>
>> As a part of this patch series added the bindings for boot-stats which
>> was suggested in the v6 of the series. The link for the same is as
>> follows:-
> 
> Should boot statistics be exposed to userspace through the qcom socinfo
> driver? I see that the socinfo v19 metadata has fields for the boot core
> and boot cluster [1], so boot timing wouldn't be out of place.

"Boot Cluster" and "boot core" are soc specific info which are fixed for 
a particular qcom soc recorded in smem region of memory. "Boot_stats" is
not a property of a soc as such, they are KPI measurements in the boot 
time path stored in the imem region. So I not sure if this is the right 
home for it.

> 
> Brian
> 
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/soc/qcom/socinfo.c#n572
>