drivers/hid/hid-ids.h | 1 + drivers/hid/hid-quirks.c | 1 + 2 files changed, 2 insertions(+)
The Chicony Electronics HP 5MP Camera (USB ID 04F2:B82C) reports a HID
sensor interface that is not actually implemented. Attempting to access
this non-functional sensor via iio_info causes system hangs as runtime PM
tries to wake up an unresponsive sensor.
Add this device to the HID ignore list since the sensor interface is
non-functional by design and should not be exposed to userspace.
Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
---
drivers/hid/hid-ids.h | 1 +
drivers/hid/hid-quirks.c | 1 +
2 files changed, 2 insertions(+)
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 7e400624908e..5fdea9116a3e 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -297,6 +297,7 @@
#define USB_DEVICE_ID_ASUS_AK1D 0x1125
#define USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A 0x1408
#define USB_DEVICE_ID_CHICONY_ACER_SWITCH12 0x1421
+#define USB_DEVICE_ID_CHICONY_HP_5MB_CAMERA 0xb82c
#define USB_VENDOR_ID_CHUNGHWAT 0x2247
#define USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH 0x0001
diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
index 5d7a418ccdbe..452fac15550b 100644
--- a/drivers/hid/hid-quirks.c
+++ b/drivers/hid/hid-quirks.c
@@ -370,6 +370,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS2) },
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_ASUS_AK1D) },
{ HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_ACER_SWITCH12) },
+ { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_HP_5MB_CAMERA) },
#endif
#if IS_ENABLED(CONFIG_HID_CMEDIA)
{ HID_USB_DEVICE(USB_VENDOR_ID_CMEDIA, USB_DEVICE_ID_CM6533) },
--
2.43.0
On Wed, 12 Mar 2025, Chia-Lin Kao (AceLan) wrote:
> The Chicony Electronics HP 5MP Camera (USB ID 04F2:B82C) reports a HID
> sensor interface that is not actually implemented. Attempting to access
> this non-functional sensor via iio_info causes system hangs as runtime PM
> tries to wake up an unresponsive sensor.
>
> Add this device to the HID ignore list since the sensor interface is
> non-functional by design and should not be exposed to userspace.
>
> Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
> ---
> drivers/hid/hid-ids.h | 1 +
> drivers/hid/hid-quirks.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> index 7e400624908e..5fdea9116a3e 100644
> --- a/drivers/hid/hid-ids.h
> +++ b/drivers/hid/hid-ids.h
> @@ -297,6 +297,7 @@
> #define USB_DEVICE_ID_ASUS_AK1D 0x1125
> #define USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A 0x1408
> #define USB_DEVICE_ID_CHICONY_ACER_SWITCH12 0x1421
> +#define USB_DEVICE_ID_CHICONY_HP_5MB_CAMERA 0xb82c
>
> #define USB_VENDOR_ID_CHUNGHWAT 0x2247
> #define USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH 0x0001
> diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
> index 5d7a418ccdbe..452fac15550b 100644
> --- a/drivers/hid/hid-quirks.c
> +++ b/drivers/hid/hid-quirks.c
> @@ -370,6 +370,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
> { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS2) },
> { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_ASUS_AK1D) },
> { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_ACER_SWITCH12) },
> + { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_HP_5MB_CAMERA) },
Given the changelog, did you mean to add this device to hid_ignore_list[]
instead of hid_have_special_driver[]?
Thanks,
--
Jiri Kosina
SUSE Labs
Jiri Kosina <jikos@kernel.org> 於 2025年4月24日 週四 下午5:29寫道:
>
> On Wed, 12 Mar 2025, Chia-Lin Kao (AceLan) wrote:
>
> > The Chicony Electronics HP 5MP Camera (USB ID 04F2:B82C) reports a HID
> > sensor interface that is not actually implemented. Attempting to access
> > this non-functional sensor via iio_info causes system hangs as runtime PM
> > tries to wake up an unresponsive sensor.
> >
> > Add this device to the HID ignore list since the sensor interface is
> > non-functional by design and should not be exposed to userspace.
> >
> > Signed-off-by: Chia-Lin Kao (AceLan) <acelan.kao@canonical.com>
> > ---
> > drivers/hid/hid-ids.h | 1 +
> > drivers/hid/hid-quirks.c | 1 +
> > 2 files changed, 2 insertions(+)
> >
> > diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
> > index 7e400624908e..5fdea9116a3e 100644
> > --- a/drivers/hid/hid-ids.h
> > +++ b/drivers/hid/hid-ids.h
> > @@ -297,6 +297,7 @@
> > #define USB_DEVICE_ID_ASUS_AK1D 0x1125
> > #define USB_DEVICE_ID_CHICONY_TOSHIBA_WT10A 0x1408
> > #define USB_DEVICE_ID_CHICONY_ACER_SWITCH12 0x1421
> > +#define USB_DEVICE_ID_CHICONY_HP_5MB_CAMERA 0xb82c
> >
> > #define USB_VENDOR_ID_CHUNGHWAT 0x2247
> > #define USB_DEVICE_ID_CHUNGHWAT_MULTITOUCH 0x0001
> > diff --git a/drivers/hid/hid-quirks.c b/drivers/hid/hid-quirks.c
> > index 5d7a418ccdbe..452fac15550b 100644
> > --- a/drivers/hid/hid-quirks.c
> > +++ b/drivers/hid/hid-quirks.c
> > @@ -370,6 +370,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
> > { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_WIRELESS2) },
> > { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_ASUS_AK1D) },
> > { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_ACER_SWITCH12) },
> > + { HID_USB_DEVICE(USB_VENDOR_ID_CHICONY, USB_DEVICE_ID_CHICONY_HP_5MB_CAMERA) },
>
> Given the changelog, did you mean to add this device to hid_ignore_list[]
> instead of hid_have_special_driver[]?
Yes, you are right.
I'll submit v2 for the 2 patches.
Thanks.
>
> Thanks,
>
> --
> Jiri Kosina
> SUSE Labs
>
© 2016 - 2025 Red Hat, Inc.