On Mon, 2020-11-02 at 19:29 -0500, Pablo Ceballos wrote: > Some HID devices don't use a report ID because they only have a > single > report. In those cases, the report ID in struct hid_report will be > zero > and the data for the report will start at the first byte, so don't > skip > over the first byte. > > Signed-off-by: Pablo Ceballos <pceballos@xxxxxxxxxx> Acked-by: Srinivas Pandruvada <srinivas.pandruvada@xxxxxxxxxxxxxxx> > --- > drivers/hid/hid-sensor-hub.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/hid/hid-sensor-hub.c b/drivers/hid/hid-sensor- > hub.c > index 94c7398b5c27..3dd7d3246737 100644 > --- a/drivers/hid/hid-sensor-hub.c > +++ b/drivers/hid/hid-sensor-hub.c > @@ -483,7 +483,8 @@ static int sensor_hub_raw_event(struct hid_device > *hdev, > return 1; > > ptr = raw_data; > - ptr++; /* Skip report id */ > + if (report->id) > + ptr++; /* Skip report id */ > > spin_lock_irqsave(&pdata->lock, flags); >