[PATCH v4] tpm: Enable CLKRUN protocol for Braswell systems

Shaikh, Azhar azhar.shaikh at intel.com
Sat Jun 10 16:35:50 UTC 2017



> -----Original Message-----
> From: Jarkko Sakkinen [mailto:jarkko.sakkinen at linux.intel.com]
> Sent: Saturday, June 10, 2017 4:14 AM
> To: Shaikh, Azhar <azhar.shaikh at intel.com>
> Cc: jgunthorpe at obsidianresearch.com; tpmdd-devel at lists.sourceforge.net;
> linux-kernel at vger.kernel.org; linux-security-module at vger.kernel.org
> Subject: Re: [PATCH v4] tpm: Enable CLKRUN protocol for Braswell systems
> 
> On Thu, Jun 08, 2017 at 04:46:33PM -0700, Azhar Shaikh wrote:
> > To overcome a hardware limitation on Intel Braswell systems, disable
> > CLKRUN protocol during TPM transactions and re-enable once the
> > transaction is completed.
> >
> > Signed-off-by: Azhar Shaikh <azhar.shaikh at intel.com>
> > ---
> > Changes from v1:
> > - Add CONFIG_X86 around disable_lpc_clk_run () and
> > enable_lpc_clk_run() to avoid
> > - build breakage on architectures which do not implement
> > kmap_atomic_pfn()
> >
> > Changes from v2:
> > - Use ioremap()/iounmap() instead of
> kmap_atomic_pfn()/kunmap_atomic()
> > - Move is_bsw() and all macros from tpm.h to tpm_tis.c file.
> > - Add the is_bsw() check in disable_lpc_clk_run() and
> > enable_lpc_clk_run()
> > - instead of adding it in each read/write API.
> >
> > Changes from v3:
> > - Move the code under #ifdef CONFIG_X86 and create stub functions for
> > everything else
> > - Rename the functions disable_lpc_clk_run() ->
> > tpm_platform_begin_xfer() and
> > - enable_lpc_clk_run() -> tpm_platform_end_xfer()
> > - Remove wmb()
> 
> The wrong parameter order in outb() is not worth of mentioning in your
> opinion?
> 

Oh yes! It is definitely worth mentioning. I forgot to mention that.
Will definitely mention it in the changelog for the next version if any or will re send v4 with updated changelog for v3.

> Related.
> 
> I looked again the kmap version of the patch and still cannot figure out what
> could be wrong. Obviously the wrong outb() cause unexpected behavior.
> 
> Do you have chances to grab klog from kmap version with correct outb?
> 

I have not tried the kmap version with corrected outb(). Will give that a try.

> /Jarkko
--
To unsubscribe from this list: send the line "unsubscribe linux-security-module" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html



More information about the Linux-security-module-archive mailing list