Message ID | 1459510521-4682-1-git-send-email-linux@rempel-privat.de (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
On Fri, Apr 01, 2016 at 01:35:21PM +0200, Oleksij Rempel wrote: > Asus Zenbook ux31a is providing ACPI0008 interface for ALS > (Ambient Light Sensor), which is accessible for OS => Win 7. > This sensor can be used with iio/acpi-als driver. > Since it is disabled by default, we should use asus-wmi > interface to enable it. > Corentin, any concerns? > Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> > --- > drivers/platform/x86/asus-wmi.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > index a96630d..a26dca3 100644 > --- a/drivers/platform/x86/asus-wmi.c > +++ b/drivers/platform/x86/asus-wmi.c > @@ -114,6 +114,7 @@ MODULE_LICENSE("GPL"); > #define ASUS_WMI_DEVID_LED6 0x00020016 > > /* Backlight and Brightness */ > +#define ASUS_WMI_DEVID_ALS_ENABLE 0x00050001 /* Ambient Light Sensor */ > #define ASUS_WMI_DEVID_BACKLIGHT 0x00050011 > #define ASUS_WMI_DEVID_BRIGHTNESS 0x00050012 > #define ASUS_WMI_DEVID_KBD_BACKLIGHT 0x00050021 Following this is: #define ASUS_WMI_DEVID_LIGHT_SENSOR 0x00050022 /* ?? */ Is there any relationship with this patch and that device? It would be useful to understand the difference between these two DEVIDs (a comment in the source). Otherwise, I'm happy with the patch. > @@ -1730,6 +1731,7 @@ ASUS_WMI_CREATE_DEVICE_ATTR(touchpad, 0644, ASUS_WMI_DEVID_TOUCHPAD); > ASUS_WMI_CREATE_DEVICE_ATTR(camera, 0644, ASUS_WMI_DEVID_CAMERA); > ASUS_WMI_CREATE_DEVICE_ATTR(cardr, 0644, ASUS_WMI_DEVID_CARDREADER); > ASUS_WMI_CREATE_DEVICE_ATTR(lid_resume, 0644, ASUS_WMI_DEVID_LID_RESUME); > +ASUS_WMI_CREATE_DEVICE_ATTR(als_enable, 0644, ASUS_WMI_DEVID_ALS_ENABLE); > > static ssize_t store_cpufv(struct device *dev, struct device_attribute *attr, > const char *buf, size_t count) > @@ -1756,6 +1758,7 @@ static struct attribute *platform_attributes[] = { > &dev_attr_cardr.attr, > &dev_attr_touchpad.attr, > &dev_attr_lid_resume.attr, > + &dev_attr_als_enable.attr, > NULL > }; > > @@ -1776,6 +1779,8 @@ static umode_t asus_sysfs_is_visible(struct kobject *kobj, > devid = ASUS_WMI_DEVID_TOUCHPAD; > else if (attr == &dev_attr_lid_resume.attr) > devid = ASUS_WMI_DEVID_LID_RESUME; > + else if (attr == &dev_attr_als_enable.attr) > + devid = ASUS_WMI_DEVID_ALS_ENABLE; > > if (devid != -1) > ok = !(asus_wmi_get_devstate_simple(asus, devid) < 0); > -- > 2.5.0 > >
Am 10.04.2016 um 05:06 schrieb Darren Hart: > On Fri, Apr 01, 2016 at 01:35:21PM +0200, Oleksij Rempel wrote: >> Asus Zenbook ux31a is providing ACPI0008 interface for ALS >> (Ambient Light Sensor), which is accessible for OS => Win 7. >> This sensor can be used with iio/acpi-als driver. >> Since it is disabled by default, we should use asus-wmi >> interface to enable it. >> > > Corentin, any concerns? > >> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> >> --- >> drivers/platform/x86/asus-wmi.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c >> index a96630d..a26dca3 100644 >> --- a/drivers/platform/x86/asus-wmi.c >> +++ b/drivers/platform/x86/asus-wmi.c >> @@ -114,6 +114,7 @@ MODULE_LICENSE("GPL"); >> #define ASUS_WMI_DEVID_LED6 0x00020016 >> >> /* Backlight and Brightness */ >> +#define ASUS_WMI_DEVID_ALS_ENABLE 0x00050001 /* Ambient Light Sensor */ >> #define ASUS_WMI_DEVID_BACKLIGHT 0x00050011 >> #define ASUS_WMI_DEVID_BRIGHTNESS 0x00050012 >> #define ASUS_WMI_DEVID_KBD_BACKLIGHT 0x00050021 > > Following this is: > > #define ASUS_WMI_DEVID_LIGHT_SENSOR 0x00050022 /* ?? */ > > Is there any relationship with this patch and that device? It would be useful to > understand the difference between these two DEVIDs (a comment in the source). I don't have this ID on my laptop. Hard to say what is it. > > Otherwise, I'm happy with the patch. > >> @@ -1730,6 +1731,7 @@ ASUS_WMI_CREATE_DEVICE_ATTR(touchpad, 0644, ASUS_WMI_DEVID_TOUCHPAD); >> ASUS_WMI_CREATE_DEVICE_ATTR(camera, 0644, ASUS_WMI_DEVID_CAMERA); >> ASUS_WMI_CREATE_DEVICE_ATTR(cardr, 0644, ASUS_WMI_DEVID_CARDREADER); >> ASUS_WMI_CREATE_DEVICE_ATTR(lid_resume, 0644, ASUS_WMI_DEVID_LID_RESUME); >> +ASUS_WMI_CREATE_DEVICE_ATTR(als_enable, 0644, ASUS_WMI_DEVID_ALS_ENABLE); >> >> static ssize_t store_cpufv(struct device *dev, struct device_attribute *attr, >> const char *buf, size_t count) >> @@ -1756,6 +1758,7 @@ static struct attribute *platform_attributes[] = { >> &dev_attr_cardr.attr, >> &dev_attr_touchpad.attr, >> &dev_attr_lid_resume.attr, >> + &dev_attr_als_enable.attr, >> NULL >> }; >> >> @@ -1776,6 +1779,8 @@ static umode_t asus_sysfs_is_visible(struct kobject *kobj, >> devid = ASUS_WMI_DEVID_TOUCHPAD; >> else if (attr == &dev_attr_lid_resume.attr) >> devid = ASUS_WMI_DEVID_LID_RESUME; >> + else if (attr == &dev_attr_als_enable.attr) >> + devid = ASUS_WMI_DEVID_ALS_ENABLE; >> >> if (devid != -1) >> ok = !(asus_wmi_get_devstate_simple(asus, devid) < 0); >> -- >> 2.5.0 >> >> >
ping Am 10.04.2016 um 05:06 schrieb Darren Hart: > On Fri, Apr 01, 2016 at 01:35:21PM +0200, Oleksij Rempel wrote: >> Asus Zenbook ux31a is providing ACPI0008 interface for ALS >> (Ambient Light Sensor), which is accessible for OS => Win 7. >> This sensor can be used with iio/acpi-als driver. >> Since it is disabled by default, we should use asus-wmi >> interface to enable it. >> > > Corentin, any concerns? > >> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> >> --- >> drivers/platform/x86/asus-wmi.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c >> index a96630d..a26dca3 100644 >> --- a/drivers/platform/x86/asus-wmi.c >> +++ b/drivers/platform/x86/asus-wmi.c >> @@ -114,6 +114,7 @@ MODULE_LICENSE("GPL"); >> #define ASUS_WMI_DEVID_LED6 0x00020016 >> >> /* Backlight and Brightness */ >> +#define ASUS_WMI_DEVID_ALS_ENABLE 0x00050001 /* Ambient Light Sensor */ >> #define ASUS_WMI_DEVID_BACKLIGHT 0x00050011 >> #define ASUS_WMI_DEVID_BRIGHTNESS 0x00050012 >> #define ASUS_WMI_DEVID_KBD_BACKLIGHT 0x00050021 > > Following this is: > > #define ASUS_WMI_DEVID_LIGHT_SENSOR 0x00050022 /* ?? */ > > Is there any relationship with this patch and that device? It would be useful to > understand the difference between these two DEVIDs (a comment in the source). > > Otherwise, I'm happy with the patch. > >> @@ -1730,6 +1731,7 @@ ASUS_WMI_CREATE_DEVICE_ATTR(touchpad, 0644, ASUS_WMI_DEVID_TOUCHPAD); >> ASUS_WMI_CREATE_DEVICE_ATTR(camera, 0644, ASUS_WMI_DEVID_CAMERA); >> ASUS_WMI_CREATE_DEVICE_ATTR(cardr, 0644, ASUS_WMI_DEVID_CARDREADER); >> ASUS_WMI_CREATE_DEVICE_ATTR(lid_resume, 0644, ASUS_WMI_DEVID_LID_RESUME); >> +ASUS_WMI_CREATE_DEVICE_ATTR(als_enable, 0644, ASUS_WMI_DEVID_ALS_ENABLE); >> >> static ssize_t store_cpufv(struct device *dev, struct device_attribute *attr, >> const char *buf, size_t count) >> @@ -1756,6 +1758,7 @@ static struct attribute *platform_attributes[] = { >> &dev_attr_cardr.attr, >> &dev_attr_touchpad.attr, >> &dev_attr_lid_resume.attr, >> + &dev_attr_als_enable.attr, >> NULL >> }; >> >> @@ -1776,6 +1779,8 @@ static umode_t asus_sysfs_is_visible(struct kobject *kobj, >> devid = ASUS_WMI_DEVID_TOUCHPAD; >> else if (attr == &dev_attr_lid_resume.attr) >> devid = ASUS_WMI_DEVID_LID_RESUME; >> + else if (attr == &dev_attr_als_enable.attr) >> + devid = ASUS_WMI_DEVID_ALS_ENABLE; >> >> if (devid != -1) >> ok = !(asus_wmi_get_devstate_simple(asus, devid) < 0); >> -- >> 2.5.0 >> >> >
On Tue, May 17, 2016 at 10:27:14PM +0200, Oleksij Rempel wrote:
> ping
Merged, thanks for the ping.
On Tue, Apr 12, 2016 at 7:10 PM, Oleksij Rempel <linux@rempel-privat.de> wrote: > > Am 10.04.2016 um 05:06 schrieb Darren Hart: > > On Fri, Apr 01, 2016 at 01:35:21PM +0200, Oleksij Rempel wrote: > >> Asus Zenbook ux31a is providing ACPI0008 interface for ALS > >> (Ambient Light Sensor), which is accessible for OS => Win 7. > >> This sensor can be used with iio/acpi-als driver. > >> Since it is disabled by default, we should use asus-wmi > >> interface to enable it. > >> > > > > Corentin, any concerns? > > > >> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> > >> --- > >> drivers/platform/x86/asus-wmi.c | 5 +++++ > >> 1 file changed, 5 insertions(+) > >> > >> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > >> index a96630d..a26dca3 100644 > >> --- a/drivers/platform/x86/asus-wmi.c > >> +++ b/drivers/platform/x86/asus-wmi.c > >> @@ -114,6 +114,7 @@ MODULE_LICENSE("GPL"); > >> #define ASUS_WMI_DEVID_LED6 0x00020016 > >> > >> /* Backlight and Brightness */ > >> +#define ASUS_WMI_DEVID_ALS_ENABLE 0x00050001 /* Ambient Light Sensor */ > >> #define ASUS_WMI_DEVID_BACKLIGHT 0x00050011 > >> #define ASUS_WMI_DEVID_BRIGHTNESS 0x00050012 > >> #define ASUS_WMI_DEVID_KBD_BACKLIGHT 0x00050021 > > > > Following this is: > > > > #define ASUS_WMI_DEVID_LIGHT_SENSOR 0x00050022 /* ?? */ > > > > Is there any relationship with this patch and that device? It would be useful to > > understand the difference between these two DEVIDs (a comment in the source). > > I don't have this ID on my laptop. Hard to say what is it. > I believe I found out this was somehow related to light sensors because the WMI device contained that kind of information, but it's likely that Asus didn't use this ID in a consistent way. > > > > > Otherwise, I'm happy with the patch. > > > >> @@ -1730,6 +1731,7 @@ ASUS_WMI_CREATE_DEVICE_ATTR(touchpad, 0644, ASUS_WMI_DEVID_TOUCHPAD); > >> ASUS_WMI_CREATE_DEVICE_ATTR(camera, 0644, ASUS_WMI_DEVID_CAMERA); > >> ASUS_WMI_CREATE_DEVICE_ATTR(cardr, 0644, ASUS_WMI_DEVID_CARDREADER); > >> ASUS_WMI_CREATE_DEVICE_ATTR(lid_resume, 0644, ASUS_WMI_DEVID_LID_RESUME); > >> +ASUS_WMI_CREATE_DEVICE_ATTR(als_enable, 0644, ASUS_WMI_DEVID_ALS_ENABLE); > >> > >> static ssize_t store_cpufv(struct device *dev, struct device_attribute *attr, > >> const char *buf, size_t count) > >> @@ -1756,6 +1758,7 @@ static struct attribute *platform_attributes[] = { > >> &dev_attr_cardr.attr, > >> &dev_attr_touchpad.attr, > >> &dev_attr_lid_resume.attr, > >> + &dev_attr_als_enable.attr, > >> NULL > >> }; > >> > >> @@ -1776,6 +1779,8 @@ static umode_t asus_sysfs_is_visible(struct kobject *kobj, > >> devid = ASUS_WMI_DEVID_TOUCHPAD; > >> else if (attr == &dev_attr_lid_resume.attr) > >> devid = ASUS_WMI_DEVID_LID_RESUME; > >> + else if (attr == &dev_attr_als_enable.attr) > >> + devid = ASUS_WMI_DEVID_ALS_ENABLE; > >> > >> if (devid != -1) > >> ok = !(asus_wmi_get_devstate_simple(asus, devid) < 0); > >> -- > >> 2.5.0 > >> > >> > > > > > -- > Regards, > Oleksij >
On Wed, May 25, 2016 at 09:08:25AM +0200, Corentin Chary wrote: > On Tue, Apr 12, 2016 at 7:10 PM, Oleksij Rempel <linux@rempel-privat.de> wrote: > > > > Am 10.04.2016 um 05:06 schrieb Darren Hart: > > > On Fri, Apr 01, 2016 at 01:35:21PM +0200, Oleksij Rempel wrote: > > >> Asus Zenbook ux31a is providing ACPI0008 interface for ALS > > >> (Ambient Light Sensor), which is accessible for OS => Win 7. > > >> This sensor can be used with iio/acpi-als driver. > > >> Since it is disabled by default, we should use asus-wmi > > >> interface to enable it. > > >> > > > > > > Corentin, any concerns? > > > > > >> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> > > >> --- > > >> drivers/platform/x86/asus-wmi.c | 5 +++++ > > >> 1 file changed, 5 insertions(+) > > >> > > >> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > > >> index a96630d..a26dca3 100644 > > >> --- a/drivers/platform/x86/asus-wmi.c > > >> +++ b/drivers/platform/x86/asus-wmi.c > > >> @@ -114,6 +114,7 @@ MODULE_LICENSE("GPL"); > > >> #define ASUS_WMI_DEVID_LED6 0x00020016 > > >> > > >> /* Backlight and Brightness */ > > >> +#define ASUS_WMI_DEVID_ALS_ENABLE 0x00050001 /* Ambient Light Sensor */ > > >> #define ASUS_WMI_DEVID_BACKLIGHT 0x00050011 > > >> #define ASUS_WMI_DEVID_BRIGHTNESS 0x00050012 > > >> #define ASUS_WMI_DEVID_KBD_BACKLIGHT 0x00050021 > > > > > > Following this is: > > > > > > #define ASUS_WMI_DEVID_LIGHT_SENSOR 0x00050022 /* ?? */ > > > > > > Is there any relationship with this patch and that device? It would be useful to > > > understand the difference between these two DEVIDs (a comment in the source). > > > > I don't have this ID on my laptop. Hard to say what is it. > > > > I believe I found out this was somehow related to light sensors > because the WMI device contained that kind of information, but it's > likely that Asus didn't use this ID in a consistent way. Thanks for the follow-up. This one is already queued for 4.7.
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c index a96630d..a26dca3 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c @@ -114,6 +114,7 @@ MODULE_LICENSE("GPL"); #define ASUS_WMI_DEVID_LED6 0x00020016 /* Backlight and Brightness */ +#define ASUS_WMI_DEVID_ALS_ENABLE 0x00050001 /* Ambient Light Sensor */ #define ASUS_WMI_DEVID_BACKLIGHT 0x00050011 #define ASUS_WMI_DEVID_BRIGHTNESS 0x00050012 #define ASUS_WMI_DEVID_KBD_BACKLIGHT 0x00050021 @@ -1730,6 +1731,7 @@ ASUS_WMI_CREATE_DEVICE_ATTR(touchpad, 0644, ASUS_WMI_DEVID_TOUCHPAD); ASUS_WMI_CREATE_DEVICE_ATTR(camera, 0644, ASUS_WMI_DEVID_CAMERA); ASUS_WMI_CREATE_DEVICE_ATTR(cardr, 0644, ASUS_WMI_DEVID_CARDREADER); ASUS_WMI_CREATE_DEVICE_ATTR(lid_resume, 0644, ASUS_WMI_DEVID_LID_RESUME); +ASUS_WMI_CREATE_DEVICE_ATTR(als_enable, 0644, ASUS_WMI_DEVID_ALS_ENABLE); static ssize_t store_cpufv(struct device *dev, struct device_attribute *attr, const char *buf, size_t count) @@ -1756,6 +1758,7 @@ static struct attribute *platform_attributes[] = { &dev_attr_cardr.attr, &dev_attr_touchpad.attr, &dev_attr_lid_resume.attr, + &dev_attr_als_enable.attr, NULL }; @@ -1776,6 +1779,8 @@ static umode_t asus_sysfs_is_visible(struct kobject *kobj, devid = ASUS_WMI_DEVID_TOUCHPAD; else if (attr == &dev_attr_lid_resume.attr) devid = ASUS_WMI_DEVID_LID_RESUME; + else if (attr == &dev_attr_als_enable.attr) + devid = ASUS_WMI_DEVID_ALS_ENABLE; if (devid != -1) ok = !(asus_wmi_get_devstate_simple(asus, devid) < 0);
Asus Zenbook ux31a is providing ACPI0008 interface for ALS (Ambient Light Sensor), which is accessible for OS => Win 7. This sensor can be used with iio/acpi-als driver. Since it is disabled by default, we should use asus-wmi interface to enable it. Signed-off-by: Oleksij Rempel <linux@rempel-privat.de> --- drivers/platform/x86/asus-wmi.c | 5 +++++ 1 file changed, 5 insertions(+)