Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9d75f089 authored by Hon Ching \(Vicky\) Lo's avatar Hon Ching \(Vicky\) Lo Committed by Peter Huewe
Browse files

vTPM: set virtual device before passing to ibmvtpm_reset_crq



tpm_ibmvtpm_probe() calls ibmvtpm_reset_crq(ibmvtpm) without having yet
set the virtual device in the ibmvtpm structure. So in ibmvtpm_reset_crq,
the phype call contains empty unit addresses, ibmvtpm->vdev->unit_address.

Signed-off-by: default avatarHon Ching(Vicky) Lo <honclo@linux.vnet.ibm.com>
Signed-off-by: default avatarJoy Latten <jmlatten@linux.vnet.ibm.com>
Reviewed-by: default avatarAshley Lai <ashley@ahsleylai.com>
Cc: <stable@vger.kernel.org>
Fixes: 132f7629 ("drivers/char/tpm: Add new device driver to support IBM vTPM")
Signed-off-by: default avatarPeter Huewe <peterhuewe@gmx.de>
parent 84e3b420
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -578,6 +578,9 @@ static int tpm_ibmvtpm_probe(struct vio_dev *vio_dev,
		goto cleanup;
	}

	ibmvtpm->dev = dev;
	ibmvtpm->vdev = vio_dev;

	crq_q = &ibmvtpm->crq_queue;
	crq_q->crq_addr = (struct ibmvtpm_crq *)get_zeroed_page(GFP_KERNEL);
	if (!crq_q->crq_addr) {
@@ -622,8 +625,6 @@ static int tpm_ibmvtpm_probe(struct vio_dev *vio_dev,

	crq_q->index = 0;

	ibmvtpm->dev = dev;
	ibmvtpm->vdev = vio_dev;
	TPM_VPRIV(chip) = (void *)ibmvtpm;

	spin_lock_init(&ibmvtpm->rtce_lock);