RE: [PATCH] HID: intel-thc-hid: Intel-quickspi: Fix some error codes

"Xu, Even" <[email protected]>
Newsgroups org.kernel.vger.kernel-janitors,org.kernel.vger.linux-input,org.kernel.vger.linux-kernel
Message-ID <IA1PR11MB6098E3A5787DBB588126C84CF42B2@IA1PR11MB6098.namprd11.prod.outlook.com>

> -----Original Message-----
> From: Dan Carpenter <[email protected]>
> Sent: Thursday, April 23, 2026 3:10 PM
> To: Xu, Even <[email protected]>
> Cc: Sun, Xinpeng <[email protected]>; Jiri Kosina <[email protected]>;
> Benjamin Tissoires <[email protected]>; Mark Pearson <mpearson-
> [email protected]>; Srinivas Pandruvada
> <[email protected]>; [email protected]; linux-
> [email protected]; [email protected]
> Subject: [PATCH] HID: intel-thc-hid: Intel-quickspi: Fix some error codes
> 
> If we have a partial read that is supposed to be treated as failure but in this code
> we forgot to set the error code.  Return -EINVAL.
> 
> Fixes: 9d8d51735a3a ("HID: intel-thc-hid: intel-quickspi: Add HIDSPI protocol
> implementation")
> Signed-off-by: Dan Carpenter <[email protected]>
> ---
>  drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c
> b/drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c
> index 16f780bc879b..cb19057f1191 100644
> --- a/drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c
> +++ b/drivers/hid/intel-thc-hid/intel-quickspi/quickspi-protocol.c
> @@ -94,7 +94,7 @@ static int quickspi_get_device_descriptor(struct
> quickspi_device *qsdev)
>  		dev_err_once(qsdev->dev, "Read DEVICE_DESCRIPTOR failed,
> ret = %d\n", ret);
>  		dev_err_once(qsdev->dev, "DEVICE_DESCRIPTOR expected len
> = %u, actual read = %u\n",
>  			     input_len, read_len);
> -		return ret;
> +		return ret ?: -EINVAL;
>  	}

Good capture! If ret > 0, but read length != expected length, the error also needs to be thrown.
Thanks for the patch!

Reviewed-by: Even Xu <[email protected]>

> 
>  	input_rep_type = ((struct input_report_body_header *)read_buf)-
> >input_report_type; @@ -318,7 +318,7 @@ int reset_tic(struct quickspi_device
> *qsdev)
>  		dev_err_once(qsdev->dev, "Read RESET_RESPONSE body failed,
> ret = %d\n", ret);
>  		dev_err_once(qsdev->dev, "RESET_RESPONSE body expected
> len = %u, actual = %u\n",
>  			     read_len, actual_read_len);
> -		return ret;
> +		return ret ?: -EINVAL;
>  	}
> 
>  	input_rep_type = FIELD_GET(HIDSPI_IN_REP_BDY_HDR_REP_TYPE,
> reset_response);
> --
> 2.53.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.