From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id E8F1C36F421 for ; Sat, 15 Aug 2026 11:01:47 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786791710; cv=none; b=JFEOu+kVRYe1ca/GCx75rL+2Rh2oyCSEP0QWPQyC2SUBNiMbaRDtZkRoIPtmkobuk6mvc+l4+BTEEBr9Hc+GIEfFJX+r+FN8+6Btm/S+i1F38etG1hZ2CZA1Pi9VCtvV6UERxt+l12oYmb598CCRUtxqQKZpEzKWQRM54oaQeZw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1786791710; c=relaxed/simple; bh=b5LQIwGVpyvdNO/WfDgWI7hUw5OYOoA0sgu5/kZeQg4=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=kpfJ8DYsQPnRE08JiMqlIt5XZcC/AogL9qBaiApmpuqxoSNwkGXR14SBFDoMQXQt6fryU95/txXlKZYiTC6fbLA/+ZWJOWQSyCSfzpAKVCVCrRcEJW0aFJMxI9DpS4enVAtgQkElKfwP7TzTd9Nf26ZPShpakPI/vWlJFyvgbYY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=PD33yn7/; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="PD33yn7/" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-4998e0916faso3985765e9.2 for ; Sat, 15 Aug 2026 04:01:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1786791706; x=1787396506; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to:content-type; bh=9/9+rmVvmvs6s8dnr8ttRWG5a1oyP8FaGHhemcTL1GA=; b=PD33yn7/V8Rg9m4qaBE6Fr3fTo3JeIYd15yCFU7pDkX45Bzsh//zjYMcMmvXFE2cGZ PZvQZx4oaSn6jVkfVpeZhrnik2jE6uvZZUUeq/y+szBjkRW3EYmXWGFF/pJUDPNEn37O rSSFeoZooEu9AjhtNdlPKJDUG7viGhV8itJFRReymJ0+whDDHhUQc/Xbn66QSA1wPhwi 3LSUlyV7gUUctKt3cHr6jC0Y+V/TxpuNkAdJKqKeCxWdj5wnemgRlkQDOOR7eF/JXNjj Gv7/TKCE0Wi72ehIlfGyLLY3DIri7Hgvp1kOXZ/QtBtM2CGV5naPL3kTnHhBKrSQd6UI GQjg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1786791706; x=1787396506; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to:content-type; bh=9/9+rmVvmvs6s8dnr8ttRWG5a1oyP8FaGHhemcTL1GA=; b=CrhfJpzsW8N/ql8o2TGgKRQ/hzP9RTwTFGpdvnoU6SjN+MJCFnAPeLGnV0hkTIi9wq 6XDyzzQillseNjukOqd8K4FbgKaguxAj3NkWs2EmagGd5vEt1OdiTiTnVlt2/tQDDqtV j/x+wQ9+KV8gksM3MXWUw7dmMeid4k0nRzLfVb6XSTLLMVZ7kptXL3gYEof6EzkEhYCi DjiHDBcJG6jnnB/yTobmyhIfavkeYMy0qgsSx+4kaKz1edh6OAeiprelwYlmo9G2aHNq 69Kez2cL/PtzBFBjUgVFi/MlC9nmEZJ2cM0VlelQ5SWEGzqpwXqehC6bIpTj9TPjZPZI Ovjg== X-Forwarded-Encrypted: i=1; AHgh+RqxZgJYBWvDcXM6hRtfTv7RFfGsQpbut+rc+q4OPuF+qSG+VV8sj6W2gKxv1BqS7hEgqgyQRqUqDvyUZxM=@vger.kernel.org X-Gm-Message-State: AOJu0Yxbso76JPZsi/fIIgfqWxZbT90rMH/EVmvbA7AZBY1U/aL+le+S o7dyzpEMuN2bpVH9r9Cuxxypj71vmsLjMhaGQmPGiSwDUWJf0Cu0PU8/ X-Gm-Gg: AR+sD11iEzOANsZN6XZI81BBFhByoRYTwXnEv6BjgUcvl2w4718xzgLvdHtDVEG6LtV KIJ9JWuhwkzz0LyZE8fDAn77i24OWynkzf/Y1apJz0YUwTmFSsrK7O6HNHgg47ihqlOMC0PlJdh kjXlH4WKrTIqLgHwF8ABdo1jO8C+rwrlqTy7UO/96xTSbeGi0QLRMtCDrONidUgTRX4+mF0cfzm d9pNDrm24aclMv4uicEAaPQBJ9UeG1xaJUd2Trxjh6D66fQ5Fo3qFj6uNtCmf4CCs/v+YTi/EWW XEHybWpraGOxXtFt3YgItvP8giR+vDdaegbixuJd6J1OWzfJ1MRqx4ZcOonmxUU5Xb9zNRPztRZ NZwvJGoW8hSd8fJE5O6oEfxatZLE6LVhK8vufSlSNUnqd9h3vj+06SnvngeUsJOjNfd24Qe8MUq N2CO+Nd285ltn8sW8Ndr4Q3LbzGZGiARkXI9UjXvBRkWuP/kmO5uepXtX1K3AgdSC0CNap2DZlZ SJ8Kthsu4iV X-Received: by 2002:a05:600c:3b1d:b0:499:87b6:f3c0 with SMTP id 5b1f17b1804b1-4998807e4c9mr165228545e9.14.1786791705919; Sat, 15 Aug 2026 04:01:45 -0700 (PDT) Received: from archlinux.tailbe3ea7.ts.net ([185.19.153.11]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-49988b1d8f4sm133728035e9.11.2026.08.15.04.01.44 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 15 Aug 2026 04:01:45 -0700 (PDT) From: Ismail Tarim To: Marcel Holtmann , Luiz Augusto von Dentz , linux-bluetooth@vger.kernel.org Cc: Jing Cai , Sean Wang , Chris Lu , linux-mediatek@lists.infradead.org, linux-kernel@vger.kernel.org, Ismail Tarim Subject: [PATCH 2/2] Bluetooth: btmtk: Do not discard the subsystem reset timeout Date: Sat, 15 Aug 2026 14:01:19 +0300 Message-ID: <20260815110119.11301-3-ismailtarim7@gmail.com> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260815110119.11301-1-ismailtarim7@gmail.com> References: <20260815110119.11301-1-ismailtarim7@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit When the MTK_BT_RST_DONE poll times out, btmtk_usb_subsys_reset() logs "Reset timeout" and keeps the error in err, but err is then overwritten by the return value of the following btmtk_usb_id_get() call, so the timeout is never reported to the caller. Commit 25b6d7593a3a ("Bluetooth: btmtk: introduce btmtk reset work") discarded the return value of the chip id read, so the function returned the timeout error as intended. Commit 3dcb122b3064 ("Bluetooth: btusb: mediatek: return error for failed reg access") started assigning err at that call and silently dropped it. Keep the timeout in a separate variable and return it, restoring the original behaviour without changing the control flow. Fixes: 3dcb122b3064 ("Bluetooth: btusb: mediatek: return error for failed reg access") Signed-off-by: Ismail Tarim --- drivers/bluetooth/btmtk.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/drivers/bluetooth/btmtk.c b/drivers/bluetooth/btmtk.c index dc702c0a6034..c0ed51567ed4 100644 --- a/drivers/bluetooth/btmtk.c +++ b/drivers/bluetooth/btmtk.c @@ -860,6 +860,7 @@ static u32 btmtk_usb_reset_done(struct hci_dev *hdev) int btmtk_usb_subsys_reset(struct hci_dev *hdev, u32 dev_id) { + int reset_err = 0; u32 val; int err; @@ -958,8 +959,10 @@ int btmtk_usb_subsys_reset(struct hci_dev *hdev, u32 dev_id) err = readx_poll_timeout(btmtk_usb_reset_done, hdev, val, val & MTK_BT_RST_DONE, 20000, 1000000); - if (err < 0) + if (err < 0) { bt_dev_err(hdev, "Reset timeout"); + reset_err = err; + } if (dev_id == 0x7922) { err = btmtk_usb_uhw_reg_write(hdev, MTK_UDMA_INT_STA_BT, 0x000000FF); @@ -973,7 +976,7 @@ int btmtk_usb_subsys_reset(struct hci_dev *hdev, u32 dev_id) return err ? err : -ENODEV; } - return err; + return reset_err; } EXPORT_SYMBOL_GPL(btmtk_usb_subsys_reset); -- 2.55.0