linux/drivers/firmware/arm_scmi
Lukasz Luba 729d3530a5 drivers: firmware: scmi: Extend SCMI transport layer by trace events
The SCMI transport layer communicates via mailboxes and shared memory with
firmware running on a microcontroller. It is platform specific how long it
takes to pass a SCMI message. The most sensitive requests are coming from
CPUFreq subsystem, which might be used by the scheduler.
Thus, there is a need to measure these delays and capture anomalies.
This change introduces trace events wrapped around transfer code.

According to Jim's suggestion a unique transfer_id is to distinguish
similar entries which might have the same message id, protocol id and
sequence. This is a case then there are some timeouts in transfers.

Suggested-by: Jim Quinlan <james.quinlan@broadcom.com>
Signed-off-by: Lukasz Luba <lukasz.luba@arm.com>
Signed-off-by: Sudeep Holla <sudeep.holla@arm.com>
2019-12-30 12:34:37 +00:00
..
base.c firmware: arm_scmi: Use {get,put}_unaligned_le{32,64} accessors 2019-08-12 12:23:01 +01:00
bus.c firmware: arm_scmi: Skip protocol initialisation for additional devices 2019-12-24 11:36:26 +00:00
clock.c firmware: arm_scmi: Stash version in protocol init functions 2019-12-24 11:35:49 +00:00
common.h drivers: firmware: scmi: Extend SCMI transport layer by trace events 2019-12-30 12:34:37 +00:00
driver.c drivers: firmware: scmi: Extend SCMI transport layer by trace events 2019-12-30 12:34:37 +00:00
Makefile firmware: arm_scmi: Add RESET protocol in SCMI v2.0 2019-08-12 12:23:02 +01:00
perf.c firmware: arm_scmi: Stash version in protocol init functions 2019-12-24 11:35:49 +00:00
power.c firmware: arm_scmi: Stash version in protocol init functions 2019-12-24 11:35:49 +00:00
reset.c firmware: arm_scmi: Stash version in protocol init functions 2019-12-24 11:35:49 +00:00
scmi_pm_domain.c firmware: arm_scmi: Match scmi device by both name and protocol id 2019-12-24 11:35:49 +00:00
sensors.c firmware: arm_scmi: Stash version in protocol init functions 2019-12-24 11:35:49 +00:00