lkml.org 
[lkml]   [2015]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 1/3] ACPI : introduce macros for using the ACPI specification version
On 06/30/2015 02:12 PM, Rafael J. Wysocki wrote:
> Hi Al,
>
> On Fri, Jun 19, 2015 at 12:36 AM, Al Stone <al.stone@linaro.org> wrote:
>> Add the ACPI_SPEC_VERSION() macro to build a proper version number from
>> a major and minor revision number. Add also the ACPI_FADT_SPEC_VERSION
>> that constructs a proper version number from the entries in the current
>> FADT.
>>
>> These macros are added in order to simplify retrieving and comparing ACPI
>> specification version numbers, since this is becoming a more frequent need.
>> In particular, there are some architectures that require at least a certain
>> version of the spec, and there are differences in some structure sizes that
>> have changed with recent versions but can only be tracked by spec version
>> number.
>>
>> Signed-off-by: Al Stone <al.stone@linaro.org>
>> ---
>> include/linux/acpi.h | 5 +++++
>> 1 file changed, 5 insertions(+)
>>
>> diff --git a/include/linux/acpi.h b/include/linux/acpi.h
>> index a4acb55..33ed313 100644
>> --- a/include/linux/acpi.h
>> +++ b/include/linux/acpi.h
>> @@ -48,6 +48,11 @@
>> #include <acpi/acpi_io.h>
>> #include <asm/acpi.h>
>>
>> +#define ACPI_SPEC_VERSION(major, minor) ((major<<8)|minor)
>
> One nit here.
>
> acpi_gbl_FADT.header.revision is of type u8 originally, so shifting it
> by 8 bit positions only works due to some implicit type casting I
> suppose.

Bah. That was being sloppy on my part. Sorry about that. Will fix.

> Moreover, it is not entirely clear why the macro is specific to the
> computation of the ACPI spec version.

As far as I know, that's the only way to extract the spec version from
tables; I don't recall there being any other table with that info. Since
I will likely use this again, it seemed to make sense at the time.

> So I'd drop ACPI_SPEC_VERSION and only define ACPI_FADT_SPEC_VERSION
> as something like
>
> #define ACPI_FADT_SPEC_VERSION (((unsigned
> int)acpi_gbl_FADT.header.revision << 8) | (unsigned
> int)acpi_gbl_FADT.minor_revision)
>
> Thanks,
> Rafael
>

Sure. That makes sense. It makes it clearer that this is the version
just from the FADT. I'll do that.

--
ciao,
al
-----------------------------------
Al Stone
Software Engineer
Linaro Enterprise Group
al.stone@linaro.org
-----------------------------------


\
 
 \ /
  Last update: 2015-06-30 23:41    [W:0.077 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site