Bluetooth: btmtkuart: Use serdev_device_write_buf() instead of serdev_device_write()
authorZijun Hu <zijuhu@codeaurora.org>
Fri, 29 May 2020 15:58:56 +0000 (23:58 +0800)
committerMarcel Holtmann <marcel@holtmann.org>
Mon, 1 Jun 2020 06:05:07 +0000 (08:05 +0200)
serdev_device_write() is not appropriate at here because
serdev_device_write_wakeup() is not used to release completion hold
by the former at @write_wakeup member of struct serdev_device_ops.

Fix by using serdev_device_write_buf() instead of serdev_device_write().

Signed-off-by: Zijun Hu <zijuhu@codeaurora.org>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
drivers/bluetooth/btmtkuart.c

index 8a81fbca5c9d881584febb1606efb1b0e5f89e5d..6c40bc75fb5b8d5c9798f4bbbcb6a1d82b087d71 100644 (file)
@@ -695,8 +695,7 @@ static int btmtkuart_change_baudrate(struct hci_dev *hdev)
 
        /* Send a dummy byte 0xff to activate the new baudrate */
        param = 0xff;
-       err = serdev_device_write(bdev->serdev, &param, sizeof(param),
-                                 MAX_SCHEDULE_TIMEOUT);
+       err = serdev_device_write_buf(bdev->serdev, &param, sizeof(param));
        if (err < 0 || err < sizeof(param))
                return err;