Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp5860581rdb; Thu, 14 Dec 2023 01:23:33 -0800 (PST) X-Google-Smtp-Source: AGHT+IEO2TDdISkJrnMeBLDNhwTymISuXfV0iIQi/OrnQwBTKAezlQed7M/mtfleF/GoM1VdRwv9 X-Received: by 2002:a05:6808:211e:b0:3b8:3e9c:af97 with SMTP id r30-20020a056808211e00b003b83e9caf97mr12112977oiw.48.1702545812925; Thu, 14 Dec 2023 01:23:32 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702545812; cv=none; d=google.com; s=arc-20160816; b=dsG9bbskZUoq8wVYGz0pStUYJ1uERDoLpnSy2Wd6aLS8RbYaPzp6LFpBYi79L545JM XwD+gnqSWHMZBuSv7pKdEkTy4bwtu16DrH55fCx8/Uq936uLwAqFjdrOz6az1KDGxm1h Us/fizm3wndIvAmr6RHitKLiEf77MlmZeO+gYyc6sMRU97uDFKAIReLNWTALD3zieUWW j4l0gBf9CrIXmo5j/LYUXYdrKeqn/DQ0S6LYkPNK1ECRZxoHmNp0x0G6ZGg5eSfK/6JG SfzgG8a7yaVgJ7l4ZRPGXVP4UutqEB3eLaRaFhdU50VdTjhdzWKOownkQ6zeEGuLzg2G B+ug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=qooKP2HsiHgDqnQG/MiDCCu3acZz5StldDyLPzc3OCc=; fh=ItjTqY7FYy7/v+cmxJZUTMi+gg9TteCkFbdek57nt7E=; b=kda8ftvYAlQrML1suCCe8+SMA+07QJz1lv7Jk53ebovasmmYOlBs4i9qCI9p+d9OsZ pG24bdSM6P7jkpPJbEVnRTi3Y2g+gDFWmJEGnYpRxLqxl/xifFnV8B4Etyy4F1BhaeJ8 R5o/T056qco0UJW7pqgLcOR+SS/1DkwB5i7C6RGQtTft/fpdwW75pxipBRw3Q07AQE7V pNf+dYL6HIdztEpikpzTx7DmT3xmDF8DrI52UjUHldNDfbHSynws1zrq2QNwFLrahV90 7To0dsbPy6kx6NAKyzfRZYcQaLm83GTawcAbnLoi8YwApIBjo28hBXTACec6mlG7ZE/K CmBg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@163.com header.s=s110527 header.b=eAMdi4I+; spf=pass (google.com: domain of linux-bluetooth+bounces-583-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-bluetooth+bounces-583-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=163.com Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id c18-20020a0ce652000000b0067ad2512e80si15371253qvn.242.2023.12.14.01.23.32 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Dec 2023 01:23:32 -0800 (PST) Received-SPF: pass (google.com: domain of linux-bluetooth+bounces-583-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@163.com header.s=s110527 header.b=eAMdi4I+; spf=pass (google.com: domain of linux-bluetooth+bounces-583-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-bluetooth+bounces-583-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=163.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id A0F651C20A7D for ; Thu, 14 Dec 2023 09:23:32 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 72A9F2E65B; Thu, 14 Dec 2023 09:23:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=163.com header.i=@163.com header.b="eAMdi4I+" X-Original-To: linux-bluetooth@vger.kernel.org Received: from m15.mail.163.com (m15.mail.163.com [45.254.50.219]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id D87B9A6; Thu, 14 Dec 2023 01:23:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=qooKP 2HsiHgDqnQG/MiDCCu3acZz5StldDyLPzc3OCc=; b=eAMdi4I+FliAsC7aQqgrF rVEomt0hrSJSwAj187zTqQ/ynpKPConXaCaHFHps1oQ2GffVjg8IjDk46LGATtRw 6OATL5B3CmBPD/WxSqy4dO5AvW5z6YsfAvw1jZvdPbLKRxJtJJTQ7vpKlkTgidUp +3AiJno6CUFGe/OCEJuo6U= Received: from WH-D-007635B.QUECTEL.COM (unknown [223.76.229.213]) by zwqz-smtp-mta-g2-1 (Coremail) with SMTP id _____wDXH_9xyXpl+qqDFg--.26059S2; Thu, 14 Dec 2023 17:22:58 +0800 (CST) From: 15013537245@163.com To: marcel@holtmann.org, johan.hedberg@gmail.com, luiz.dentz@gmail.com Cc: linux-bluetooth@vger.kernel.org, linux-kernel@vger.kernel.org, zhongjun.yu@quectel.com, Clancy Shang Subject: [PATCH] Bluetooth: hci_sync: fix BR/EDR wakeup bug Date: Thu, 14 Dec 2023 17:22:55 +0800 Message-Id: <20231214092255.1018859-1-15013537245@163.com> X-Mailer: git-send-email 2.25.1 Precedence: bulk X-Mailing-List: linux-bluetooth@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CM-TRANSID:_____wDXH_9xyXpl+qqDFg--.26059S2 X-Coremail-Antispam: 1Uf129KBjvJXoWrKFWrJFWfArW3Cry8WFW7urg_yoW8JrWxpF y2kFZ3trZ5JrWaka43A3W0gFyUAF9YgFs3CFWDt345X3yaqr48trWjkr17WF18CrZ2kF1f ZF4UtwsxW34kCa7anT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07jvLvtUUUUU= X-CM-SenderInfo: rprviiitvtljiuv6il2tof0z/xtbBEhVG12VOA8l3BQAAsF From: Clancy Shang when Bluetooth set the event mask and enter suspend, the controller has hci mode change event comming,it cause controller can not enter sleep mode. so it should to set the hci mode change event mask before enter suspend Signed-off-by: Clancy Shang --- net/bluetooth/hci_sync.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/net/bluetooth/hci_sync.c b/net/bluetooth/hci_sync.c index a15ab0b874a9..a26a58cb2c38 100644 --- a/net/bluetooth/hci_sync.c +++ b/net/bluetooth/hci_sync.c @@ -3800,12 +3800,14 @@ static int hci_set_event_mask_sync(struct hci_dev *hdev) if (lmp_bredr_capable(hdev)) { events[4] |= 0x01; /* Flow Specification Complete */ - /* Don't set Disconnect Complete when suspended as that - * would wakeup the host when disconnecting due to - * suspend. + /* Don't set Disconnect Complete and mode change when + * suspended as that would wakeup the host when disconnecting + * due to suspend. */ - if (hdev->suspended) + if (hdev->suspended) { events[0] &= 0xef; + events[2] &= 0xf7; + } } else { /* Use a different default for LE-only devices */ memset(events, 0, sizeof(events)); -- 2.25.1