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