• Stephen Boyd's avatar
    soc: qcom: stats: Populate all subsystem debugfs files · acdbf5f9
    Stephen Boyd authored
    This driver relies on SMEM to populate items for each subsystem before
    the device probes. The items in SMEM that are being looked for are
    populated by the subsystems lazily, and therefore may not exist until
    the device has booted. For example, if I build this driver into the
    kernel on Trogdor Lazor and boot up, I don't see a 'modem' debugfs file
    populated, because the modem boots and populates the SMEM item after
    this driver probes.
    
    Always populate the files for the subsystems if they're in SMEM, and
    make the qcom_subsystem_sleep_stats_show() function return 0 if the SMEM
    items still isn't there. This way we can run a simple command like
    
    	grep ^ /sys/kernel/debug/qcom_stats/*
    
    and collect the subsystem sleep stats without interspersed errors or
    missing details entirely because this driver probed first.
    
    Fixes: 1d772469 ("soc: qcom: Add Sleep stats driver")
    Cc: Matthias Kaehlcke <mka@chromium.org>
    Signed-off-by: default avatarStephen Boyd <swboyd@chromium.org>
    Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
    Link: https://lore.kernel.org/r/20230119032329.2909383-1-swboyd@chromium.org
    acdbf5f9
qcom_stats.c 7.36 KB