[Pdbg] [PATCH 00/23] Enable drivers per backend

Amitay Isaacs amitay at ozlabs.org
Tue Apr 14 12:47:27 AEST 2020


This patch set adds per backend support of hardware drivers.  All hardware
drivers are assigned to a specific backend.  When looking up a driver
for a target in device tree, first lookup the specific backend and then
the default backend.  The same compatible property can be used to load
different hardware drivers depending on different backend.  As a result,
the compatible properties in device tree do not need to be hardware
specific.  The compatible properties in system device tree will allow
looking up either architecture specific driver (e.g. ibm,power9-thread)
or an architecture-neutral driver (e.g. ibm,power-thread).


Amitay Isaacs (23):
  libsbefifo: Fix compilation error for undefined variable
  libsbefifo: Use the correct sized pointer
  libpdbg: Add a private api to get current backend
  libpdbg: Register hwunit drivers per backend
  libpdbg: Backend device tree cannot be overriden
  libpdbg: Register fsi drivers with fsi backend
  libpdbg: Rename ibm,bmcfsi -> ibm,power-fsi
  libpdbg: Register i2c driver with i2c backend
  libpdbg: Rename ibm,power8-i2c-slave -> ibm-power8-i2c-pib
  libpdbg: Register kernel drivers with kernel backend
  libpdbg: Rename ibm,kernel-{fsi,pib,sbefifo} ->
    ibm,power-{fsi,pib,sbefifo}
  libpdbg: Register fake drivers with fake backend
  libpdbg: Register host drivers with host backend
  libpdbg: Rename ibm,host-pib -> ibm,power-pib
  libpdbg: Register cronus drivers with cronus backend
  libpdbg: Rename ibm,cronus-{fsi,pib,sbefifo} ->
    ibm,power->{fsi,pib,sbefifo}
  dts: Backend device trees must use specific driver
  libpdbg: Rename ibm,power8-opb-hmfsi -> ibm,power8-hmfsi
  libpdbg: Rename ibm,fsi-pib -> ibm,power-pib
  libpdbg: Rename ibm,fsi-hmfsi -> ibm,power-hmfsi
  libpdbg: Rename ibm,processor -> ibm,power-proc
  libpdbg: Rename ibm,sbefifo-{mem,mem-pba,chipop} ->
    ibm,power-{mem,mempba,chipop}
  dts: Add a generic compatible property for core and thread

 libpdbg/adu.c                     |   4 +-
 libpdbg/bmcfsi.c                  |   4 +-
 libpdbg/cfam.c                    |  14 +-
 libpdbg/chip.c                    |   4 +-
 libpdbg/cronus.c                  |  12 +-
 libpdbg/dtb.c                     |  37 ++-
 libpdbg/fake.c                    |   8 +-
 libpdbg/host.c                    |   4 +-
 libpdbg/htm.c                     |   6 +-
 libpdbg/hwunit.c                  |  31 +-
 libpdbg/hwunit.h                  |   2 +-
 libpdbg/i2c.c                     |   4 +-
 libpdbg/kernel.c                  |   8 +-
 libpdbg/p8chip.c                  |   4 +-
 libpdbg/p9_fapi_targets.c         |  52 ++--
 libpdbg/p9chip.c                  |   4 +-
 libpdbg/sbefifo.c                 |  16 +-
 libpdbg/target.h                  |   1 +
 libsbefifo/cmd_scom.c             |   4 +-
 libsbefifo/operation.c            |   5 +-
 p8-cronus.dts.m4                  |   8 +-
 p8-fsi.dts.m4                     |  12 +-
 p8-host.dts.m4                    |   2 +-
 p8-i2c.dts.m4                     |  10 +-
 p8-kernel.dts.m4                  |   6 +-
 p8.dts.m4                         |   2 +-
 p9-cronus.dts.m4                  |  24 +-
 p9-fsi.dtsi.m4                    |   8 +-
 p9-host.dts.m4                    |   4 +-
 p9-kernel.dts.m4                  |  24 +-
 p9.dts                            | 484 +++++++++++++++---------------
 tests/test_p9_fapi_translation.sh |   2 +-
 32 files changed, 422 insertions(+), 388 deletions(-)

-- 
2.25.2



More information about the Pdbg mailing list