[PATCH v4] tpm: Enable CLKRUN protocol for Braswell systems
From: Jarkko Sakkinen <hidden>
Date: 2017-06-14 14:46:29
Also in:
lkml
On Wed, Jun 14, 2017 at 12:51:25AM +0000, Shaikh, Azhar wrote:
quoted
-----Original Message----- From: Jarkko Sakkinen [mailto:jarkko.sakkinen at linux.intel.com] Sent: Monday, June 12, 2017 12:50 AM To: Shaikh, Azhar <redacted> 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 Sat, Jun 10, 2017 at 04:35:50PM +0000, Shaikh, Azhar wrote:quoted
quoted
-----Original Message----- From: Jarkko Sakkinen [mailto:jarkko.sakkinen at linux.intel.com] Sent: Saturday, June 10, 2017 4:14 AM To: Shaikh, Azhar <redacted> 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:quoted
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 <redacted> --- 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 ofkmap_atomic_pfn()/kunmap_atomic()quoted
- 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 willre send v4 with updated changelog for v3.quoted
quoted
Related. I looked again the kmap version of the patch and still cannot figure out what could be wrong. Obviously the wrong outb() cause unexpectedbehavior.quoted
quoted
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.quoted
/JarkkoThank you!Even with the corrected outb(), kmap version fails to boot. Could not get boot logs :-(quoted
/Jarkko
Lets go with the ioremap() version for now. /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