Hi Eddie,

On Sat, 23 Sep 2017, at 06:35, Eddie James wrote:
> From: "Edward A. James" <[email protected]>
> 
> IBM POWER9 processors contain some embedded hardware and software bits
> collectively referred to as the self boot engine (SBE).  One role of
> the SBE is to act as a proxy that provides access to the registers of
> the POWER chip from other (embedded) systems.
> 
> The POWER9 chip contains a hardware frontend for communicating with
> the SBE from remote systems called the SBEFIFO.  The SBEFIFO logic
> is contained within an FSI CFAM  and as such the driver implements an
> FSI bus device.
> 
> The SBE expects to communicate using a defined wire protocol; however,
> the driver knows nothing of the protocol and only provides raw access
> to the fifo device to userspace applications wishing to communicate with
> the SBE using the wire protocol.
> 
> The SBEFIFO consists of two hardware fifos.  The upstream fifo is used
> by the driver to transfer data to the SBE on the POWER chip, from the
> system hosting the driver.  The downstream fifo is used by the driver to
> transfer data from the SBE on the power chip to the system hosting the
> driver.
> 
> Signed-off-by: Brad Bishop <[email protected]>
> Signed-off-by: Edward A. James <[email protected]>
> ---
>  drivers/fsi/Kconfig       |   7 +
>  drivers/fsi/Makefile      |   1 +
>  drivers/fsi/fsi-sbefifo.c | 861
>  ++++++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 869 insertions(+)
>  create mode 100644 drivers/fsi/fsi-sbefifo.c

My general feeling is the implementation is too complex by half for what
is required. I may be wrong and the solution genuinely needs the
complexity, but to test that I'll cook up a counter-proposal patch and
we can debate that. I'm away for the next few days, but I hope to send
something by the end of next week.

Cheers,

Andrew

Reply via email to