Chipsets & PCIe

Intel ICH9 SMBus

A motherboard SMBus host profile with controller-level evidence and passive adapter inspection.

On this page
  1. Overview & identity
  2. Driver & binding
  3. Firmware
  4. Read-only diagnostics
  5. Limitations & related issues
  6. References

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

Detected, bound, operational: learn the difference

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.

Inspect firmware packaging on your distribution

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 BDF

Replace 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/driver

Use 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-*/name

This 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-pager

Separate 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.