[PATCH AUTOSEL 6.18] wifi: iwlwifi: pcie: add two LNL PCI IDs

From: Sasha Levin

Date: Mon Aug 31 2026 - 10:15:21 EST


From: Johannes Berg <johannes.berg@xxxxxxxxx>

[ Upstream commit 5f88b045d959f8a51757e0fde29d5d204da1176f ]

Add two PCI IDs for two WiFi-7 BE1735x Killer devices (these
are CRFs) so they work when put into the LNL platform.

Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>
Link: https://patch.msgid.link/20260515150751.d2e3c380227a.I791eef3dedc11a8b246ce3130a34018886e63d3f@changeid
Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@xxxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---

LLM Generated explanations, may be completely bogus:

## Phase 1: Commit Message Forensics

**Step 1.1 — Subject line**
- Record: `[wifi: iwlwifi: pcie] [add] two LNL PCI IDs for WiFi-7
BE1735x Killer CRF devices on Lunar Lake platform`

**Step 1.2 — Tags**
- Record:
- `Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx>` (author,
iwlwifi maintainer)
- `Signed-off-by: Miri Korenblit <miriam.rachel.korenblit@xxxxxxxxx>`
(series submitter; pipeline SOB ignored per instructions)
- `Link: https://patch.msgid.link/20260515150751.d2e3c380227a...`
(patch message link; fetch blocked by bot protection)
- No `Fixes:`, `Reported-by:`, `Tested-by:`, `Reviewed-by:`, `Cc:
stable@xxxxxxxxxxxxxxx`
- Notable: no syzbot/fuzzer involvement; this is hardware-enablement,
not a sanitizer bug

**Step 1.3 — Body analysis**
- Record:
- **Bug/problem:** Two PCI IDs (`0xA840:0x1735`, `0xA840:0x1736`) for
WiFi-7 BE1735x Killer CRF modules are missing from the iwlwifi PCI
ID table.
- **Symptom:** Devices on LNL (Lunar Lake) platform are not bound by
iwlwifi; WiFi is non-functional.
- **Root cause:** PCI subsystem cannot match unknown device IDs to the
existing `iwl_bz_mac_cfg` driver configuration.
- **Version info:** None in commit message.

**Step 1.4 — Hidden bug fix?**
- Record: Not a crash/leak/race fix. This is explicit **hardware
enablement** via PCI ID table entries — a recognized stable exception
category (new device IDs on an existing driver).

---

## Phase 2: Diff Analysis

**Step 2.1 — Inventory**
- Record:
- Files: `drivers/net/wireless/intel/iwlwifi/pcie/drv.c` (+2 lines, 0
removed)
- Functions: none modified; only `iwl_hw_card_ids[]` PCI ID table
extended
- Scope: single-file, surgical (2 lines)

**Step 2.2 — Code flow per hunk**
- Record:
- **Before:** PCI IDs `0xA840:0x1735` and `0xA840:0x1736` absent from
`iwl_hw_card_ids[]`; `pci_register_driver()` cannot match these
devices.
- **After:** Both IDs map to existing `iwl_bz_mac_cfg`, same as
adjacent Killer entries `0x1775`/`0x1776`.
- **Path affected:** PCI device enumeration / driver probe at boot or
hotplug.

**Step 2.3 — Bug mechanism**
- Record:
- Category: **Hardware enablement** (missing PCI ID entries)
- Mechanism: Without table entries, `iwl_pci_probe()` is never called
for these devices; iwlwifi does not load firmware or bring up WiFi.

**Step 2.4 — Fix quality**
- Record:
- Obviously correct: uses same `iwl_bz_mac_cfg` as sibling Bz/Killer
devices already in-tree.
- Minimal, no unrelated changes.
- Regression risk: very low — only extends an existing ID table; no
logic/locking/API changes.

---

## Phase 3: Git History Investigation

**Step 3.1 — Blame**
- Record: Local tree is a shallow checkout (`git rev-parse --is-shallow-
repository` → `true`); full per-line history unavailable. Insertion
point is adjacent to existing `0x1775`/`0x1776` Killer entries (lines
538–539), which use the same `iwl_bz_mac_cfg`. The missing-ID problem
is present in this tree because `0x1735`/`0x1736` are absent.

**Step 3.2 — Fixes: tag**
- Record: N/A — no `Fixes:` tag.

**Step 3.3 — File history**
- Record: Shallow history limits `git log` on `drv.c` (only one commit
visible). Patch is **patch 13/15** of `wifi: iwlwifi: updates -
2026-05-14` series, but this specific change is **standalone** — no
dependency on other series patches.

**Step 3.4 — Author context**
- Record: Johannes Berg is iwlwifi maintainer. Author also has 6 other
patches in the same series (UHR/NAN/debugfs work unrelated to this
2-line ID addition).

**Step 3.5 — Dependencies**
- Record: No prerequisites. `iwl_bz_mac_cfg` and the Bz PCI ID block
(`#if IS_ENABLED(CONFIG_IWLMVM) || IS_ENABLED(CONFIG_IWLMLD)`) already
exist in this tree. Patch applies cleanly (`git apply --check`
succeeded).

