Re: [PATCH v2] wifi: ath11k: Add two missing Lenovo IDs to the quirk table
Kyle Farnung <[email protected]> Wed, 13 May 2026 22:01:35 -0700
| Newsgroups | org.infradead.lists.ath11k,org.kernel.vger.linux-kernel,org.kernel.vger.linux-wireless |
|---|---|
| Message-ID | <CAOPSVF2xwpR63MmngbG06_wPtQe2tOoVe87fanzXGRHBeJGYUA@mail.gmail.com> |
On Wed, May 13, 2026 at 10:57 AM Santiago Ruano Rincón <[email protected]> wrote: > > El 12/05/26 a las 20:30, Kyle Farnung escribió: > > On Tue, May 12, 2026 at 5:03 PM Jeff Johnson > > <[email protected]> wrote: > > > > > > On 5/6/2026 12:54 PM, Santiago Ruano Rincón wrote: > > > > Commit 0eb002c93c3b4 ("wifi: ath11k: Add missing platform IDs for quirk > > > > table") added some Lenovo platform IDs to the quirk table to address a > > > > wakeup from suspend issue [1]. However, at least P14s Gen 5 AMD, as > > > > reported by Kyle Farnung [2], and P14s Gen 3 AMD are missing in the > > > > table. This commit adds the two corresponding Lenovo version IDs for > > > > each. > > > > > > > > [1] https://bugzilla.kernel.org/show_bug.cgi?id=219196 > > > > [2] https://bugzilla.kernel.org/show_bug.cgi?id=219196#c23 > > > > > > > > Tested-on: P14s G3 AMD running 7.0.3. > > > > > > > > Fixes: ce8669a27016 ("wifi: ath11k: determine PM policy based on machine model") > > > > Co-authored-by: Kyle Farnung <[email protected]> > > > > > > This is not a standard Linux kernel commit tag. > > > Co-developed-by: could be used, but I'd need a Signed-off-by: from Kyle > > > > > > Kyle, if you'd like these added please reply with both a Co-developed-by and > > > a Signed-off-by tag > > > > I re-tested the bug behavior on the v7.0.4 tag and found that I'm not able > > to reproduce it on my device. I put the device to sleep and then unplugged > > and replugged power; it never woke up until I intentionally woke it. > > > > Based on discussion in [3], I narrowed my issue with wi-fi disassociation > > on wake to a suspect commit [4]. I'm developing a patch that clears the rdp > > and wrp buffers during wake to clear out any stale state in the LMAC rings. > > I'll submit that once I'm done testing it. > > > > Santiago: Are you seeing the sleep/wake bug from [1] or something similar > > to what I was seeing around disconnections on wake? > > I was seeing wifi issues after wake-up, including disassociations, as > described at https://bugs.debian.org/1132343. Thanks for the confirmation. I went ahead and submitted a patch for the suspected SRNG restart issue in [5]. For my P14s Gen 5 AMD, I don't think the PM quirk is the right fix at this point, so please don't include the 21ME/21MF IDs on my account for now. This new patch seems like a better match for the disassociation issue I was seeing after resume. Please try it out if you have a chance. I've done around 12 sleep/wake cycles so far without issue. [5] https://lore.kernel.org/all/20260513-kfarnung-ath11k-srng-clear-pointer-state-v1-1-bc700dd8b333@gmail.com/ > > > > > [3] https://lore.kernel.org/all/CAOPSVF04q6uvVdq8GTRLHBrVMdpt9=o9wVcFMc6f-yhmSBcZqQ@mail.gmail.com/ > > [4] 32be3ca4cf78b ("wifi: ath11k: HAL SRNG: don't deinitialize and > > re-initialize again") > > > > > > > > I can apply these fixes when I process the patch in my tree. > > > > > > https://www.kernel.org/doc/html/latest/process/submitting-patches.html#when-to-use-acked-by-cc-and-co-developed-by > > > > > > > Signed-off-by: Santiago Ruano Rincón <[email protected]> > > > > --- > > > > Changes in v2: > > > > - Merged the Lenovo P14s G5 AMD #1 and #2 related changes proposed by > > > > Kyle Farnung in > > > > https://lore.kernel.org/all/[email protected]/ > > > > - Added Kyle Farnung as Co-author of the commit > > > > - Added the second ID of Lenovo P14s G3 AMD, and adapt the comments > > > > accordingly > > > > - v1: https://lore.kernel.org/ath11k/[email protected]/ > > > > --- > > > > drivers/net/wireless/ath/ath11k/core.c | 28 ++++++++++++++++++++++++++ > > > > 1 file changed, 28 insertions(+) > > > > > > > > diff --git a/drivers/net/wireless/ath/ath11k/core.c b/drivers/net/wireless/ath/ath11k/core.c > > > > index 3f6f4db5b7ee..c1ce0a11af44 100644 > > > > --- a/drivers/net/wireless/ath/ath11k/core.c > > > > +++ b/drivers/net/wireless/ath/ath11k/core.c > > > > @@ -957,6 +957,20 @@ static const struct dmi_system_id ath11k_pm_quirk_table[] = { > > > > DMI_MATCH(DMI_PRODUCT_NAME, "21K4"), > > > > }, > > > > }, > > > > + { > > > > + .driver_data = (void *)ATH11K_PM_WOW, > > > > + .matches = { /* P14s G3 AMD #1 */ > > > > + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"), > > > > + DMI_MATCH(DMI_PRODUCT_NAME, "21J5"), > > > > + }, > > > > + }, > > > > + { > > > > + .driver_data = (void *)ATH11K_PM_WOW, > > > > + .matches = { /* P14s G3 AMD #2 */ > > > > + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"), > > > > + DMI_MATCH(DMI_PRODUCT_NAME, "21J6"), > > > > + }, > > > > + }, > > > > { > > > > .driver_data = (void *)ATH11K_PM_WOW, > > > > .matches = { /* P14s G4 AMD #1 */ > > > > @@ -971,6 +985,20 @@ static const struct dmi_system_id ath11k_pm_quirk_table[] = { > > > > DMI_MATCH(DMI_PRODUCT_NAME, "21K6"), > > > > }, > > > > }, > > > > + { > > > > + .driver_data = (void *)ATH11K_PM_WOW, > > > > + .matches = { /* P14s G5 AMD #1 */ > > > > + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"), > > > > + DMI_MATCH(DMI_PRODUCT_NAME, "21ME"), > > > > + }, > > > > + }, > > > > + { > > > > + .driver_data = (void *)ATH11K_PM_WOW, > > > > + .matches = { /* P14s G5 AMD #2 */ > > > > + DMI_MATCH(DMI_BOARD_VENDOR, "LENOVO"), > > > > + DMI_MATCH(DMI_PRODUCT_NAME, "21MF"), > > > > + }, > > > > + }, > > > > { > > > > .driver_data = (void *)ATH11K_PM_WOW, > > > > .matches = { /* T16 G2 AMD #1 */ > > >