Message ID | 51D2DD37.2040000@intel.com (mailing list archive) |
---|---|
State | Superseded, archived |
Headers | show |
On Tuesday, July 02, 2013 10:01:27 PM Aaron Lu wrote: > Drivers may need to make policy decisions based on the OS that the firmware > believes it's interacting with. ACPI firmware will make a series of _OSI > calls, starting from the oldest OS version they support and ending with the > most recent. This patchset adds a function in ACPI OSL layer to return the > last successful call so that drivers know what the firmware's expecting. > > Based on a patch by Matthew Garrett <matthew.garrett@nebula.com>, which > is again based on a patch by Seth Forshee <seth.forshee@canonical.com>. > > Changelog-by: Matthew Garrett <matthew.garrett@nebula.com> > Signed-off-by: Aaron Lu <aaron.lu@intel.com> > Cc: Matthew Garrett <matthew.garrett@nebula.com> > Cc: Seth Forshee <seth.forshee@canonical.com> > --- > drivers/acpi/osl.c | 6 ++++++ > include/linux/acpi.h | 6 ++++++ > 2 files changed, 12 insertions(+) > > diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c > index 6ab2c35..7ebf07d 100644 > --- a/drivers/acpi/osl.c > +++ b/drivers/acpi/osl.c > @@ -1799,3 +1799,9 @@ void alloc_acpi_hp_work(acpi_handle handle, u32 type, void *context, > kfree(hp_work); > } > EXPORT_SYMBOL_GPL(alloc_acpi_hp_work); > + > +u8 acpi_osi_version(void) > +{ > + return acpi_gbl_osi_data; > +} Actually, is there a reason not to make this static inline and put it into the header? Rafael > +EXPORT_SYMBOL_GPL(acpi_osi_version); > diff --git a/include/linux/acpi.h b/include/linux/acpi.h > index 353ba25..fc3b5c2 100644 > --- a/include/linux/acpi.h > +++ b/include/linux/acpi.h > @@ -578,4 +578,10 @@ acpi_handle_printk(const char *level, void *handle, const char *fmt, ...) {} > }) > #endif > > +#ifdef CONFIG_ACPI > +u8 acpi_osi_version(void); > +#else > +static inline u8 acpi_osi_version(void) { return 0; } > +#endif > + > #endif /*_LINUX_ACPI_H*/ >
diff --git a/drivers/acpi/osl.c b/drivers/acpi/osl.c index 6ab2c35..7ebf07d 100644 --- a/drivers/acpi/osl.c +++ b/drivers/acpi/osl.c @@ -1799,3 +1799,9 @@ void alloc_acpi_hp_work(acpi_handle handle, u32 type, void *context, kfree(hp_work); } EXPORT_SYMBOL_GPL(alloc_acpi_hp_work); + +u8 acpi_osi_version(void) +{ + return acpi_gbl_osi_data; +} +EXPORT_SYMBOL_GPL(acpi_osi_version); diff --git a/include/linux/acpi.h b/include/linux/acpi.h index 353ba25..fc3b5c2 100644 --- a/include/linux/acpi.h +++ b/include/linux/acpi.h @@ -578,4 +578,10 @@ acpi_handle_printk(const char *level, void *handle, const char *fmt, ...) {} }) #endif +#ifdef CONFIG_ACPI +u8 acpi_osi_version(void); +#else +static inline u8 acpi_osi_version(void) { return 0; } +#endif + #endif /*_LINUX_ACPI_H*/
Drivers may need to make policy decisions based on the OS that the firmware believes it's interacting with. ACPI firmware will make a series of _OSI calls, starting from the oldest OS version they support and ending with the most recent. This patchset adds a function in ACPI OSL layer to return the last successful call so that drivers know what the firmware's expecting. Based on a patch by Matthew Garrett <matthew.garrett@nebula.com>, which is again based on a patch by Seth Forshee <seth.forshee@canonical.com>. Changelog-by: Matthew Garrett <matthew.garrett@nebula.com> Signed-off-by: Aaron Lu <aaron.lu@intel.com> Cc: Matthew Garrett <matthew.garrett@nebula.com> Cc: Seth Forshee <seth.forshee@canonical.com> --- drivers/acpi/osl.c | 6 ++++++ include/linux/acpi.h | 6 ++++++ 2 files changed, 12 insertions(+)