[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1482121253-924-1-git-send-email-anjiandi@codeaurora.org>
Date: Sun, 18 Dec 2016 22:20:53 -0600
From: Jiandi An <anjiandi@...eaurora.org>
To: peterhuewe@....de, tpmdd@...horst.net,
jarkko.sakkinen@...ux.intel.com, jgunthorpe@...idianresearch.com,
tpmdd-devel@...ts.sourceforge.net, linux-kernel@...r.kernel.org
Cc: Jiandi An <anjiandi@...eaurora.org>
Subject: [PATCH] tpm, tpm_crb: Handle 64-bit resource in crb_check_resource()
crb_check_resource() in TPM CRB driver calls
acpi_dev_resource_memory() which only handles 32-bit resources.
Adding a call to acpi_dev_resource_address_space() in TPM CRB
driver which handles 64-bit resources.
Signed-off-by: Jiandi An <anjiandi@...eaurora.org>
---
drivers/char/tpm/tpm_crb.c | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/drivers/char/tpm/tpm_crb.c b/drivers/char/tpm/tpm_crb.c
index 717b6b4..86f355b 100644
--- a/drivers/char/tpm/tpm_crb.c
+++ b/drivers/char/tpm/tpm_crb.c
@@ -264,10 +264,12 @@ static bool crb_req_canceled(struct tpm_chip *chip, u8 status)
static int crb_check_resource(struct acpi_resource *ares, void *data)
{
struct resource *io_res = data;
- struct resource res;
+ struct resource_win win;
+ struct resource *res = &(win.res);
- if (acpi_dev_resource_memory(ares, &res)) {
- *io_res = res;
+ if (acpi_dev_resource_memory(ares, res) ||
+ acpi_dev_resource_address_space(ares, &win)) {
+ *io_res = *res;
io_res->name = NULL;
}
--
Jiandi An
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.
Powered by blists - more mailing lists