From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B7B653ACEFE; Mon, 23 Mar 2026 14:09:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774274958; cv=none; b=QR6jGvzfT29VyG0QrFXeth0M9ks9Vy1p9D/MHgw7xRqToO9gKDy8Y8GmTBrcf8bwJWns4Iq/PHcR7FtUrJxX9jmqrCxvAj2uREQ71sXAXbzJf1Dkk8voWXGANRIRe+Ro4RL70gSEbDyHuLUXOtuRqB5sA+CNPQMpNOhMpIxCuLE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774274958; c=relaxed/simple; bh=kkyGQyF7ihaWwPVKsXkz7NqsWRXlrYNlGy2QpvuQD+U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=skCFdW79jPAvpL+3MKEsiMNOVqjMiVZLsULLansn4gcrCwecpjPqy/cTU6789bGVbv58v55O2f14DluhFaH3/rbKxFf3zaHBV2TS3td7QpY9r0wFq6t1vZ/G2QpAtD6c+WYVwnbAkYaggIDTuV+rICU1O7BXTypKAjc7Zry/P4g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=KyKwjM+O; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="KyKwjM+O" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 139BDC2BC9E; Mon, 23 Mar 2026 14:09:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1774274958; bh=kkyGQyF7ihaWwPVKsXkz7NqsWRXlrYNlGy2QpvuQD+U=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KyKwjM+OvonOlBCfgrUcvx5zBwTXeJhuXGNJwuwvyxJgQl+jmoIO7LGe2L4cTKvCN htFXFetVKRsmfJosF38g0usoBg3CyiILLaOVhuNRfCXdOKhcCRQvDncO3oR8be9DJm cHJjutIuTRLH6JbAUz93+dRzvyis9p0yw1LYi/rU= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Bartosz Golaszewski , Dmitry Baryshkov , Luiz Augusto von Dentz , Sasha Levin Subject: [PATCH 6.18 130/212] Bluetooth: qca: fix ROM version reading on WCN3998 chips Date: Mon, 23 Mar 2026 14:45:51 +0100 Message-ID: <20260323134507.881549375@linuxfoundation.org> X-Mailer: git-send-email 2.53.0 In-Reply-To: <20260323134503.770111826@linuxfoundation.org> References: <20260323134503.770111826@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.18-stable review patch. If anyone has any objections, please let me know. ------------------ From: Dmitry Baryshkov [ Upstream commit 99b2c531e0e797119ae1b9195a8764ee98b00e65 ] WCN3998 uses a bit different format for rom version: [ 5.479978] Bluetooth: hci0: setting up wcn399x [ 5.633763] Bluetooth: hci0: QCA Product ID :0x0000000a [ 5.645350] Bluetooth: hci0: QCA SOC Version :0x40010224 [ 5.650906] Bluetooth: hci0: QCA ROM Version :0x00001001 [ 5.665173] Bluetooth: hci0: QCA Patch Version:0x00006699 [ 5.679356] Bluetooth: hci0: QCA controller version 0x02241001 [ 5.691109] Bluetooth: hci0: QCA Downloading qca/crbtfw21.tlv [ 6.680102] Bluetooth: hci0: QCA Downloading qca/crnv21.bin [ 6.842948] Bluetooth: hci0: QCA setup on UART is completed Fixes: 523760b7ff88 ("Bluetooth: hci_qca: Added support for WCN3998") Reviewed-by: Bartosz Golaszewski Signed-off-by: Dmitry Baryshkov Signed-off-by: Luiz Augusto von Dentz Signed-off-by: Sasha Levin --- drivers/bluetooth/btqca.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/bluetooth/btqca.c b/drivers/bluetooth/btqca.c index 7c958d6065bec..86a48d009d1ba 100644 --- a/drivers/bluetooth/btqca.c +++ b/drivers/bluetooth/btqca.c @@ -804,6 +804,8 @@ int qca_uart_setup(struct hci_dev *hdev, uint8_t baudrate, */ if (soc_type == QCA_WCN3988) rom_ver = ((soc_ver & 0x00000f00) >> 0x05) | (soc_ver & 0x0000000f); + else if (soc_type == QCA_WCN3998) + rom_ver = ((soc_ver & 0x0000f000) >> 0x07) | (soc_ver & 0x0000000f); else rom_ver = ((soc_ver & 0x00000f00) >> 0x04) | (soc_ver & 0x0000000f); -- 2.51.0