[PATCH 0/5] firewire: ohci: add tracepoints event for data of Self-ID DMA
Brought to you by:
aeb,
bencollins
From: Takashi S. <o-t...@sa...> - 2024-07-02 22:20:46
|
Hi, In IEEE 1394, Self identification process is the last step at bus configuration process initiated by reset. In this step, all nodes at the bus broadcast self-ID packet according to the new topology. In 1394 OHCI, the contents of the self-ID packet stream are transmitted to host system by DMA. This is Self-ID DMA, and configured by two registers, signaled by an interrupt, has a format of buffer. Software handles the interrupt, then parse the contents of self-ID packet stream to detect all nodes in the bus. Finally it starts any type of operation in the bus. Both the timing to handle the interrupt and the data of DMA buffer are important as a first step to use the bus. This series of patches is to add a tracepoints event to trace the interrupt and the data of DMA buffer. It would be useful to diagnose some kind of issue related to the self-ID process; e.g. hardware quirks. I also expect it useful to investigate the timing issue between hardIRQ and softIRQ contexts to process the contents of self-ID packets. Takashi Sakamoto (5): firewire: ohci: use common macro to interpret be32 data in le32 buffer firewire: ohci: use static function to handle endian issue on PowerPC platform firewire: ohci: add static inline functions to deserialize for Self-ID DMA operation firewire: ohci: use inline functions to operate data of self-ID DMA firewire: ohci: add tracepoints event for data of Self-ID DMA drivers/firewire/.kunitconfig | 1 + drivers/firewire/Kconfig | 16 ++++++++ drivers/firewire/Makefile | 1 + drivers/firewire/ohci-serdes-test.c | 56 ++++++++++++++++++++++++++ drivers/firewire/ohci.c | 60 ++++++++++++++++++++-------- drivers/firewire/ohci.h | 43 +++++++++++++++++++- include/trace/events/firewire_ohci.h | 54 +++++++++++++++++++++++++ 7 files changed, 213 insertions(+), 18 deletions(-) create mode 100644 drivers/firewire/ohci-serdes-test.c -- 2.43.0 |