forked from luck/tmp_suning_uos_patched
tpm, tpm_crb: fix le64_to_cpu conversions in crb_acpi_add()
le64_to_cpu() was applied twice to the physical addresses read from the
control area. This hasn't shown any visible regressions because CRB
driver has been tested only on the little endian platofrms so far.
Reported-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>
Reviewed-By: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Cc: <stable@vger.kernel.org>
Fixes: 30fc8d138e
("tpm: TPM 2.0 CRB Interface")
Signed-off-by: Peter Huewe <peterhuewe@gmx.de>
This commit is contained in:
parent
9d75f08946
commit
49afd7289b
|
@ -267,7 +267,7 @@ static int crb_acpi_add(struct acpi_device *device)
|
|||
|
||||
memcpy_fromio(&pa, &priv->cca->cmd_pa, 8);
|
||||
pa = le64_to_cpu(pa);
|
||||
priv->cmd = devm_ioremap_nocache(dev, le64_to_cpu(pa),
|
||||
priv->cmd = devm_ioremap_nocache(dev, pa,
|
||||
ioread32(&priv->cca->cmd_size));
|
||||
if (!priv->cmd) {
|
||||
dev_err(dev, "ioremap of the command buffer failed\n");
|
||||
|
@ -276,7 +276,7 @@ static int crb_acpi_add(struct acpi_device *device)
|
|||
|
||||
memcpy_fromio(&pa, &priv->cca->rsp_pa, 8);
|
||||
pa = le64_to_cpu(pa);
|
||||
priv->rsp = devm_ioremap_nocache(dev, le64_to_cpu(pa),
|
||||
priv->rsp = devm_ioremap_nocache(dev, pa,
|
||||
ioread32(&priv->cca->rsp_size));
|
||||
if (!priv->rsp) {
|
||||
dev_err(dev, "ioremap of the response buffer failed\n");
|
||||
|
|
Loading…
Reference in New Issue
Block a user