From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-20.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8B348C07E96 for ; Tue, 6 Jul 2021 11:48:17 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 76B5761F7D for ; Tue, 6 Jul 2021 11:48:17 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239061AbhGFLtY (ORCPT ); Tue, 6 Jul 2021 07:49:24 -0400 Received: from mail.kernel.org ([198.145.29.99]:47598 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237267AbhGFLgD (ORCPT ); Tue, 6 Jul 2021 07:36:03 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 4CD5561EEC; Tue, 6 Jul 2021 11:26:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1625570791; bh=qKftyMldNJJkti1WY/IjZLiVzOId06DRlCQU7Ju/szM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=Wz3YaQHQCbwdAR8rv0Sn2KP3pbmG6KKr11F8iucnnTnhEivpF8zbAgGvTOHIZJ6oS 9xhd/GiMyP5LcjxUAu4qKYY7Yk8FiFC2/NZm0tntrFMthUmxlTnD2NygbUQtuGKMfH 0ijd5oLTgMwK7IwMxRQR1H48XSvJljABH5q4NlHfRDpIUoIP7H5jxFzXAXFTOktYGU kVmjgCCDSDUeGNsh98Ipg3hPNq6FLdAcWFMhbxUilGnNv8GgKVONAn2I39Z//snv1j YUdWizdo+oOV8EYP0jQn6vrf6nMIZ49Dphx/ZNEV2DtBc33hnIoFzNkcFjahT7KjpK tO4S0hEEh5yBg== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Tim Jiang , Marcel Holtmann , Sasha Levin , linux-bluetooth@vger.kernel.org Subject: [PATCH AUTOSEL 5.4 70/74] Bluetooth: btusb: fix bt fiwmare downloading failure issue for qca btsoc. Date: Tue, 6 Jul 2021 07:24:58 -0400 Message-Id: <20210706112502.2064236-70-sashal@kernel.org> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210706112502.2064236-1-sashal@kernel.org> References: <20210706112502.2064236-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-bluetooth@vger.kernel.org From: Tim Jiang [ Upstream commit 4f00bfb372674d586c4a261bfc595cbce101fbb6 ] This is btsoc timing issue, after host start to downloading bt firmware, ep2 need time to switch from function acl to function dfu, so host add 20ms delay as workaround. Signed-off-by: Tim Jiang Signed-off-by: Marcel Holtmann Signed-off-by: Sasha Levin --- drivers/bluetooth/btusb.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/bluetooth/btusb.c b/drivers/bluetooth/btusb.c index 27ff7a6e2fc9..6d643651d69f 100644 --- a/drivers/bluetooth/btusb.c +++ b/drivers/bluetooth/btusb.c @@ -3263,6 +3263,11 @@ static int btusb_setup_qca_download_fw(struct hci_dev *hdev, sent += size; count -= size; + /* ep2 need time to switch from function acl to function dfu, + * so we add 20ms delay here. + */ + msleep(20); + while (count) { size = min_t(size_t, count, QCA_DFU_PACKET_LEN); -- 2.30.2