[PATCH 0/5] firewire: ohci: add tracepoints event for data of Self-ID DMA

Takashi Sakamoto posted 5 patches 1 year, 5 months ago
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
[PATCH 0/5] firewire: ohci: add tracepoints event for data of Self-ID DMA
Posted by Takashi Sakamoto 1 year, 5 months ago
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
Re: [PATCH 0/5] firewire: ohci: add tracepoints event for data of Self-ID DMA
Posted by Takashi Sakamoto 1 year, 5 months ago
On Wed, Jul 03, 2024 at 07:20:29AM +0900, Takashi Sakamoto wrote:
> 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

Applied to for-next branch.


Regards

Takashi Sakamoto