> > struct tpm_tis_spi_phy {
> > struct tpm_tis_data priv;
> > struct spi_device *spi_device;
> > -
> > - u8 tx_buf[4];
> > - u8 rx_buf[4];
> > + u8 *iobuf;
>
> tpm_tis_spi_phy is already devm_kzalloc'd, why embed another kalloc
> pointer inside it?
I was mostly going by the documentation in
https://www.kernel.org/doc/Documentation/DMA-API-HOWTO.txt. Allocating a new
buffer ensures that it is cacheline-aligned and not shared with other data, as
advised:
"Even if those classes of memory could physically work with DMA, you'd need to
ensure the I/O buffers were cacheline-aligned."
"Also, systems with caches that aren't DMA-coherent will work better when the
underlying buffers don't share cache lines with other data."
Is that sufficient to justify this implementation? Then I will add some more
explanations along those lines to the commit message and resubmit the patch.
Alexander
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
tpmdd-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tpmdd-devel