From: sashiko-bot@kernel.org
To: "Jens Glathe" <jens.glathe@oldschoolsolutions.biz>
Cc: linux-pci@vger.kernel.org
Subject: Re: [PATCH RFC] power: sequencing: pcie-m2: stop requiring subsystem IDs for WCN6855/WCN7850
Date: Fri, 06 Nov 2026 11:26:38 +0000 [thread overview]
Message-ID: <sashiko-outbox-201312@kernel.org> (raw)
In-Reply-To: <20261106-pwrseq-bt-subsystem-v1-1-11fb09f63c93@oldschoolsolutions.biz>
Thank you for your contribution! Sashiko AI review found 1 potential
issue to consider:
- [High] pwrseq: pcie-m2: bare PCI_DEVICE() creates bogus serdev on
USB-BT cards
--
commit 651d16502b81077112cba212f5fb84dc03306321
Author: Jens Glathe <jens.glathe@oldschoolsolutions.biz>
power: sequencing: pcie-m2: stop requiring subsystem IDs for WCN6855/WCN7850
This commit replaces the subsystem-specific PCI_DEVICE_SUB() entries for
Qualcomm WCN6855 (0x1103) and WCN7850 (0x1107) in pwrseq_m2_pci_ids[] with
bare PCI_DEVICE() entries.
> diff --git a/drivers/power/sequencing/pwrseq-pcie-m2.c b/drivers/power/sequencing/pwrseq-pcie-m2.c
> index 56c5d51293c10..72c721149dfae 100644
> --- a/drivers/power/sequencing/pwrseq-pcie-m2.c
> +++ b/drivers/power/sequencing/pwrseq-pcie-m2.c
> @@ -217,15 +217,9 @@ static const struct pci_device_id pwrseq_m2_pci_ids[] = {
> .driver_data = (kernel_ulong_t)"nxp,88w8987-bt" },
> { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x1103, PCI_VENDOR_ID_QCOM, 0x0108),
> .driver_data = (kernel_ulong_t)"qcom,qca2066-bt" },
> - { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x1103, PCI_VENDOR_ID_FOXCONN, 0xe105),
> + { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x1103),
> .driver_data = (kernel_ulong_t)"qcom,wcn6855-bt" },
> - { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x1103, PCI_VENDOR_ID_QCOM, 0x337e),
> - .driver_data = (kernel_ulong_t)"qcom,wcn6855-bt" },
> - { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x1107, PCI_VENDOR_ID_QCOM, 0x337c),
> - .driver_data = (kernel_ulong_t)"qcom,wcn7850-bt" },
> - { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x1107, PCI_VENDOR_ID_LENOVO, 0xe0e9),
> - .driver_data = (kernel_ulong_t)"qcom,wcn7850-bt" },
> - { PCI_DEVICE_SUB(PCI_VENDOR_ID_QCOM, 0x1107, PCI_VENDOR_ID_FOXCONN, 0xe0ee),
> + { PCI_DEVICE(PCI_VENDOR_ID_QCOM, 0x1107),
> .driver_data = (kernel_ulong_t)"qcom,wcn7850-bt" },
> { } /* Sentinel */
> };
[Severity: High]
Won't matching bare 0x1103 and 0x1107 device IDs reintroduce the regression
fixed by a39ac4651e3b ("power: sequencing: pcie-m2: Match WCN6855 and
WCN7851 UART BT variants by subdevice ID") whenever a USB-BT M.2 card is
plugged into a socketed M.2 Key E slot?
The pcie-m2-e-connector node describes the physical M.2 slot wiring on the
host board, not the card installed in it. Boards with a general-purpose M.2
Key E socket (such as arch/arm64/boot/dts/qcom/hamoa-iot-evk.dts) wire the
SoC UART to the slot and define port@3 unconditionally in their static DT.
When a USB-BT WCN6855 or WCN7850/WCN7851 card is inserted into such a slot,
pwrseq_pcie_m2_create_serdev() -> pwrseq_pcie_m2_create_serdev_one() sees
port@3 on ctx->dev and matches 0x1103 or 0x1107 in pwrseq_m2_pci_ids[]. It
then creates a bogus bluetooth OF node and UART serdev device, causing
hci_qca to bind alongside btusb and fail with -ETIMEDOUT in qca_setup() on
the unconnected UART lines.
Also, the commit message notes that Lenovo T14s Gen 6 (17aa:e0e9) is missing
from the table, but 58a003302481 ("power: sequencing: pcie-m2: Add Lenovo
ThinkPad T14s gen6 WCN7850 subsystem PCI ids") already added that entry
above.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261106-pwrseq-bt-subsystem-v1-1-11fb09f63c93@oldschoolsolutions.biz?part=1
next prev parent reply other threads:[~2026-11-06 11:26 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-06 11:09 [PATCH RFC] power: sequencing: pcie-m2: stop requiring subsystem IDs for WCN6855/WCN7850 Jens Glathe via B4 Relay
2026-11-06 11:09 ` Jens Glathe
2026-11-06 11:26 ` sashiko-bot [this message]
2026-11-06 18:30 ` Jens Glathe
2026-11-12 14:43 ` Manivannan Sadhasivam
2026-11-12 18:13 ` Jens Glathe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=sashiko-outbox-201312@kernel.org \
--to=sashiko-bot@kernel.org \
--cc=jens.glathe@oldschoolsolutions.biz \
--cc=linux-pci@vger.kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.