Re: [Patch V8 2/3] tpm_tis-spi: Add hardware wait polling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Mar 15, 2023 at 03:47:33PM +0000, Krishna Yarlagadda wrote:
> 
> > -----Original Message-----
> > From: Jarkko Sakkinen <jarkko@xxxxxxxxxx>
> > Sent: 12 March 2023 03:19
> > To: Krishna Yarlagadda <kyarlagadda@xxxxxxxxxx>; robh+dt@xxxxxxxxxx;
> > broonie@xxxxxxxxxx; peterhuewe@xxxxxx; jgg@xxxxxxxx;
> > krzysztof.kozlowski+dt@xxxxxxxxxx; linux-spi@xxxxxxxxxxxxxxx; linux-
> > tegra@xxxxxxxxxxxxxxx; linux-integrity@xxxxxxxxxxxxxxx; linux-
> > kernel@xxxxxxxxxxxxxxx
> > Cc: thierry.reding@xxxxxxxxx; Jonathan Hunter <jonathanh@xxxxxxxxxx>;
> > Sowjanya Komatineni <skomatineni@xxxxxxxxxx>; Laxman Dewangan
> > <ldewangan@xxxxxxxxxx>
> > Subject: Re: [Patch V8 2/3] tpm_tis-spi: Add hardware wait polling
> > 
> > External email: Use caution opening links or attachments
> > 
> > 
> > On Thu, 2023-03-02 at 09:48 +0530, Krishna Yarlagadda wrote:
> > > +int tpm_tis_spi_transfer(struct tpm_tis_data *data, u32 addr, u16
> > > len,
> > > +                        u8 *in, const u8 *out)
> > > +{
> > > +       struct tpm_tis_spi_phy *phy = to_tpm_tis_spi_phy(data);
> > > +       struct spi_controller *ctlr = phy->spi_device->controller;
> > > +
> > > +       /*
> > > +        * TPM flow control over SPI requires full duplex support.
> > > +        * Send entire message to a half duplex controller to handle
> > > +        * wait polling in controller.
> > > +        * Set TPM HW flow control flag..
> > > +        */
> > > +       if (ctlr->flags & SPI_CONTROLLER_HALF_DUPLEX)
> > > +               return tpm_tis_spi_hw_flow_transfer(data, addr, len,
> > > in,
> > > +                                                   out);
> > > +       else
> > > +               return tpm_tis_spi_sw_flow_transfer(data, addr, len,
> > > in,
> > > +                                                   out);
> > > +}
> > > +
> > 
> > Based on the condition, better names would be
> Though condition is based on half duplex, functions are implementing
> HW or SW flow of the transfer.

Both are hardwaw flows in the sense that you are controlling a piece of hardware.

BR, Jarkko



[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux