Re: [PATCH] spmi-pmic-arb: add irq tracepoints to the pmic-arb driver

From: Ankit Gupta
Date: Wed May 27 2015 - 11:06:34 EST


> On 05/26/2015 04:39 PM, Ankit Gupta wrote:
>> The spmi-pmic-arb is also an interrupt controller. It gets a
>> single aggregate irq and disseminates it to individual
>> pmic-peripheral drivers. Each pmic-peripheral has a unique apid
>> number, and can have multiple interrupt capable functions.
>> The registered apid range shows the lowest and highest apid
>> numbers of pmic-peripheral drivers which request irqs. Pid is
>> the base address of that peripheral. For performance measurement,
>> tracepoints are added at the beginning of the aggregate irq and
>> at the end of the individual pmic-peripheral irqs.
>>
>> Following is a list showing the new tracepoint events:
>>
>> spmi_pmic_arb_aggregate_irq_start: aggregate irq number and registered
>> apid range.
>>
>> spmi_pmic_arb_apid_irq_end: apid, irq, func_num, sid and pid.
>>
>> SPMI Interrupts tracepoints can be enabled like:
>>
>> echo 1 >/sys/kernel/debug/tracing/events/spmi-pmic-arb/enable
>>
>> and will dump messages that can be viewed in
>> /sys/kernel/debug/tracing/trace that look like:
>> ... spmi_pmic_arb_aggregate_irq_start: irq=150 registered apid
>> range=(3,189)
>> ... spmi_pmic_arb_apid_irq_end: apid=3 irq=1 func_num=0 sid=0 pid=0x8
>>
>> Suggested-by: Sagar Dharia <sdharia@xxxxxxxxxxxxxx>
>> Signed-off-by: Gilad Avidov <gavidov@xxxxxxxxxxxxxx>
>> Signed-off-by: Ankit Gupta <ankgupta@xxxxxxxxxxxxxx>
>> ---
>
> How is this any better than irq tracepoints that we already have for
> generic irqs?
>
It is better than generic irq tracepoints because it provides bus specific
information (sid and address(pid) of slave write), driver specific
information (apid (pmic-peripheral) and func_num) and statistics (apid
range).
Recall that *slave* read/write cannot be traced by the spmi framework ftrace.
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> a Linux Foundation Collaborative Project
>
>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/