USB: serial: ir-usb: fix link-speed handling
authorJohan Hovold <johan@kernel.org>
Wed, 22 Jan 2020 10:15:27 +0000 (11:15 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 22 May 2020 20:19:32 +0000 (21:19 +0100)
commit482735dac9aacba0638bf0562b9c37068c695880
treeb73aaf6fec5fc199e31e00d9d87851f71ab440ec
parent4b9dcdf2264b073cacef03f6ab4e3d5ca817bbb1
USB: serial: ir-usb: fix link-speed handling

commit 17a0184ca17e288decdca8b2841531e34d49285f upstream.

Commit e0d795e4f36c ("usb: irda: cleanup on ir-usb module") added a USB
IrDA header with common defines, but mistakingly switched to using the
class-descriptor baud-rate bitmask values for the outbound header.

This broke link-speed handling for rates above 9600 baud, but a device
would also be able to operate at the default 9600 baud until a
link-speed request was issued (e.g. using the TCGETS ioctl).

Fixes: e0d795e4f36c ("usb: irda: cleanup on ir-usb module")
Cc: Felipe Balbi <balbi@kernel.org>
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/usb/serial/ir-usb.c
include/linux/usb/irda.h