summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/utils.c
diff options
context:
space:
mode:
authorJerry Hoemann <jerry.hoemann@hpe.com>2016-04-11 15:02:26 -0700
committerDan Williams <dan.j.williams@intel.com>2016-04-11 15:02:26 -0700
commitc7e16e5257ec46530e3e874af38191746c137c83 (patch)
tree63f2cfd89ef5d4f6c4f5008854cbd0849f235870 /drivers/acpi/utils.c
parentbf16200689118d19de1b8d2a3c314fc21f5dc7bb (diff)
downloadop-kernel-dev-c7e16e5257ec46530e3e874af38191746c137c83.zip
op-kernel-dev-c7e16e5257ec46530e3e874af38191746c137c83.tar.gz
acpi: widen acpi_evaluate_dsm() revision and function-index arguments
The ACPI specification states that arguments "Revision ID" and "Function Index" to a _DSM are type "Integer." Type Integers are 64 bit quantities. The function evaluate_dsm specifies these types as simple "int" which are 32 bits. Widen type passed to acpi_evaluate_dsm and its callers and derived callers to pass correct type. acpi_check_dsm and acpi_evaluate_dsm_typed had similar issue and were corrected as well. This is in preparation for libnvdimm implementing a generic _DSM passthrough facility to have the capacity to pass 64-bit values as the ACPI specification allows. [djbw: clarify the changelog, add rationale] Signed-off-by: Jerry Hoemann <jerry.hoemann@hpe.com> Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/acpi/utils.c')
-rw-r--r--drivers/acpi/utils.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/acpi/utils.c b/drivers/acpi/utils.c
index 050673f..e854dea 100644
--- a/drivers/acpi/utils.c
+++ b/drivers/acpi/utils.c
@@ -625,7 +625,7 @@ acpi_status acpi_evaluate_lck(acpi_handle handle, int lock)
* some old BIOSes do expect a buffer or an integer etc.
*/
union acpi_object *
-acpi_evaluate_dsm(acpi_handle handle, const u8 *uuid, int rev, int func,
+acpi_evaluate_dsm(acpi_handle handle, const u8 *uuid, u64 rev, u64 func,
union acpi_object *argv4)
{
acpi_status ret;
@@ -674,7 +674,7 @@ EXPORT_SYMBOL(acpi_evaluate_dsm);
* functions. Currently only support 64 functions at maximum, should be
* enough for now.
*/
-bool acpi_check_dsm(acpi_handle handle, const u8 *uuid, int rev, u64 funcs)
+bool acpi_check_dsm(acpi_handle handle, const u8 *uuid, u64 rev, u64 funcs)
{
int i;
u64 mask = 0;
OpenPOWER on IntegriCloud