Bluetooth: btusb: Correct timeout macro argument used to receive control message
authorZijun Hu <quic_zijuhu@quicinc.com>
Mon, 22 Apr 2024 14:57:10 +0000 (22:57 +0800)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Tue, 14 May 2024 14:51:05 +0000 (10:51 -0400)
USB driver defines macro @USB_CTRL_SET_TIMEOUT for sending control message
timeout and @USB_CTRL_GET_TIMEOUT for receiving, but usb_control_msg()
uses wrong macro @USB_CTRL_SET_TIMEOUT as argument to receive control
message, fixed by using @USB_CTRL_GET_TIMEOUT to receive message.

Signed-off-by: Zijun Hu <quic_zijuhu@quicinc.com>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
drivers/bluetooth/btusb.c

index 8bede0a335668aa79a88b6ab8e4bda60b8c7c3ef..5e9f7b65abbca21c8d42188a9202d02aa22ef178 100644 (file)
@@ -2956,7 +2956,7 @@ static int btusb_mtk_uhw_reg_read(struct btusb_data *data, u32 reg, u32 *val)
        err = usb_control_msg(data->udev, pipe, 0x01,
                              0xDE,
                              reg >> 16, reg & 0xffff,
-                             buf, 4, USB_CTRL_SET_TIMEOUT);
+                             buf, 4, USB_CTRL_GET_TIMEOUT);
        if (err < 0) {
                bt_dev_err(hdev, "Failed to read uhw reg(%d)", err);
                goto err_free_buf;
@@ -2984,7 +2984,7 @@ static int btusb_mtk_reg_read(struct btusb_data *data, u32 reg, u32 *val)
        err = usb_control_msg(data->udev, pipe, 0x63,
                              USB_TYPE_VENDOR | USB_DIR_IN,
                              reg >> 16, reg & 0xffff,
-                             buf, size, USB_CTRL_SET_TIMEOUT);
+                             buf, size, USB_CTRL_GET_TIMEOUT);
        if (err < 0)
                goto err_free_buf;
 
@@ -3699,7 +3699,7 @@ static int btusb_qca_send_vendor_req(struct usb_device *udev, u8 request,
         */
        pipe = usb_rcvctrlpipe(udev, 0);
        err = usb_control_msg(udev, pipe, request, USB_TYPE_VENDOR | USB_DIR_IN,
-                             0, 0, buf, size, USB_CTRL_SET_TIMEOUT);
+                             0, 0, buf, size, USB_CTRL_GET_TIMEOUT);
        if (err < 0) {
                dev_err(&udev->dev, "Failed to access otp area (%d)", err);
                goto done;