---

## Phase 4: Mailing List and External Research

**Step 4.1 — Original discussion**
- Record: Found in local mbox `v2_20260515_miriam_rachel_korenblit_wifi_
iwlwifi_updates_2026_05_14.mbx` as `[PATCH v2 13/15]`. Lore URL from
`Link:` tag could not be fetched (Anubis bot protection). `b4 dig -c`
could not be run (no commit hash in shallow tree for this patch).

**Step 4.2 — Reviewers**
- Record: This individual patch has only author SOBs. Other patches in
the series carry `Reviewed-by: Emmanuel Grumbach` and `Reviewed-by:
Johannes Berg`. No explicit stable nomination found in mbox grep.

**Step 4.3 — Bug report**
- Record: N/A — no `Reported-by:` or bugzilla/syzbot links. Problem is
hardware not working without driver binding.

**Step 4.4 — Series context**
- Record: Part of 15-patch iwlwifi update series; this patch only
touches `drv.c` (+2 PCI IDs). Self-contained for backport purposes.

**Step 4.5 — Stable list**
- Record: No stable-list discussion found (mbox grep for "stable" on
this patch returned no hits). Absence is not a negative signal per
instructions.

---

## Phase 5: Code Semantic Analysis

**Step 5.1 — Key functions**
- Record: `iwl_hw_card_ids[]` (modified), `iwl_pci_probe()`
(beneficiary), `iwl_pci_register_driver()` (registers ID table)

**Step 5.2 — Callers**
- Record:
- `iwl_pci_register_driver()` called from `iwl_drv_init()` in `iwl-
drv.c` at module init
- PCI core matches devices against `iwl_hw_card_ids[]` during
enumeration
- Common boot/hotplug path for any iwlwifi PCI hardware

**Step 5.3 — Callees**
- Record: On match, `iwl_pci_probe()` → `iwl_pci_gen1_2_probe()` with
`mac_cfg` from `ent->driver_data` (`iwl_bz_mac_cfg`).
`iwl_pci_find_dev_info()` provides optional friendly names but is not
required for probe.

**Step 5.4 — Reachability**
- Record: Any system with `0xA840:0x1735` or `0xA840:0x1736` hardware
(Killer BE1735x on LNL) hits this path at PCI probe. Without the IDs,
the driver never loads — WiFi is completely unavailable.

**Step 5.5 — Similar patterns**
- Record: Adjacent entries `0x1775`/`0x1776` (Killer BE1775) already
present with `iwl_bz_mac_cfg` and matching `IWL_DEV_INFO` name
entries. New IDs follow the identical pattern; only PCI table entries
are added (no new `IWL_DEV_INFO` for BE1735 — cosmetic naming only,
not functional).

---

## Phase 6: Cross-Reference Against Local Tree (6.18.44)

**Step 6.1 — Buggy code present?**
- Record: **YES.** Local tree is `v6.18.44` (`VERSION=6`,
`PATCHLEVEL=18`, `SUBLEVEL=44`). `0x1735`/`0x1736` are absent;
`0x1775`/`0x1776` and full `iwl_bz_mac_cfg` infrastructure exist.

**Step 6.2 — Backport complications**
- Record: **Clean apply expected.** Verified with `git apply --check`
against current `drv.c`. Insertion context matches exactly (after
`0x1776`, before `0x7740`).

**Step 6.3 — Related fixes already present?**
- Record: No existing commit adding `0x1735`/`0x1736` found (`git log
--grep="1735"` returned empty). Fix not yet in this tree.

---

## Phase 7: Subsystem and Maintainer Context

**Step 7.1 — Subsystem**
- Record: `drivers/net/wireless/intel/iwlwifi` — network wireless
driver. Criticality: **IMPORTANT** (common laptop WiFi hardware, not
core kernel, but affects connectivity for affected users).

**Step 7.2 — Activity**
- Record: iwlwifi actively maintained; Bz/MLD support (`CONFIG_IWLMLD`)
present in this tree with `mld/` subsystem, `cfg/bz.c`, and extensive
`0xA840` PCI ID table.

---

## Phase 8: Impact and Risk Assessment

**Step 8.1 — Who is affected**
- Record: Users with Killer WiFi-7 BE1735x CRF modules on Lunar Lake
(LNL) platforms running iwlwifi with `CONFIG_IWLMLD`/`CONFIG_IWLMVM`.
Driver-specific, but WiFi is essential for those machines.

**Step 8.2 — Trigger conditions**
- Record: Boot or PCI hotplug with `0xA840:0x1735` or `0xA840:0x1736`.
Deterministic — every such device is affected. Unprivileged users
cannot trigger the fix, but all users on this hardware are impacted
without it.

**Step 8.3 — Failure mode severity**
- Record: **HIGH** for affected users — WiFi hardware completely non-
functional (no driver binding). Not a kernel crash, but a total loss
of wireless connectivity on shipping hardware.

