BYD Notebook built-in touch pad, USB interface,so disabled,the touch pad
device idVendor 0x0c45 idProduct 0x7056
Signed-off-by: penghao <[email protected]>
---
drivers/hid/usbhid/hid-core.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c
index 492dd641a25d..630a3cad211f 100644
--- a/drivers/hid/usbhid/hid-core.c
+++ b/drivers/hid/usbhid/hid-core.c
@@ -1193,7 +1193,13 @@ static int usbhid_start(struct hid_device *hid)
interface->desc.bInterfaceProtocol ==
USB_INTERFACE_PROTOCOL_KEYBOARD) {
usbhid_set_leds(hid);
- device_set_wakeup_enable(&dev->dev, 1);
+ /*
+ * USB HID: Add disabled touchpad wakeup on byd zhaoxin notebook
+ */
+ if ((hid->vendor == 0x0c45) && (hid->product == 0x7056))
+ device_set_wakeup_enable(&dev->dev, 0);
+ else
+ device_set_wakeup_enable(&dev->dev, 1);
}
mutex_unlock(&usbhid->mutex);
--
2.11.0
On Wed, Aug 19, 2020 at 07:51:01PM +0800, penghao wrote:
> BYD Notebook built-in touch pad, USB interface,so disabled,the touch pad
> device idVendor 0x0c45 idProduct 0x7056
>
> Signed-off-by: penghao <[email protected]>
> ---
> drivers/hid/usbhid/hid-core.c | 8 +++++++-
> 1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/hid/usbhid/hid-core.c b/drivers/hid/usbhid/hid-core.c
> index 492dd641a25d..630a3cad211f 100644
> --- a/drivers/hid/usbhid/hid-core.c
> +++ b/drivers/hid/usbhid/hid-core.c
> @@ -1193,7 +1193,13 @@ static int usbhid_start(struct hid_device *hid)
> interface->desc.bInterfaceProtocol ==
> USB_INTERFACE_PROTOCOL_KEYBOARD) {
> usbhid_set_leds(hid);
> - device_set_wakeup_enable(&dev->dev, 1);
> + /*
> + * USB HID: Add disabled touchpad wakeup on byd zhaoxin notebook
> + */
> + if ((hid->vendor == 0x0c45) && (hid->product == 0x7056))
> + device_set_wakeup_enable(&dev->dev, 0);
> + else
> + device_set_wakeup_enable(&dev->dev, 1);
Shouldn't this be a quirk somewhere instead of this core check?
thanks,
greg k-h