public inbox for linux-iio@vger.kernel.org
 help / color / mirror / Atom feed
* [Bug 220561] New: IIO: hid-sensor-hub: Fails to enumerate Accelerometer on SunplusIT (5986:2177) composite device on Lenovo Yoga 7 Gen 10
@ 2025-09-10 17:04 bugzilla-daemon
  2025-09-10 17:05 ` [Bug 220561] " bugzilla-daemon
  2026-01-08 17:04 ` bugzilla-daemon
  0 siblings, 2 replies; 3+ messages in thread
From: bugzilla-daemon @ 2025-09-10 17:04 UTC (permalink / raw)
  To: linux-iio

https://bugzilla.kernel.org/show_bug.cgi?id=220561

            Bug ID: 220561
           Summary: IIO: hid-sensor-hub: Fails to enumerate Accelerometer
                    on SunplusIT (5986:2177) composite device on Lenovo
                    Yoga 7 Gen 10
           Product: Drivers
           Version: 2.5
          Hardware: AMD
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P3
         Component: IIO
          Assignee: drivers_iio@kernel-bugs.kernel.org
          Reporter: shyamdhokia123@hotmail.co.uk
        Regression: No

Created attachment 308652
  --> https://bugzilla.kernel.org/attachment.cgi?id=308652&action=edit
Standard Kernel Log and Full system Hardware

System Details:
Device: Lenovo Yoga 7 2-in-1 (Gen 10, AMD)
Operating System: Ubuntu 24.04 LTS
Kernel: 6.16.6-061606-generic (and newer mainline kernels tested:
6.17.0-061700rc5-generic)
iio-sensor-proxy version: 3.7 (also tested 3.5, 3.6, 3.8)
Hardware: SunplusIT Inc. Integrated RGB Camera (USB ID 5986:2177)

Problem Description:
Automatic screen rotation does not work on this new laptop model. The root
cause is that the kernel's hid-sensor-hub driver fails to detect and create a
device for the built-in accelerometer.
The laptop uses a composite USB device (the webcam assembly) which provides
multiple functions, including a HID sensor interface. The driver successfully
binds to this interface and enumerates the Ambient Light Sensor (ALS) but
completely ignores the Accelerometer, which is part of the same physical unit.
The proximity sensor is not identified by motion-sensor but identified here.

Debugging Steps and Evidence:

iio-sensor-proxy runs stably but monitor-sensor reports === No accelerometer.
The working Ambient Light Sensor confirms the iio userspace stack is
functional.
code. However it doesn't seem to change value from 120 so likely is still not
processing the data correctly.

The sensor hub is part of the "Integrated RGB Camera" composite device.
lsusb: Bus 001 Device 002: ID 5986:2177 SunplusIT Inc. Integrated RGB Camera
dmesg: hid-sensor-hub 0003:5986:2177.0003: hiddev0,hidraw2: USB HID v1.11
Device [SunplusIT Inc Integrated RGB Camera]

The driver correctly identifies and creates iio devices for two of the logical
sensors on the HID interface:
iio:device0: The Ambient Light Sensor (HID-SENSOR-200041).
iio:device1: The Proximity Sensor (HID-SENSOR-200011), whose name attribute is
correctly reported as prox.
This proves the driver can communicate with the device and parse at least part
of its HID Report Descriptor.

No iio device is ever created for the accelerometer (expected HID Usage ID
200073). The ls /sys/bus/iio/devices/ output only ever shows the ALS and
Proximity devices.

Verbose logging was enabled for the hid-sensor-hub module, which was then
forced to re-probe the device (unbind/bind).
The resulting dmesg output is flooded with successful, real-time data
processing events for the Ambient Light Sensor only. This demonstrates the
driver is actively receiving data from the working sensor, although it doesn't
appear to be interpreted correctly.

Example from the debug log:

[ 2116.082180] hid-sensor-hub 0003:5986:2177.0003: 2 collection_index:a
hid:2004d1 sz:2
[ 2116.082182] hid-sensor-hub 0003:5986:2177.0003: collection->usage 200041

Here, collection->usage 200041 clearly identifies the ALS.

Crucially, in the entire debug log, there is a complete absence of any mention
of the Accelerometer's Usage ID (200073) or any related data fields (e.g., for
X/Y/Z axes).

The hid-sensor-hub driver fails during the parsing of the HID Report Descriptor
for the SunplusIT 5986:2177 device. It successfully parses the logical sensors
for Ambient Light and Proximity but appears to silently fail or misinterpret
the section defining the Accelerometer. Because it fails at this low level, no
kernel device is ever registered, making the accelerometer invisible to the
rest of the OS.
This is a driver-level bug requiring a patch to correctly support this specific
hardware's descriptor.

Attached Files:
dmidecode and dmesg output

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.

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

end of thread, other threads:[~2026-01-08 17:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-09-10 17:04 [Bug 220561] New: IIO: hid-sensor-hub: Fails to enumerate Accelerometer on SunplusIT (5986:2177) composite device on Lenovo Yoga 7 Gen 10 bugzilla-daemon
2025-09-10 17:05 ` [Bug 220561] " bugzilla-daemon
2026-01-08 17:04 ` bugzilla-daemon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox