pci_match_id(9)
π pci_match_id(9) β like, the Kernel API Manual one, obvi
Okay bestie, so this is pci_match_id(9) from the Kernel API Manual and I need you to stay with me because it's a short one but it's got β¨loreβ¨ β mostly the lore being "don't use it." π«Ά
β¨ NAME β¨
pci_match_id β see if a PCI device matches a given pci_id table. That's it, that's the whole vibe check. π
πΈ SYNOPSIS πΈ
const struct pci_device_id * pci_match_id (const struct pci_device_id
*ids , struct pci_dev *dev );
Like, look at her. Two params. Very demure, very mindful. π
π¦ ARGUMENTS π¦
idsβ the array of PCI device ID structures we're gonna search inside. Basically the guest list. πdevβ the PCI device structure we're matching against. The girl at the door checking names. π₯
β DESCRIPTION β
So a driver uses this to check whether a PCI device is in its list of supported devices. If it finds a match, it returns the matching pci_device_id structure β and if there's no match? NULL. That's it. No match, no entry, no slay. π
β οΈ Deprecated, bestie. Do not use this, because it will not catch any dynamic IDs that a driver might want to check for. Like, it literally can't see them. Not its fault, but also. Don't. π©
π SEE ALSO π
Kernel file ./drivers/pci/pci-driver.c β the whole friend group lives there:
do_pci_add_dynid(9)pci_add_dynid(9)do_pci_match_id(9)pci_match_device(9)new_id_store(9)remove_id_store(9)__pci_device_probe(9)pci_restore_standard_config(9)__pci_register_driver(9)pci_unregister_driver(9)pci_dev_driver(9)pci_bus_match(9)pci_dev_get(9)pci_dev_put(9)pci_uevent_ers(9)pci_dma_configure(9)
β¨ mwah β¨ okay that's the whole page! This one lives in ./drivers/pci, dated October 2026, and it's pci_match_id(9) all the way down. Go check on do_pci_match_id(9) if you want the non-deprecated energy, iykyk. ππ¦π§
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms