Overview & identity
PCI_DEVICE_ID_INTEL_ICH9_6 is 0x2930 and the i801 table includes that constant. This establishes an ICH9 SMBus function, not an attached temperature sensor, EEPROM or exact motherboard. Devices on the bus are separate from this host-controller identity.
- Curated identifiers
pci 8086:2930
A numeric match establishes a candidate family within the reviewed evidence. Marketing names, board variants, subsystem conditions and successful operation remain separate questions.
Driver & binding
i2c_i801 exposes SMBus adapters when the PCI function can initialize. The documentation explains that some firmware hides or reserves SMBus functions for ACPI, so absence of a visible function is not a missing generic sensor driver. Listing registered adapters reads kernel metadata without probing devices on the bus.
i2c_i801— kernel driver/module candidate
Firmware
No host payload established here
No host-loaded firmware filename is established for this SMBus host by the reviewed driver. BIOS/ACPI can still determine visibility and access ownership, and attached devices may have their own firmware. A filename-free controller entry is not a firmware-free motherboard claim.
Read-only diagnostics
Run one displayed command at a time. Replace uppercase placeholders with the affected device, interface or module from your own output. Commands are never executed here. Read-only output can still contain private identifiers.
Read this function and its bound driver
lspci -nnk -s BDFReplace BDF with the address of the Intel ICH9 SMBus function. The summary normally needs no sudo. Numeric ID and the “driver in use” observation are stronger evidence than a descriptive name or candidate-module list.
Confirm the PCI driver owner
readlink /sys/bus/pci/devices/BDF/driverUse a full domain:bus:slot.function BDF. This normally needs no sudo and only reads a symlink. The last component is the bound driver; no link records an unbound/absent function, not a missing software package.
Read registered adapter names without probing
cat /sys/class/i2c-adapter/i2c-*/nameThis reads existing sysfs metadata and normally needs no sudo. It does not send I2C/SMBus transactions. The list covers all registered adapters, so a name alone does not map an adapter to BDF or identify a sensor client; absent entries describe registration state.
Read current-boot controller messages
journalctl -k -b --no-pagerSeparate SMBus host initialization or resource-ownership errors from messages of unrelated sensor clients. Journal access may require local group membership; failure to read it is not controller failure.
Limitations & related issues
A PCI host-controller match does not identify every I2C/SMBus client or authorize active address probing. The read-only adapter list does not establish temperature accuracy or sensor support. No hidden-function enablement, bus scan or controller register change is included.
These guides are linked for relevant observations, not as known defects of every device in this family.
Choose a hardware diagnostic workflow · Inspect a log excerpt in Fix Lab
References
Source review records a checked implementation or document, not a reproduced hardware test. Version-specific tables do not establish a minimum kernel or guaranteed operation.
- Linux SMBus controller source
Reviewed upstream source
i801_ids / piix4_ids and numeric constants - Linux SMBus host-controller guide
Project or distribution documentation
- Linux SMBus numeric identifiers
Reviewed upstream source
ICH9_6 line 2910 / AMD_KERNCZ_SMBUS line 638