BACKPORT: tpm: Enable CLKRUN protocol for Braswell systems

To overcome a hardware limitation on Intel Braswell systems,
disable CLKRUN protocol during TPM transactions and re-enable
once the transaction is completed.

Conflicts:
	- Due to not picking
	("00194826e6be tpm_tis: Clean up the force=1 module parameter")
	Since the 'force' parameter is enabled for 3.18 kernel,
	pnp_register_driver() doesn't get called. Hence had to move
	the ioremap()/iounmap() calls into the functions
	init_tis()/cleanup_tis() respectively.
	- Not adding the intel-family.h file from
	("970442c599b2 x86/cpu/intel: Introduce macros for
	Intel family numbers") for adding a single
	macro. Instead explicitly defined INTEL_FAM6_ATOM_AIRMONT.

Signed-off-by: Azhar Shaikh <azhar.shaikh@intel.com>
Reviewed-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Tested-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Signed-off-by: James Morris <james.l.morris@oracle.com>
(cherry picked from commmit 5e572cab92f0bb56ca1e6e5ee4d807663a7ccbad)
Signed-off-by: Azhar Shaikh <azhar.shaikh@intel.com>

BUG=b:36790283
TEST=suspend_stress_test on cyan

Change-Id: Ic85078f03550cd3cea2bef8c454f4da89c344fb9
Reviewed-on: https://chromium-review.googlesource.com/537338
Commit-Ready: Kane Chen <kane.chen@intel.com>
Tested-by: Kane Chen <kane.chen@intel.com>
Reviewed-by: Benson Leung <bleung@chromium.org>
Reviewed-by: Wayne Boyer <wayne.boyer@intel.corp-partner.google.com>
(cherry picked from commit 96c37659beb796ac0ac1d1464b82dd3720b4da71)
Reviewed-on: https://chromium-review.googlesource.com/582107
Commit-Queue: YH Lin <yueherngl@chromium.org>
Tested-by: YH Lin <yueherngl@chromium.org>
1 file changed