]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commitdiff
Bluetooth: btmtk: refactor endpoint lookup
authorJohan Hovold <johan@kernel.org>
Mon, 30 Mar 2026 09:41:34 +0000 (11:41 +0200)
committerLuiz Augusto von Dentz <luiz.von.dentz@intel.com>
Mon, 13 Apr 2026 13:18:16 +0000 (09:18 -0400)
Use the common USB helper for looking up bulk and interrupt endpoints
instead of open coding.

Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
drivers/bluetooth/btmtk.c

index 55516b4602db6227c605e2dbdddd004df880e6d0..c3e5975b9f3793a148954e0cb2cf18191622ba90 100644 (file)
@@ -995,7 +995,7 @@ static int __set_mtk_intr_interface(struct hci_dev *hdev)
 {
        struct btmtk_data *btmtk_data = hci_get_priv(hdev);
        struct usb_interface *intf = btmtk_data->isopkt_intf;
-       int i, err;
+       int err;
 
        if (!btmtk_data->isopkt_intf)
                return -ENODEV;
@@ -1006,29 +1006,10 @@ static int __set_mtk_intr_interface(struct hci_dev *hdev)
                return err;
        }
 
-       btmtk_data->isopkt_tx_ep = NULL;
-       btmtk_data->isopkt_rx_ep = NULL;
-
-       for (i = 0; i < intf->cur_altsetting->desc.bNumEndpoints; i++) {
-               struct usb_endpoint_descriptor *ep_desc;
-
-               ep_desc = &intf->cur_altsetting->endpoint[i].desc;
-
-               if (!btmtk_data->isopkt_tx_ep &&
-                   usb_endpoint_is_int_out(ep_desc)) {
-                       btmtk_data->isopkt_tx_ep = ep_desc;
-                       continue;
-               }
-
-               if (!btmtk_data->isopkt_rx_ep &&
-                   usb_endpoint_is_int_in(ep_desc)) {
-                       btmtk_data->isopkt_rx_ep = ep_desc;
-                       continue;
-               }
-       }
-
-       if (!btmtk_data->isopkt_tx_ep ||
-           !btmtk_data->isopkt_rx_ep) {
+       err = usb_find_common_endpoints(intf->cur_altsetting, NULL, NULL,
+                                       &btmtk_data->isopkt_rx_ep,
+                                       &btmtk_data->isopkt_tx_ep);
+       if (err) {
                bt_dev_err(hdev, "invalid interrupt descriptors");
                return -ENODEV;
        }