All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Add sysfs interface for touchpad state
@ 2017-01-30 10:57 Ritesh Raj Sarraf
  2017-01-30 20:25 ` Andy Shevchenko
  0 siblings, 1 reply; 11+ messages in thread
From: Ritesh Raj Sarraf @ 2017-01-30 10:57 UTC (permalink / raw)
  To: platform-driver-x86; +Cc: Ritesh Raj Sarraf

Lenovo Yoga (many variants: Yoga, Yoga2 Pro, Yoga2 13, Yoga3 Pro, Yoga 3
14 etc) has multiple modles that are a hybrid laptop, working in laptop
mode as well as tablet mode.

There is no interface available to query the physical state of these
devices. Also, from the driver, it doesn't look to be having an EC
command to get that information from the acpi driver.

When in tablet mode, the hardware keyboard and touchpad get disabled.
This could be one sub-optimal way to assume that under such condition
(touchpad disabled) the machine is in Tablet-Mode. Other than this, I've
not come across another way to determine the physical state of the
hardware.

Currently, some of the hardware status is provided through debugfs,
which is useless for unprivileged processes. (This already has many
broken reports: radio and wifi, which are active/on as I write this)

root@learner:/sys/kernel/debug# cat ideapad/status
Backlight max:	16
Backlight now:	3
BL power value:	On
=====================
Radio status:	Off(0)
Wifi status:	Off(0)
BT status:	Off(0)
3G status:	Off(0)
=====================
Touchpad status:On(1)
SW_TABLET_MODE:	Off(0)
Camera status:	On(1)

This patch adds a sysfs interface for unprivileged process access under:
/sys/bus/platform/devices/VPC2004\:00/touchpad_state

rrs@learner:/sys/bus/platform/devices/VPC2004:00$ cat touchpad_state
1
2017-01-30 / 16:12:00 ♒♒♒  ☺
rrs@learner:/sys/bus/platform/devices/VPC2004:00$ cat touchpad_state
0
2017-01-30 / 16:12:06 ♒♒♒  ☺

Signed-off-by: Ritesh Raj Sarraf <rrs@debian.org>
---
 drivers/platform/x86/ideapad-laptop.c | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
index a7614fc542b5..3a1622ef2f45 100644
--- a/drivers/platform/x86/ideapad-laptop.c
+++ b/drivers/platform/x86/ideapad-laptop.c
@@ -423,9 +423,33 @@ static ssize_t store_ideapad_fan(struct device *dev,
 
 static DEVICE_ATTR(fan_mode, 0644, show_ideapad_fan, store_ideapad_fan);
 
+
+static ssize_t show_touchpad_state(struct device *dev,
+				struct device_attribute *attr,
+				char *buf)
+{
+	unsigned long result;
+	struct ideapad_private *priv = dev_get_drvdata(dev);
+
+	if (read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &result))
+		return sprintf(buf, "-1\n");
+	return sprintf(buf, "%lu\n", result);
+}
+
+static ssize_t store_touchpad_state(struct device *dev,
+				 struct device_attribute *attr,
+				 const char *buf, size_t count)
+{
+        /* Don't enable writing here */
+        return -1;
+}
+
+static DEVICE_ATTR(touchpad_state, 0644, show_touchpad_state, store_touchpad_state);
+
 static struct attribute *ideapad_attributes[] = {
 	&dev_attr_camera_power.attr,
 	&dev_attr_fan_mode.attr,
+	&dev_attr_touchpad_state.attr,
 	NULL
 };
 
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-01-30 10:57 [PATCH] Add sysfs interface for touchpad state Ritesh Raj Sarraf
@ 2017-01-30 20:25 ` Andy Shevchenko
  2017-01-31 11:47   ` Ritesh Raj Sarraf
  0 siblings, 1 reply; 11+ messages in thread
From: Andy Shevchenko @ 2017-01-30 20:25 UTC (permalink / raw)
  To: Ritesh Raj Sarraf; +Cc: Platform Driver

On Mon, Jan 30, 2017 at 12:57 PM, Ritesh Raj Sarraf <rrs@debian.org> wrote:
> Lenovo Yoga (many variants: Yoga, Yoga2 Pro, Yoga2 13, Yoga3 Pro, Yoga 3
> 14 etc) has multiple modles that are a hybrid laptop, working in laptop
> mode as well as tablet mode.

The main question is who is the initiator of the mode change? Do you
need to do anything in UI to prepare OS for such switch?

> There is no interface available to query the physical state of these
> devices. Also, from the driver, it doesn't look to be having an EC
> command to get that information from the acpi driver.
>
> When in tablet mode, the hardware keyboard and touchpad get disabled.
> This could be one sub-optimal way to assume that under such condition
> (touchpad disabled) the machine is in Tablet-Mode. Other than this, I've
> not come across another way to determine the physical state of the
> hardware.
>
> Currently, some of the hardware status is provided through debugfs,
> which is useless for unprivileged processes. (This already has many
> broken reports: radio and wifi, which are active/on as I write this)

This should be fixed.

> root@learner:/sys/kernel/debug# cat ideapad/status
> Backlight max:  16
> Backlight now:  3
> BL power value: On
> =====================
> Radio status:   Off(0)
> Wifi status:    Off(0)
> BT status:      Off(0)
> 3G status:      Off(0)
> =====================
> Touchpad status:On(1)
> SW_TABLET_MODE: Off(0)
> Camera status:  On(1)
>
> This patch adds a sysfs interface for unprivileged process access under:
> /sys/bus/platform/devices/VPC2004\:00/touchpad_state
>
> rrs@learner:/sys/bus/platform/devices/VPC2004:00$ cat touchpad_state
> 1
> 2017-01-30 / 16:12:00 ♒♒♒  ☺
> rrs@learner:/sys/bus/platform/devices/VPC2004:00$ cat touchpad_state
> 0
> 2017-01-30 / 16:12:06 ♒♒♒  ☺

You introduce an ABI without documenting it.

>
> Signed-off-by: Ritesh Raj Sarraf <rrs@debian.org>
> ---
>  drivers/platform/x86/ideapad-laptop.c | 24 ++++++++++++++++++++++++
>  1 file changed, 24 insertions(+)
>
> diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
> index a7614fc542b5..3a1622ef2f45 100644
> --- a/drivers/platform/x86/ideapad-laptop.c
> +++ b/drivers/platform/x86/ideapad-laptop.c
> @@ -423,9 +423,33 @@ static ssize_t store_ideapad_fan(struct device *dev,
>
>  static DEVICE_ATTR(fan_mode, 0644, show_ideapad_fan, store_ideapad_fan);
>
> +
> +static ssize_t show_touchpad_state(struct device *dev,
> +                               struct device_attribute *attr,
> +                               char *buf)
> +{
> +       unsigned long result;
> +       struct ideapad_private *priv = dev_get_drvdata(dev);
> +
> +       if (read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &result))

> +               return sprintf(buf, "-1\n");

That is bad. Return the error code what read_ec_data() returns. If it
is not suitable convert it here.

> +       return sprintf(buf, "%lu\n", result);

> +}
> +
> +static ssize_t store_touchpad_state(struct device *dev,
> +                                struct device_attribute *attr,
> +                                const char *buf, size_t count)
> +{
> +        /* Don't enable writing here */
> +        return -1;

And why you can't just drop this completely?

> +}
> +
> +static DEVICE_ATTR(touchpad_state, 0644, show_touchpad_state, store_touchpad_state);
> +
>  static struct attribute *ideapad_attributes[] = {
>         &dev_attr_camera_power.attr,
>         &dev_attr_fan_mode.attr,
> +       &dev_attr_touchpad_state.attr,

Is it really state, btw? Reading your commit message I would assume
this is also "mode" for touchpad.

>         NULL
>  };

-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-01-30 20:25 ` Andy Shevchenko
@ 2017-01-31 11:47   ` Ritesh Raj Sarraf
  2017-02-01 11:25     ` Andy Shevchenko
  0 siblings, 1 reply; 11+ messages in thread
From: Ritesh Raj Sarraf @ 2017-01-31 11:47 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Platform Driver


[-- Attachment #1.1: Type: text/plain, Size: 4660 bytes --]

Hello Andy,

On Mon, 2017-01-30 at 22:25 +0200, Andy Shevchenko wrote:
> On Mon, Jan 30, 2017 at 12:57 PM, Ritesh Raj Sarraf <rrs@debian.org> wrote:
> > Lenovo Yoga (many variants: Yoga, Yoga2 Pro, Yoga2 13, Yoga3 Pro, Yoga 3
> > 14 etc) has multiple modles that are a hybrid laptop, working in laptop
> > mode as well as tablet mode.
> 
> The main question is who is the initiator of the mode change? Do you
> need to do anything in UI to prepare OS for such switch?
> 

The human user is the only initiator. The hardware has 360 degree rotation.
There is nothing special needed in the UI, or the OS, to get into tablet mode.
Just flip the hardware 360 degree into tablet mode.

More details on the hardware series can be found at:
http://shop.lenovo.com/us/en/laptops/lenovo/yoga-laptop-series/yoga-laptop-2-13/


> > There is no interface available to query the physical state of these
> > devices. Also, from the driver, it doesn't look to be having an EC
> > command to get that information from the acpi driver.
> > 
> > When in tablet mode, the hardware keyboard and touchpad get disabled.
> > This could be one sub-optimal way to assume that under such condition
> > (touchpad disabled) the machine is in Tablet-Mode. Other than this, I've
> > not come across another way to determine the physical state of the
> > hardware.
> > 
> > Currently, some of the hardware status is provided through debugfs,
> > which is useless for unprivileged processes. (This already has many
> > broken reports: radio and wifi, which are active/on as I write this)
> 
> This should be fixed.
> 

Thanks.

> > This patch adds a sysfs interface for unprivileged process access under:
> > /sys/bus/platform/devices/VPC2004\:00/touchpad_state
> > 
> > rrs@learner:/sys/bus/platform/devices/VPC2004:00$ cat touchpad_state
> > 1
> > 2017-01-30 / 16:12:00 ♒♒♒  ☺
> > rrs@learner:/sys/bus/platform/devices/VPC2004:00$ cat touchpad_state
> > 0
> > 2017-01-30 / 16:12:06 ♒♒♒  ☺
> 
> You introduce an ABI without documenting it.
> 

Sorry about that. I am no kernel developer, just wanting to fix my hardware.

I looked into the doc. The documentation mentions the sysfs path:
'/sys/devices/platform/ideapad/fan_mode', which is what we would also want to
use.

But the driver only shows the interface through:
'/sys/devices/platform/devices/VPC2004:00/'

Is this an expected behavior ?

> > 
> > 
> > +
> > +static ssize_t show_touchpad_state(struct device *dev,
> > +                               struct device_attribute *attr,
> > +                               char *buf)
> > +{
> > +       unsigned long result;
> > +       struct ideapad_private *priv = dev_get_drvdata(dev);
> > +
> > +       if (read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &result))
> > +               return sprintf(buf, "-1\n");
> 
> That is bad. Return the error code what read_ec_data() returns. If it
> is not suitable convert it here.
> 

All that read_ec_data() can return are 0 and -1.

The other 2 consumers, show_ideapad_cam() and show_ideapad_fan() are doing the
same. 

> > +       return sprintf(buf, "%lu\n", result);
> > +}
> > +
> > +static ssize_t store_touchpad_state(struct device *dev,
> > +                                struct device_attribute *attr,
> > +                                const char *buf, size_t count)
> > +{
> > +        /* Don't enable writing here */
> > +        return -1;
> 
> And why you can't just drop this completely?
> 

I did that. But it was failing to build. But anyways, please see my revised
patch along with write support.

> > +}
> > +
> > +static DEVICE_ATTR(touchpad_state, 0644, show_touchpad_state,
> > store_touchpad_state);
> > +
> >  static struct attribute *ideapad_attributes[] = {
> >         &dev_attr_camera_power.attr,
> >         &dev_attr_fan_mode.attr,
> > +       &dev_attr_touchpad_state.attr,
> 
> Is it really state, btw? Reading your commit message I would assume
> this is also "mode" for touchpad.
> 

Actually, yes. It'd be better to have it as a mode, along with allowing to
write. That way it will be consistent with the other 2 (cam and fan) interfaces.

Please find attached revised patch along with write support and ABI
Documentation changes.

Thanks,
Ritesh

-- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System

[-- Attachment #1.2: 0001-Add-sysfs-interface-for-touchpad-state.patch --]
[-- Type: text/x-patch, Size: 3495 bytes --]

From 8a3980bb15e31a5c17e7541bc60cbe4bc56bf604 Mon Sep 17 00:00:00 2001
From: Ritesh Raj Sarraf <rrs@debian.org>
Date: Mon, 30 Jan 2017 15:05:48 +0530
Subject: [PATCH] Add sysfs interface for touchpad state
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Lenovo Yoga (many variants: Yoga, Yoga2 Pro, Yoga2 13, Yoga3 Pro, Yoga 3
14 etc) has multiple modles that are a hybrid laptop, working in laptop
mode as well as tablet mode.

This patch adds a sysfs interface for read/write access under:
/sys/bus/platform/devices/VPC2004\:00/touchpad_mode

rrs@learner:~$ cat /sys/bus/platform/devices/VPC2004\:00/touchpad_mode
1
2017-01-31 / 16:58:46 ♒♒♒  ☺
rrs@learner:~$ su
Password:
root@learner:/home/rrs# echo 0 > /sys/bus/platform/devices/VPC2004\:00/touchpad_mode
root@learner:/home/rrs# cat  /sys/bus/platform/devices/VPC2004\:00/touchpad_mode
0
root@learner:/home/rrs# echo 1 > /sys/bus/platform/devices/VPC2004\:00/touchpad_mode
root@learner:/home/rrs# cat  /sys/bus/platform/devices/VPC2004\:00/touchpad_mode
1
root@learner:/home/rrs# exit
2017-01-31 / 16:59:26 ♒♒♒  ☺
rrs@learner:~$

Enable write. Change name to _mode

Update ABI documentation for ideapad-laptop

Signed-off-by: Ritesh Raj Sarraf <rrs@debian.org>
---
 .../ABI/testing/sysfs-platform-ideapad-laptop      |  9 ++++++
 drivers/platform/x86/ideapad-laptop.c              | 33 ++++++++++++++++++++++
 2 files changed, 42 insertions(+)

diff --git a/Documentation/ABI/testing/sysfs-platform-ideapad-laptop b/Documentation/ABI/testing/sysfs-platform-ideapad-laptop
index b31e782bd985..401e37e5acbd 100644
--- a/Documentation/ABI/testing/sysfs-platform-ideapad-laptop
+++ b/Documentation/ABI/testing/sysfs-platform-ideapad-laptop
@@ -17,3 +17,12 @@ Description:
 			* 2 -> Dust Cleaning
 			* 4 -> Efficient Thermal Dissipation Mode
 
+What:		/sys/devices/platform/ideapad/touchpad_mode
+Date:		Jan 2017
+KernelVersion:	4.11
+Contact:	"Ritesh Raj Sarraf <rrs@debian.org>"
+Description:
+		Control touchpad mode.
+                        * 1 -> Switched On
+                        * 0 -> Switched Off
+
diff --git a/drivers/platform/x86/ideapad-laptop.c b/drivers/platform/x86/ideapad-laptop.c
index a7614fc542b5..e612e0764ba6 100644
--- a/drivers/platform/x86/ideapad-laptop.c
+++ b/drivers/platform/x86/ideapad-laptop.c
@@ -423,9 +423,42 @@ static ssize_t store_ideapad_fan(struct device *dev,
 
 static DEVICE_ATTR(fan_mode, 0644, show_ideapad_fan, store_ideapad_fan);
 
+
+static ssize_t show_touchpad_mode(struct device *dev,
+				struct device_attribute *attr,
+				char *buf)
+{
+	unsigned long result;
+	struct ideapad_private *priv = dev_get_drvdata(dev);
+
+	if (read_ec_data(priv->adev->handle, VPCCMD_R_TOUCHPAD, &result))
+		return sprintf(buf, "-1\n");
+	return sprintf(buf, "%lu\n", result);
+}
+
+static ssize_t store_touchpad_mode(struct device *dev,
+				 struct device_attribute *attr,
+				 const char *buf, size_t count)
+{
+	int ret, state;
+	struct ideapad_private *priv = dev_get_drvdata(dev);
+
+	if (!count)
+		return 0;
+	if (sscanf(buf, "%i", &state) != 1)
+		return -EINVAL;
+	ret = write_ec_cmd(priv->adev->handle, VPCCMD_W_TOUCHPAD, state);
+	if (ret < 0)
+		return -EIO;
+	return count;
+}
+
+static DEVICE_ATTR(touchpad_mode, 0644, show_touchpad_mode, store_touchpad_mode);
+
 static struct attribute *ideapad_attributes[] = {
 	&dev_attr_camera_power.attr,
 	&dev_attr_fan_mode.attr,
+	&dev_attr_touchpad_mode.attr,
 	NULL
 };
 
-- 
2.11.0


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-01-31 11:47   ` Ritesh Raj Sarraf
@ 2017-02-01 11:25     ` Andy Shevchenko
  2017-02-01 14:26       ` Ritesh Raj Sarraf
  0 siblings, 1 reply; 11+ messages in thread
From: Andy Shevchenko @ 2017-02-01 11:25 UTC (permalink / raw)
  To: Ritesh Raj Sarraf; +Cc: Platform Driver

On Tue, Jan 31, 2017 at 1:47 PM, Ritesh Raj Sarraf <rrs@debian.org> wrote:
> Hello Andy,
>
> On Mon, 2017-01-30 at 22:25 +0200, Andy Shevchenko wrote:
>> On Mon, Jan 30, 2017 at 12:57 PM, Ritesh Raj Sarraf <rrs@debian.org> wrote:
>> > Lenovo Yoga (many variants: Yoga, Yoga2 Pro, Yoga2 13, Yoga3 Pro, Yoga 3
>> > 14 etc) has multiple modles that are a hybrid laptop, working in laptop
>> > mode as well as tablet mode.
>>
>> The main question is who is the initiator of the mode change? Do you
>> need to do anything in UI to prepare OS for such switch?
>>
>
> The human user is the only initiator. The hardware has 360 degree rotation.
> There is nothing special needed in the UI, or the OS, to get into tablet mode.
> Just flip the hardware 360 degree into tablet mode.
>
> More details on the hardware series can be found at:
> http://shop.lenovo.com/us/en/laptops/lenovo/yoga-laptop-series/yoga-laptop-2-13/

We have Yoga 900 here and I just played with it.
So, can you do the following:
1. Boot system to a text mode (no X).
2. Be sure that ideapad_lenovo module is loaded
3. By looking into output of
% ls -l /sys/class/input
find VPC2004 related *event* number (/.../eventX/...)
4. Run
% od -x /dev/input/eventX
5. Ensure that you get events (hex dump) when you bend the cover.

We can continue after you try the above.

> Sorry about that. I am no kernel developer, just wanting to fix my hardware.
>
> I looked into the doc. The documentation mentions the sysfs path:
> '/sys/devices/platform/ideapad/fan_mode', which is what we would also want to
> use.
>
> But the driver only shows the interface through:
> '/sys/devices/platform/devices/VPC2004:00/'
>
> Is this an expected behavior ?

Driver is old, perhaps it's not fixed part, perhaps it's by design.

> Please find attached revised patch along with write support and ABI
> Documentation changes.

Next time please avoid attachments here.

-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-01 11:25     ` Andy Shevchenko
@ 2017-02-01 14:26       ` Ritesh Raj Sarraf
  2017-02-01 15:07         ` Andy Shevchenko
  0 siblings, 1 reply; 11+ messages in thread
From: Ritesh Raj Sarraf @ 2017-02-01 14:26 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Platform Driver

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On Wed, 2017-02-01 at 13:25 +0200, Andy Shevchenko wrote:
> We have Yoga 900 here and I just played with it.
> So, can you do the following:
> 1. Boot system to a text mode (no X).
> 2. Be sure that ideapad_lenovo module is loaded
> 3. By looking into output of
> % ls -l /sys/class/input
> find VPC2004 related *event* number (/.../eventX/...)
> 4. Run
> % od -x /dev/input/eventX
> 5. Ensure that you get events (hex dump) when you bend the cover.
> 
> We can continue after you try the above.
> 

Fantastic. In that case, I hope you can help enable SW_TABLET_MODE for ideapad
driver too.

Here's what you asked for:

root@learner:/sys/class/input# ls * -l
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event0 -> ../../devices/platform/i8042/serio0/input/input0/event0
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event1 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:01/PNP0C0C:00/input/input3/event1
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event10 -> ../../devices/pci0000:00/0000:00:1b.0/sound/card1/input12/event10
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event11 -> ../../devices/pci0000:00/0000:00:03.0/sound/card0/input13/event11
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event12 -> ../../devices/pci0000:00/0000:00:03.0/sound/card0/input14/event12
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event13 -> ../../devices/pci0000:00/0000:00:03.0/sound/card0/input15/event13
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event14 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-6/2-6:1.0/input/input16/event14
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event15 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/0003:04F3:0303.0001/input/input17/event15
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event2 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:01/PNP0C0D:00/input/input4/event2
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event3 -> ../../devices/LNXSYSTM:00/LNXPWRBN:00/input/input5/event3
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event4 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input7/event4
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event5 -> ../../devices/platform/i8042/serio1/input/input6/event5
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event6 -> ../../devices/pci0000:00/0000:00:1f.0/PNP0C09:00/VPC2004:00/input/input8/event6
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event7 -> ../../devices/platform/pcspkr/input/input9/event7
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event8 -> ../../devices/pci0000:00/0000:00:1b.0/sound/card1/input10/event8
lrwxrwxrwx 1 root root 0 Feb  1 19:33 event9 -> ../../devices/pci0000:00/0000:00:1b.0/sound/card1/input11/event9
lrwxrwxrwx 1 root root 0 Feb  1 19:32 input0 -> ../../devices/platform/i8042/serio0/input/input0
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input10 -> ../../devices/pci0000:00/0000:00:1b.0/sound/card1/input10
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input11 -> ../../devices/pci0000:00/0000:00:1b.0/sound/card1/input11
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input12 -> ../../devices/pci0000:00/0000:00:1b.0/sound/card1/input12
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input13 -> ../../devices/pci0000:00/0000:00:03.0/sound/card0/input13
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input14 -> ../../devices/pci0000:00/0000:00:03.0/sound/card0/input14
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input15 -> ../../devices/pci0000:00/0000:00:03.0/sound/card0/input15
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input16 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-6/2-6:1.0/input/input16
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input17 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/0003:04F3:0303.0001/input/input17
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input3 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:01/PNP0C0C:00/input/input3
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input4 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:01/PNP0C0D:00/input/input4
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input5 -> ../../devices/LNXSYSTM:00/LNXPWRBN:00/input/input5
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input6 -> ../../devices/platform/i8042/serio1/input/input6
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input7 -> ../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input7
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input8 -> ../../devices/pci0000:00/0000:00:1f.0/PNP0C09:00/VPC2004:00/input/input8
lrwxrwxrwx 1 root root 0 Feb  1 19:33 input9 -> ../../devices/platform/pcspkr/input/input9
lrwxrwxrwx 1 root root 0 Feb  1 19:33 mice -> ../../devices/virtual/input/mice
lrwxrwxrwx 1 root root 0 Feb  1 19:33 mouse0 -> ../../devices/platform/i8042/serio1/input/input6/mouse0
lrwxrwxrwx 1 root root 0 Feb  1 19:33 mouse1 -> ../../devices/pci0000:00/0000:00:14.0/usb2/2-5/2-5:1.0/0003:04F3:0303.0001/input/input17/mouse1


root@learner:/sys/class/input# od -x /dev/input/event6
?0000000 ee33 5891 0000 0000 2bd9 0005 0000 0000
^@0000020 0004 0004 0042 0000 ee33 5891 0000 0000
0000040 2bd9 0005 0000 0000 0001 00c1 0001 0000
0000060 ee33 5891 0000 0000 2bd9 0005 0000 0000
0000100 0000 0000 0000 0000 ee33 5891 0000 0000
0000120 2c09 0005 0000 0000 0001 00c1 0000 0000
0000140 ee33 5891 0000 0000 2c09 0005 0000 0000
0000160 0000 0000 0000 0000 ee37 5891 0000 0000
0000200 3d7e 000f 0000 0000 0004 0004 0043 0000
0000220 ee37 5891 0000 0000 3d7e 000f 0000 0000
0000240 0001 00c0 0001 0000 ee37 5891 0000 0000
0000260 3d7e 000f 0000 0000 0000 0000 0000 0000
0000300 ee37 5891 0000 0000 3dae 000f 0000 0000
0000320 0001 00c0 0000 0000 ee37 5891 0000 0000
0000340 3dae 000f 0000 0000 0000 0000 0000 0000



> > Sorry about that. I am no kernel developer, just wanting to fix my hardware.
> > 
> > I looked into the doc. The documentation mentions the sysfs path:
> > '/sys/devices/platform/ideapad/fan_mode', which is what we would also want
> > to
> > use.
> > 
> > But the driver only shows the interface through:
> > '/sys/devices/platform/devices/VPC2004:00/'
> > 
> > Is this an expected behavior ?
> 
> Driver is old, perhaps it's not fixed part, perhaps it's by design.
> 
> > Please find attached revised patch along with write support and ABI
> > Documentation changes.
> 
> Next time please avoid attachments here.

Okay. I'll figure out how to do that. By the way, does the patch make sense for
inclusion ? To have an interface for touchpad mode ?

- -- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEQCVDstmIVAB/Yn02pjpYo/LhdWkFAliR8DMACgkQpjpYo/Lh
dWkhlQ/+LAY58rMdSVlJNFFnK0/CyUuSn5vBu8JQF2xN6tSAQuTyFq3i0HfrR0/d
h44rf1RNpTpljwxvvnKtDiwiInF+u7vtCU+CbMxbqMdruf0cAX1k6O27Cup78yLu
9Ht2tuZyID5zTb0mXUFGjSo2sEwRCZXhHPpiiyQlksTlY+CcqJTUWQgENvyF0bkX
2r2pBQAZo69eiZjpuqp0D6DZV6CNVjuh1EWN2f/DC+05KfvIp8es3wfr35/K9BfH
pyi2geOZ4yzOiUPPferW/TXNIWKrm2GRiWzpa8GnEHfLWMMWeRT/xYq3KviXzRbq
Hr5wDDkDnLZtc0J7pEX+8M1ycpyLKOiJ65ZQl/erRtU/u8Ji7Xjrhtn3hRIQO9fh
SiizDRPlJ3nlcnKPlTGe4M2/3yZ+idEup+ttFR6DdELeOA9IYiGJMu9OMaHonmuo
r2jZ0sn+2KuwPge/A9jI3pyAhjKypJ0p+0/+u1y6bglrjaGoh4llcOqBW3gMi69N
dR5GiPCXwHxXb16rFM3Hwy7MgEBxgXtn72Q3ThOUotuh8Z6ramYOldtMGFO/Deco
b147oQtpGmXVmPamqrDdf4z+HqBwRgj9SJ0mtwmi3U7mcpv5LWZcOSImkp8uKx52
bCKGLaakiSYUhP3KZ07d+DyhF4tfCPBSV2Jn3CCwtb1ZKhO0sTk=
=IETm
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-01 14:26       ` Ritesh Raj Sarraf
@ 2017-02-01 15:07         ` Andy Shevchenko
  2017-02-01 16:17           ` Ritesh Raj Sarraf
  0 siblings, 1 reply; 11+ messages in thread
From: Andy Shevchenko @ 2017-02-01 15:07 UTC (permalink / raw)
  To: Ritesh Raj Sarraf; +Cc: Platform Driver

On Wed, Feb 1, 2017 at 4:26 PM, Ritesh Raj Sarraf <rrs@debian.org> wrote:
> On Wed, 2017-02-01 at 13:25 +0200, Andy Shevchenko wrote:
>> We have Yoga 900 here and I just played with it.
>> So, can you do the following:
>> 1. Boot system to a text mode (no X).
>> 2. Be sure that ideapad_lenovo module is loaded
>> 3. By looking into output of
>> % ls -l /sys/class/input
>> find VPC2004 related *event* number (/.../eventX/...)
>> 4. Run
>> % od -x /dev/input/eventX
>> 5. Ensure that you get events (hex dump) when you bend the cover.
>>
>> We can continue after you try the above.
>>
>
> Fantastic. In that case, I hope you can help enable SW_TABLET_MODE for ideapad
> driver too.
>
> Here's what you asked for:

> lrwxrwxrwx 1 root root 0 Feb  1 19:33 event6 -> ../../devices/pci0000:00/0000:00:1f.0/PNP0C09:00/VPC2004:00/input/input8/event6

> root@learner:/sys/class/input# od -x /dev/input/event6
> ?0000000 ee33 5891 0000 0000 2bd9 0005 0000 0000
> ^@0000020 0004 0004 0042 0000 ee33 5891 0000 0000
> 0000040 2bd9 0005 0000 0000 0001 00c1 0001 0000
> 0000060 ee33 5891 0000 0000 2bd9 0005 0000 0000
> 0000100 0000 0000 0000 0000 ee33 5891 0000 0000
> 0000120 2c09 0005 0000 0000 0001 00c1 0000 0000
> 0000140 ee33 5891 0000 0000 2c09 0005 0000 0000
> 0000160 0000 0000 0000 0000 ee37 5891 0000 0000
> 0000200 3d7e 000f 0000 0000 0004 0004 0043 0000
> 0000220 ee37 5891 0000 0000 3d7e 000f 0000 0000
> 0000240 0001 00c0 0001 0000 ee37 5891 0000 0000
> 0000260 3d7e 000f 0000 0000 0000 0000 0000 0000
> 0000300 ee37 5891 0000 0000 3dae 000f 0000 0000
> 0000320 0001 00c0 0000 0000 ee37 5891 0000 0000
> 0000340 3dae 000f 0000 0000 0000 0000 0000 0000

So, the whole idea of this exercise is to show that driver sends an
event whenever you bend / unbend the cover.
User space already will know what is the state of the cover.

> By the way, does the patch make sense for
> inclusion ? To have an interface for touchpad mode ?

The question now is why do you need that on top of existing event?

-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-01 15:07         ` Andy Shevchenko
@ 2017-02-01 16:17           ` Ritesh Raj Sarraf
  2017-02-01 20:53             ` Andy Shevchenko
  0 siblings, 1 reply; 11+ messages in thread
From: Ritesh Raj Sarraf @ 2017-02-01 16:17 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Platform Driver

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On Wed, 2017-02-01 at 17:07 +0200, Andy Shevchenko wrote:
> > root@learner:/sys/class/input# od -x /dev/input/event6
> > ?0000000 ee33 5891 0000 0000 2bd9 0005 0000 0000
> > ^@0000020 0004 0004 0042 0000 ee33 5891 0000 0000
> > 0000040 2bd9 0005 0000 0000 0001 00c1 0001 0000
> > 0000060 ee33 5891 0000 0000 2bd9 0005 0000 0000
> > 0000100 0000 0000 0000 0000 ee33 5891 0000 0000
> > 0000120 2c09 0005 0000 0000 0001 00c1 0000 0000
> > 0000140 ee33 5891 0000 0000 2c09 0005 0000 0000
> > 0000160 0000 0000 0000 0000 ee37 5891 0000 0000
> > 0000200 3d7e 000f 0000 0000 0004 0004 0043 0000
> > 0000220 ee37 5891 0000 0000 3d7e 000f 0000 0000
> > 0000240 0001 00c0 0001 0000 ee37 5891 0000 0000
> > 0000260 3d7e 000f 0000 0000 0000 0000 0000 0000
> > 0000300 ee37 5891 0000 0000 3dae 000f 0000 0000
> > 0000320 0001 00c0 0000 0000 ee37 5891 0000 0000
> > 0000340 3dae 000f 0000 0000 0000 0000 0000 0000
> 
> So, the whole idea of this exercise is to show that driver sends an
> event whenever you bend / unbend the cover.
> User space already will know what is the state of the cover.
> 

Yes. But we've not found the interface in sysfs where we could read that from.
Nor did udev report anything meaningful for it.

> > By the way, does the patch make sense for
> > inclusion ? To have an interface for touchpad mode ?
> 
> The question now is why do you need that on top of existing event?

If you have time, please see:
https://bugs.launchpad.net/bugs/1366421

It has pretty much all the details on what and why we need something in sysfs.

For HP and ThinkPad, there already are interfaces available.

/sys/devices/platform/hp-wmi/tablet
/sys/devices/platform/thinkpad_acpi/hotkey_tablet_mode

It'd be nice to see the same for Yoga IdeaPad; a proper interface for tablet-
mode.

- -- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEQCVDstmIVAB/Yn02pjpYo/LhdWkFAliSChYACgkQpjpYo/Lh
dWm/LhAAitvcaPzR2fUR6gtlxMLOQDTEPA8rjQdVmIBFLYPV9OTyJPkjz9V0aZlR
S4BcGa43foXLNsj5tGFNoy8gucwQ2bpEEpPJazlsmRVk9SB7Ui0GVzU673EUqCHD
wR3NI4MzlEmo6RV8DxTyx6rGOjGH2XGjwi6cbfZFLiehw7RjYZV5ggO5uxK+O43n
EbudMaiHOZeg+rYtU+c162TdAjPwwWTiTx5LJvZpam7QS3M31U76PdVt75bacbfH
m7TarxK15ksP9Mmj3DJnXKavOS5u92mPRkSIZmE/hmWsJ/X6tmTzgX0tHddF4N+7
yaftBwglqV6Da8Xylc9GKkC2Q/b0mXSQqTwr86fK2TyKY6HHj5QJ6CNG9gwP33tG
Kg2zIpMzKul7FHpJeQIrHL312Z/4bek1Islki2ydt8CwdheMPTnxUqcFNKpaTItM
FudQTJuaffXinmavGtwco/iFBqJbnqX3RkgWpXxyIvG4NTLrcMcMDKY6DRo+f2FB
0ojU2APhPZ+63+fvCwO1Bv06/vbzfphkOvgQv6w2laekmuCJaF2RfQDj8N+DiteH
LRmqYpF4UEr4WnJeHuumV3oRQsjHU6exdzg/5oBNyJ1vD8CzRFYvTgyNmdunmFnp
ybuVmjVIjFKxGnF1x46ZFF+o7CM0+3XeC6vFYbT3WNDQq1iQKTY=
=/CI9
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-01 16:17           ` Ritesh Raj Sarraf
@ 2017-02-01 20:53             ` Andy Shevchenko
  2017-02-02  8:16               ` Ritesh Raj Sarraf
  0 siblings, 1 reply; 11+ messages in thread
From: Andy Shevchenko @ 2017-02-01 20:53 UTC (permalink / raw)
  To: Ritesh Raj Sarraf; +Cc: Platform Driver

On Wed, Feb 1, 2017 at 6:17 PM, Ritesh Raj Sarraf <rrs@debian.org> wrote:

> On Wed, 2017-02-01 at 17:07 +0200, Andy Shevchenko wrote:
>> > root@learner:/sys/class/input# od -x /dev/input/event6
>> > ?0000000 ee33 5891 0000 0000 2bd9 0005 0000 0000
>> > ^@0000020 0004 0004 0042 0000 ee33 5891 0000 0000
>> > 0000040 2bd9 0005 0000 0000 0001 00c1 0001 0000
>> > 0000060 ee33 5891 0000 0000 2bd9 0005 0000 0000
>> > 0000100 0000 0000 0000 0000 ee33 5891 0000 0000
>> > 0000120 2c09 0005 0000 0000 0001 00c1 0000 0000
>> > 0000140 ee33 5891 0000 0000 2c09 0005 0000 0000
>> > 0000160 0000 0000 0000 0000 ee37 5891 0000 0000
>> > 0000200 3d7e 000f 0000 0000 0004 0004 0043 0000
>> > 0000220 ee37 5891 0000 0000 3d7e 000f 0000 0000
>> > 0000240 0001 00c0 0001 0000 ee37 5891 0000 0000
>> > 0000260 3d7e 000f 0000 0000 0000 0000 0000 0000
>> > 0000300 ee37 5891 0000 0000 3dae 000f 0000 0000
>> > 0000320 0001 00c0 0000 0000 ee37 5891 0000 0000
>> > 0000340 3dae 000f 0000 0000 0000 0000 0000 0000
>>
>> So, the whole idea of this exercise is to show that driver sends an
>> event whenever you bend / unbend the cover.
>> User space already will know what is the state of the cover.
>>
>
> Yes. But we've not found the interface in sysfs where we could read that from.
> Nor did udev report anything meaningful for it.
>
>> > By the way, does the patch make sense for
>> > inclusion ? To have an interface for touchpad mode ?
>>
>> The question now is why do you need that on top of existing event?
>
> If you have time, please see:
> https://bugs.launchpad.net/bugs/1366421
>
> It has pretty much all the details on what and why we need something in sysfs.

It's a lo-o-ong discussion from which I, might be wrongly, assumed
that there couple of problems: a) you don't know initial state, b)
something preventing use of event.

Keyboard and touchpad are disabled by hw, so, only what OS needs is a
notification.

Can you point me exactly to the message that explains _why_ it's
impossible to use standard eventX mechanism for that?

> For HP and ThinkPad, there already are interfaces available.

Perhaps those hybrids didn't lock keyboard and touchpad in hw and
don't send any event, that's why OS needs it.

> /sys/devices/platform/hp-wmi/tablet
> /sys/devices/platform/thinkpad_acpi/hotkey_tablet_mode
>
> It'd be nice to see the same for Yoga IdeaPad; a proper interface for tablet-
> mode


-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-01 20:53             ` Andy Shevchenko
@ 2017-02-02  8:16               ` Ritesh Raj Sarraf
  2017-02-13 22:26                 ` Andy Shevchenko
  0 siblings, 1 reply; 11+ messages in thread
From: Ritesh Raj Sarraf @ 2017-02-02  8:16 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Platform Driver

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Hello Andy,

On Wed, 2017-02-01 at 22:53 +0200, Andy Shevchenko wrote:
> > If you have time, please see:
> > https://bugs.launchpad.net/bugs/1366421
> > 
> > It has pretty much all the details on what and why we need something in
> > sysfs.
> 
> It's a lo-o-ong discussion from which I, might be wrongly, assumed
> that there couple of problems: a) you don't know initial state, b)
> something preventing use of event.
> 

Yes.

> Keyboard and touchpad are disabled by hw, so, only what OS needs is a
> notification.
> 

Yes.

> Can you point me exactly to the message that explains _why_ it's
> impossible to use standard eventX mechanism for that?
> 

Comment #43 has the summary of what we've tried.
https://bugs.launchpad.net/onboard/+bug/1366421/comments/43

Some of the drivers do SW_TABLET_MODE, but ideapad does not.
Some of the drivers do sysfs, but ideapad does not.

For ideapad, under Xorg, it generates hotkey events.
And the hotkey event are going to work under Xorg only. What about Wayland/Mir ?
We also aren't sure, if the keycodes that it sends, are uniform across all Yoga
variants.

- -- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEQCVDstmIVAB/Yn02pjpYo/LhdWkFAliS6ucACgkQpjpYo/Lh
dWlydw/9Ejt8FSHXB3yCwBJdJc0OKfTx3zoJnJ3USbarE3XbNGW+M++FEnz9l6CR
CI97nJDmXRQIXdfKv8xgnoUIFvZhFP20DhvytUx6ukadcLSH/Dwzf60BTThJok08
q76j7hBpV9bRiWANaBw2dPKLt/4++UVPT5Pd8yb70gC0J8PLJ4iyFeEFgOaoniIp
wv01whOHDkSiSW6Due/jC9Cwwv0m4AKeiUYZtJ3oJgFn1yBirlCWjkWvTktjxgwD
QyL3QWePqTl11JATIp34zS+cXOKZFdS26F741aE0eLWP0i9N9KlXceNXe9OXWwYg
EkxGQLbgqgQJ7J4XgRpl6x2ajgwA61Q0KtRep7+TLNT+9SC+OYUqsttLk6EwKSsc
5CAyOcQC1d2i9vPDMHBbqB+Gluu/GcNON7fv3oTbPXYIWkw9kT4yDDlz4Phi3noK
fncCkYw/yp3/lAkTYW5ChEj2/HADcgY3uqG1tpI1XC0YNVxd9LQY++GlboJOVTp5
EoHBcWTmBGKJVXOW1ZmzER5pPDpf6CE/pb0KCBNq3ZLvyyPV/VRJeOPgre1+7Kz5
Ub9mygN3rU/GhalFCj5BQIQpeiTCZa1ax1Ze1iNvJLxfsE5oasWW8yDNdzcl70Wr
grPDk83bTKf+LdNa/jpTijZTMzhpMBWLdZf8N6c1pofDdABMoXU=
=wiLZ
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-02  8:16               ` Ritesh Raj Sarraf
@ 2017-02-13 22:26                 ` Andy Shevchenko
  2017-02-14 14:18                   ` Ritesh Raj Sarraf
  0 siblings, 1 reply; 11+ messages in thread
From: Andy Shevchenko @ 2017-02-13 22:26 UTC (permalink / raw)
  To: Ritesh Raj Sarraf; +Cc: Platform Driver

I'm sorry for top-posting, but something wrong with email quoting. I'm
using here gmail, it might not recognize message properly.

So, please fix the subject line to have a prefix, in your case
"platform/x86: ideapad-laptop: ...".
Add to the commit message what you explained me and put a link to that comment.
And resend new version with all maintainers included (there is a
script scripts/get_maintainer.pl to help with the list of
maintainers).

On Wed, 2017-02-01 at 22:53 +0200, Andy Shevchenko wrote:
> > If you have time, please see:
> > https://bugs.launchpad.net/bugs/1366421
> >
> > It has pretty much all the details on what and why we need something in
> > sysfs.
>
> It's a lo-o-ong discussion from which I, might be wrongly, assumed
> that there couple of problems: a) you don't know initial state, b)
> something preventing use of event.
>

Yes.

> Keyboard and touchpad are disabled by hw, so, only what OS needs is a
> notification.
>

Yes.

> Can you point me exactly to the message that explains _why_ it's
> impossible to use standard eventX mechanism for that?
>

Comment #43 has the summary of what we've tried.
https://bugs.launchpad.net/onboard/+bug/1366421/comments/43

Some of the drivers do SW_TABLET_MODE, but ideapad does not.
Some of the drivers do sysfs, but ideapad does not.

For ideapad, under Xorg, it generates hotkey events.
And the hotkey event are going to work under Xorg only. What about Wayland/Mir ?
We also aren't sure, if the keycodes that it sends, are uniform across all Yoga
variants.




-- 
With Best Regards,
Andy Shevchenko

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH] Add sysfs interface for touchpad state
  2017-02-13 22:26                 ` Andy Shevchenko
@ 2017-02-14 14:18                   ` Ritesh Raj Sarraf
  0 siblings, 0 replies; 11+ messages in thread
From: Ritesh Raj Sarraf @ 2017-02-14 14:18 UTC (permalink / raw)
  To: Andy Shevchenko; +Cc: Platform Driver

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

On Tue, 2017-02-14 at 00:26 +0200, Andy Shevchenko wrote:
> I'm sorry for top-posting, but something wrong with email quoting. I'm
> using here gmail, it might not recognize message properly.
> 
> So, please fix the subject line to have a prefix, in your case
> "platform/x86: ideapad-laptop: ...".
> Add to the commit message what you explained me and put a link to that
> comment.
> And resend new version with all maintainers included (there is a
> script scripts/get_maintainer.pl to help with the list of
> maintainers).

Thank you Andy. I've just re-sent (through git send-email) a revised patch, with
your comments.

- -- 
Ritesh Raj Sarraf | http://people.debian.org/~rrs
Debian - The Universal Operating System
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEQCVDstmIVAB/Yn02pjpYo/LhdWkFAlijEcMACgkQpjpYo/Lh
dWkieRAAtfWMgH+rwbCLjXRMTfGLTG8Nf76Iyq1w+8ny09/IyN9g15YMCuE2O5QI
RgQQNa5e/DZ7qqGbxlZP7T5om2PWMDlREsnjiEYBwIDBPfOd/+ob/SPRGvXPf/QP
Lx47EAmVoT4dv9urcz/54G9QjYxvgE96RlE42qx1z2mompdqAyrmg28AgqccILrU
rcMC9xU+2x172/z8kpdx+hZf87Zi3EevIUjrjJq39b1MDyePkv7l9Mz724RRxWfs
UheZSKJtJonySz/psg9xqDzYsc23UY0XWLbTjGBCFfc+8ZYLNvobDXJkPJMK5cyx
Qy0ZHkkRZC0bHiuu24WMcgmelSTcwS2WTjdYOZxOoS9nshXU/xJ33C5tjq/yrfC4
nwQsru+SdZml8xmFUHDCXfCnyMOjB5zG2n241kMjMhu7fC3UDZ+1ptxeUAk066It
ov3LlPxs5sV/qOvFNbWAm8CJEPDX9kNpZ9IFneic2AZhfgR0BCiAItjvlkZVmpNi
iGDIHyASM6csX8hcGKW8NAJwbZYkjrUPJRQYiqhwtbmkP7eHxEIWX1ac1uxQZP9A
zUlxZCOSyWLKqp3+rVX/H3KsuRAJUkkLIzN7jwepPBdy8EAfXUuwuayfmAxXGges
JtErebhnb4/WdYSkOPZcmGLGxQHlsh7mdzeEN8Gbh844Li/C0z0=
=QTp1
-----END PGP SIGNATURE-----

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2017-02-14 14:18 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-30 10:57 [PATCH] Add sysfs interface for touchpad state Ritesh Raj Sarraf
2017-01-30 20:25 ` Andy Shevchenko
2017-01-31 11:47   ` Ritesh Raj Sarraf
2017-02-01 11:25     ` Andy Shevchenko
2017-02-01 14:26       ` Ritesh Raj Sarraf
2017-02-01 15:07         ` Andy Shevchenko
2017-02-01 16:17           ` Ritesh Raj Sarraf
2017-02-01 20:53             ` Andy Shevchenko
2017-02-02  8:16               ` Ritesh Raj Sarraf
2017-02-13 22:26                 ` Andy Shevchenko
2017-02-14 14:18                   ` Ritesh Raj Sarraf

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.