**Step 8.4 — Risk vs benefit**
- Record:
- **Benefit:** HIGH for LNL + BE1735x Killer users — enables WiFi on
hardware that otherwise has none.
- **Risk:** VERY LOW — 2-line PCI ID addition using existing, proven
`iwl_bz_mac_cfg`.
- **Ratio:** Strongly favors backport.

---

## Phase 9: Final Synthesis

**Step 9.1 — Evidence summary**

| FOR backport | AGAINST backport |
|---|---|
| Textbook PCI device ID addition (stable exception) | Not a
crash/security/data-corruption fix |
| Fixes real user-visible problem (no WiFi) | Hardware may be niche (LNL
+ specific Killer SKUs) |
| 2 lines, 1 file, applies cleanly | No `IWL_DEV_INFO` name entries
(cosmetic only) |
| Uses existing `iwl_bz_mac_cfg` | Part of larger series (but this patch
is standalone) |
| Author is iwlwifi maintainer | No explicit stable nomination in
available sources |
| Adjacent Killer IDs already in 6.18.44 | |

Unresolved: Lore thread content unavailable (bot protection); no commit
hash for `b4 dig -c`.

**Step 9.2 — Stable rules checklist**
1. Obviously correct and tested? **PASS** — trivial ID table extension;
maintainer-authored; series reviewed by Intel iwlwifi team.
2. Fixes real bug affecting users? **PASS** — WiFi non-functional
without driver binding on affected hardware.
3. Important issue? **PASS** — complete loss of wireless on shipping
hardware (HIGH for affected users).
4. Small and contained? **PASS** — 2 lines, 1 file.
5. No new features/APIs? **PASS** — only PCI IDs; exception category
explicitly allows this.
6. Can apply to local tree? **PASS** — verified clean apply to 6.18.44.

**Step 9.3 — Exception category**
- Record: **NEW DEVICE IDs** — adding PCI IDs to existing iwlwifi driver
with existing `iwl_bz_mac_cfg`. Driver and firmware support already
present.

**Step 9.4 — Decision rationale**
This commit adds two PCI IDs so Killer WiFi-7 BE1735x CRF modules on
Lunar Lake platforms bind to the existing iwlwifi Bz driver. Without it,
affected laptops have no WiFi at all. The change is minimal, uses an
already-supported MAC configuration identical to neighboring Killer
entries, applies cleanly to Linux 6.18.44, and falls squarely within the
stable exception for new device IDs on existing drivers.

---

## Verification

- [Phase 1] Parsed subject, body, tags from provided commit message and
mbox
- [Phase 2] Diff analysis: +2 lines in `iwl_hw_card_ids[]`,
`iwl_bz_mac_cfg` assignments
- [Phase 3] `git describe HEAD` → `v6.18.44`; shallow repo confirmed
- [Phase 3] `git log --grep="1735"` → no existing fix in tree
- [Phase 3] `git apply --check` with patch diff → applies cleanly
- [Phase 4] Mbox `v2_20260515_miriam_rachel_korenblit_wifi_iwlwifi_updat
es_2026_05_14.mbx` → patch 13/15 confirmed
- [Phase 4] WebFetch lore link → blocked (Anubis); no stable nomination
retrieved
- [Phase 4] `b4 dig -c` → not possible without commit hash
- [Phase 5] `grep iwl_pci_register_driver` → called from
`iwl_drv_init()` in `iwl-drv.c`
- [Phase 5] Read `iwl_pci_probe()` → uses `ent->driver_data` as
`mac_cfg`; no dependency on `iwl_pci_find_dev_info()` for binding
- [Phase 6] `grep 0x1735/0x1736` in `drv.c` → absent (bug present)
- [Phase 6] `grep 0x1775/0x1776` in `drv.c` → present with
`iwl_bz_mac_cfg`
- [Phase 6] `iwl_bz_mac_cfg` confirmed in `cfg/bz.c`
- [Phase 6] `CONFIG_IWLMLD` build integration confirmed in `Makefile`
and `drv.c`
- [Phase 8] Failure mode: no driver binding → WiFi non-functional on
affected hardware

**YES**

drivers/net/wireless/intel/iwlwifi/pcie/drv.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
index 706dc7bb9a18d..cd0c416e927a7 100644
--- a/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/pcie/drv.c
@@ -537,6 +537,8 @@ VISIBLE_IF_IWLWIFI_KUNIT const struct pci_device_id iwl_hw_card_ids[] = {
{IWL_PCI_DEVICE(0xA840, 0x4314, iwl_bz_mac_cfg)},
{IWL_PCI_DEVICE(0xA840, 0x1775, iwl_bz_mac_cfg)},
{IWL_PCI_DEVICE(0xA840, 0x1776, iwl_bz_mac_cfg)},
+ {IWL_PCI_DEVICE(0xA840, 0x1735, iwl_bz_mac_cfg)},
+ {IWL_PCI_DEVICE(0xA840, 0x1736, iwl_bz_mac_cfg)},
{IWL_PCI_DEVICE(0x7740, PCI_ANY_ID, iwl_bz_mac_cfg)},
{IWL_PCI_DEVICE(0x4D40, PCI_ANY_ID, iwl_bz_mac_cfg)},

--
2.53.0