[Pdbg] [PATCH 00/17] Rework sbefifo library and driver

Amitay Isaacs amitay at ozlabs.org
Thu Oct 31 17:34:11 AEDT 2019


The current implementation of libsbefifo assumes kernel device driver based
transport for sbefifo.  However, it's possible to use other transport
mechanism (e.g. cronus) to talk to sbefifo.  In order to use other transports,
sbefifo library must provide the protocol marshalling required for various
chip-ops.

The transport for sbefifo is abstracted as a sbefifo_transport hwunit.  This
results in a single implementation of sbefifo hwunit that performs the
chip-ops.  The sbefifo-mem hwunit, uses the sbefifo hwunit to do the chip-op.

Amitay Isaacs (17):
  libpdbg: Only real nodes should have "system-path" property
  libsbefifo: Drop cmd argument from sbefifo_operation
  libsbefifo: Refactor protocol marshalling for istep chip-op
  libsbefifo: Refactor protocol marshalling for scom chipops
  libsbefifo: Refactor protocol marshalling for ring chip-ops
  libsbefifo: Refactor protocol marshalling for memory chip-ops
  libsbefifo: Refactor protocol marshalling for register chip-ops
  libsbefifo: Refactor protocol marshalling for array chip-ops
  libsbefifo: Refactor protocol marshalling for instruction chip-op
  libsbefifo: Refactor protocol marshalling for generic chip-ops
  libsbefifo: Refactor protocol marshalling for mpipl chip-ops
  libsbefifo: Refactor sbefifo_init / sbefifo_free api
  libsbefifo: Refactor output parsing and ffdc extraction
  libpdbg: Expand sbefifo data marshalling and calling chip-op
  libpdbg: Add sbefifo_transport hardware unit
  libpdbg: Add sbefifo chipop method to use sbefifo transport
  dts: Update sbefifo related targets in p9 kernel backend

 libpdbg/device.c             |   2 +
 libpdbg/hwunit.h             |   8 +
 libpdbg/sbefifo.c            | 233 +++++++++++++++++++-------
 libsbefifo/cmd_array.c       | 119 ++++++++++----
 libsbefifo/cmd_control.c     |  50 ++++--
 libsbefifo/cmd_generic.c     | 204 +++++++++++++----------
 libsbefifo/cmd_instruction.c |  49 ++++--
 libsbefifo/cmd_memory.c      | 311 ++++++++++++++++++++++++-----------
 libsbefifo/cmd_mpipl.c       | 145 ++++++++++++----
 libsbefifo/cmd_register.c    | 116 +++++++++----
 libsbefifo/cmd_ring.c        | 163 +++++++++++++-----
 libsbefifo/cmd_scom.c        | 203 +++++++++++++++++------
 libsbefifo/connect.c         |  34 ++--
 libsbefifo/libsbefifo.h      |  84 +++++++++-
 libsbefifo/operation.c       |  98 ++++++-----
 libsbefifo/sbefifo_private.h |   5 +-
 p9-kernel.dts.m4             |  42 +++--
 17 files changed, 1340 insertions(+), 526 deletions(-)

-- 
2.21.0



More information about the Pdbg mailing list