linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] Add quirk for Lenovo Yoga 2 with ITE Chips
@ 2015-10-05  6:37 Ritesh Raj Sarraf
  2015-10-05  9:51 ` Greg KH
  2015-10-05 11:28 ` Jiri Kosina
  0 siblings, 2 replies; 8+ messages in thread
From: Ritesh Raj Sarraf @ 2015-10-05  6:37 UTC (permalink / raw)
  To: linux-kernel; +Cc: stable, jkosina, Ritesh Raj Sarraf

Signed-off-by: Ritesh Raj Sarraf <rrs@debian.org>
---
 drivers/hid/hid-ids.h        | 1 +
 drivers/hid/hid-sensor-hub.c | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index f769208..127c777 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -510,6 +510,7 @@
 
 #define USB_VENDOR_ID_ITE               0x048d
 #define USB_DEVICE_ID_ITE_LENOVO_YOGA   0x8386
+#define USB_DEVICE_ID_ITE_LENOVO_YOGA2  0x8350
 
 #define USB_VENDOR_ID_JABRA		0x0b0e
 #define USB_DEVICE_ID_JABRA_SPEAK_410	0x0412
diff --git a/drivers/hid/hid-sensor-hub.c b/drivers/hid/hid-sensor-hub.c
index a76eb2a..05afa25 100644
--- a/drivers/hid/hid-sensor-hub.c
+++ b/drivers/hid/hid-sensor-hub.c
@@ -777,6 +777,9 @@ static const struct hid_device_id sensor_hub_devices[] = {
 	{ HID_DEVICE(HID_BUS_ANY, HID_GROUP_SENSOR_HUB, USB_VENDOR_ID_ITE,
 			USB_DEVICE_ID_ITE_LENOVO_YOGA),
 			.driver_data = HID_SENSOR_HUB_ENUM_QUIRK},
+	{ HID_DEVICE(HID_BUS_ANY, HID_GROUP_SENSOR_HUB, USB_VENDOR_ID_ITE,
+			USB_DEVICE_ID_ITE_LENOVO_YOGA2),
+			.driver_data = HID_SENSOR_HUB_ENUM_QUIRK},
 	{ HID_DEVICE(HID_BUS_ANY, HID_GROUP_SENSOR_HUB, HID_ANY_ID,
 		     HID_ANY_ID) },
 	{ }
-- 
2.5.3


^ permalink raw reply related	[flat|nested] 8+ messages in thread
* [PATCH] Add quirk for Lenovo Yoga 2 with ITE Chips
@ 2015-10-05 16:32 Ritesh Raj Sarraf
  2015-10-05 16:42 ` Srinivas Pandruvada
  2015-10-05 18:40 ` Jiri Kosina
  0 siblings, 2 replies; 8+ messages in thread
From: Ritesh Raj Sarraf @ 2015-10-05 16:32 UTC (permalink / raw)
  To: linux-kernel; +Cc: jkosina, srinivas.pandruvada, Ritesh Raj Sarraf

This patch is a follow-up to the one below, send by Guilhem Lettron.

The Lenovo Yoga 2 13 seems to be sold in multiple variants with minor
difference3s. IN my case, the USB ID for ITE chip is different than the
Yoga 2 11 and Yoga 3 14.

Without the quirk, no data is received from the accelerometer. I have
verified the patch, testing this on 4.3-rc4 (and 4.2 stable). With this
patch, proper orientation data is received.

rrs@learner:~/Community/UpstreamSources/linux-upstream_GIT (stable-42)$ 
monitor-sensor 
** Message: Accelerometer orientation changed: bottom-up
** Message: Light changed: 0.000000 (lux)
±** Message: Accelerometer orientation changed: left-up
** Message: Accelerometer orientation changed: bottom-up
** Message: Accelerometer orientation changed: left-up
** Message: Accelerometer orientation changed: normal
** Message: Light changed: 29.999999 (lux)

monitor-sensor can be found in the iio-sensor-proxy tool.

commit 47eeca8a4838714e582c2a3058458408a328ed60
Author: Guilhem Lettron <guilhem@lettron.fr>
Date:   Sat Jun 27 17:02:23 2015 +0200

    HID: sensor-hub: Add in quirk for Lenovo Yogas with ITE
    
    Like yogas with TEXAS_INSTRUMENTS, yogas with ITE chips needs
    to be initialized with enumeration quirks.
    
    Signed-off-by: Jiri Kosina <jkosina@suse.com>


Signed-off-by: Ritesh Raj Sarraf <rrs@debian.org>
---
 drivers/hid/hid-ids.h        | 1 +
 drivers/hid/hid-sensor-hub.c | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index f769208..127c777 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -510,6 +510,7 @@
 
 #define USB_VENDOR_ID_ITE               0x048d
 #define USB_DEVICE_ID_ITE_LENOVO_YOGA   0x8386
+#define USB_DEVICE_ID_ITE_LENOVO_YOGA2  0x8350
 
 #define USB_VENDOR_ID_JABRA		0x0b0e
 #define USB_DEVICE_ID_JABRA_SPEAK_410	0x0412
diff --git a/drivers/hid/hid-sensor-hub.c b/drivers/hid/hid-sensor-hub.c
index a76eb2a..05afa25 100644
--- a/drivers/hid/hid-sensor-hub.c
+++ b/drivers/hid/hid-sensor-hub.c
@@ -777,6 +777,9 @@ static const struct hid_device_id sensor_hub_devices[] = {
 	{ HID_DEVICE(HID_BUS_ANY, HID_GROUP_SENSOR_HUB, USB_VENDOR_ID_ITE,
 			USB_DEVICE_ID_ITE_LENOVO_YOGA),
 			.driver_data = HID_SENSOR_HUB_ENUM_QUIRK},
+	{ HID_DEVICE(HID_BUS_ANY, HID_GROUP_SENSOR_HUB, USB_VENDOR_ID_ITE,
+			USB_DEVICE_ID_ITE_LENOVO_YOGA2),
+			.driver_data = HID_SENSOR_HUB_ENUM_QUIRK},
 	{ HID_DEVICE(HID_BUS_ANY, HID_GROUP_SENSOR_HUB, HID_ANY_ID,
 		     HID_ANY_ID) },
 	{ }
-- 
2.6.0


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

end of thread, other threads:[~2015-10-05 18:40 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-05  6:37 [PATCH] Add quirk for Lenovo Yoga 2 with ITE Chips Ritesh Raj Sarraf
2015-10-05  9:51 ` Greg KH
2015-10-05 11:28 ` Jiri Kosina
2015-10-05 11:42   ` Ritesh Raj Sarraf
2015-10-05 16:12     ` Srinivas Pandruvada
2015-10-05 16:32 Ritesh Raj Sarraf
2015-10-05 16:42 ` Srinivas Pandruvada
2015-10-05 18:40 ` Jiri Kosina

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).