diff mbox series

usb: core: add quirk for Alcor Link AK9563 smartcard reader

Message ID 20230208144648.1079898-1-mpearson-lenovo@squebb.ca (mailing list archive)
State Superseded
Headers show
Series usb: core: add quirk for Alcor Link AK9563 smartcard reader | expand

Commit Message

Mark Pearson Feb. 8, 2023, 2:46 p.m. UTC
The Alcor Link AK9563 smartcard reader used on some Lenovo platforms
doesn't work. If LPM is enabled the reader will provide an invalid
usb config descriptor. Added quirk to disable LPM.

Verified fix on Lenovo P16 G1 and T14 G3

Tested-by: Miroslav Zatko <mzatko@mirexoft.com>
Tested-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>

Cc: stable@vger.kernel.org

Signed-off-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>
Signed-off-by: Mark Pearson <mpearson-lenovo@squebb.ca>
---
 drivers/usb/core/quirks.c | 3 +++
 1 file changed, 3 insertions(+)

Comments

Greg KH Feb. 8, 2023, 3:03 p.m. UTC | #1
On Wed, Feb 08, 2023 at 09:46:48AM -0500, Mark Pearson wrote:
> The Alcor Link AK9563 smartcard reader used on some Lenovo platforms
> doesn't work. If LPM is enabled the reader will provide an invalid
> usb config descriptor. Added quirk to disable LPM.
> 
> Verified fix on Lenovo P16 G1 and T14 G3
> 
> Tested-by: Miroslav Zatko <mzatko@mirexoft.com>
> Tested-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>
> 
> Cc: stable@vger.kernel.org
> 
> Signed-off-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>
> Signed-off-by: Mark Pearson <mpearson-lenovo@squebb.ca>

No blank lines needed between tested-by and cc: stable.

> ---
>  drivers/usb/core/quirks.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
> index 079e183cf3bf..9b1c56646ac5 100644
> --- a/drivers/usb/core/quirks.c
> +++ b/drivers/usb/core/quirks.c
> @@ -535,6 +535,9 @@ static const struct usb_device_id usb_quirk_list[] = {
>  	/* INTEL VALUE SSD */
>  	{ USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME },
>  
> +	/* Alcor Link AK9563 SC Reader used in 2022 Lenovo ThinkPads */
> +	{ USB_DEVICE(0x2ce3, 0x9563), .driver_info = USB_QUIRK_NO_LPM },

Please follow the instructions in the comment right above this structure
definition for where to put the entry in the list.

thanks,

greg k-h
Mark Pearson Feb. 8, 2023, 4:47 p.m. UTC | #2
Thanks Greg

On Wed, Feb 8, 2023, at 10:03 AM, Greg KH wrote:
> On Wed, Feb 08, 2023 at 09:46:48AM -0500, Mark Pearson wrote:
> > The Alcor Link AK9563 smartcard reader used on some Lenovo platforms
> > doesn't work. If LPM is enabled the reader will provide an invalid
> > usb config descriptor. Added quirk to disable LPM.
> > 
> > Verified fix on Lenovo P16 G1 and T14 G3
> > 
> > Tested-by: Miroslav Zatko <mzatko@mirexoft.com>
> > Tested-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>
> > 
> > Cc: stable@vger.kernel.org
> > 
> > Signed-off-by: Dennis Wassenberg <dennis.wassenberg@secunet.com>
> > Signed-off-by: Mark Pearson <mpearson-lenovo@squebb.ca>
> 
> No blank lines needed between tested-by and cc: stable.
Ack

> 
> > ---
> >  drivers/usb/core/quirks.c | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
> > index 079e183cf3bf..9b1c56646ac5 100644
> > --- a/drivers/usb/core/quirks.c
> > +++ b/drivers/usb/core/quirks.c
> > @@ -535,6 +535,9 @@ static const struct usb_device_id usb_quirk_list[] = {
> >  /* INTEL VALUE SSD */
> >  { USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME },
> >  
> > + /* Alcor Link AK9563 SC Reader used in 2022 Lenovo ThinkPads */
> > + { USB_DEVICE(0x2ce3, 0x9563), .driver_info = USB_QUIRK_NO_LPM },
> 
> Please follow the instructions in the comment right above this structure
> definition for where to put the entry in the list.

Ah - my bad. Will fix.

Mark
diff mbox series

Patch

diff --git a/drivers/usb/core/quirks.c b/drivers/usb/core/quirks.c
index 079e183cf3bf..9b1c56646ac5 100644
--- a/drivers/usb/core/quirks.c
+++ b/drivers/usb/core/quirks.c
@@ -535,6 +535,9 @@  static const struct usb_device_id usb_quirk_list[] = {
 	/* INTEL VALUE SSD */
 	{ USB_DEVICE(0x8086, 0xf1a5), .driver_info = USB_QUIRK_RESET_RESUME },
 
+	/* Alcor Link AK9563 SC Reader used in 2022 Lenovo ThinkPads */
+	{ USB_DEVICE(0x2ce3, 0x9563), .driver_info = USB_QUIRK_NO_LPM },
+
 	{ }  /* terminating entry must be last */
 };