Storage controllers

Generic PCI AHCI SATA controller

A documented protocol-family profile for a PCI function reporting AHCI class 010601. It offers useful driver context without pretending the class identifies an exact chipset or SSD.

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

Overview & identity

Class 01:06 with programming interface 01 is the AHCI match in this source. A plain SATA subclass without the programming interface is less specific; no exact vendor/device pairs are asserted here.

This is an explicit class, transport or driver-context profile. It is not an exact numeric product match.

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

The ahci PCI table contains a generic class entry after device-specific handling. ahci uses libata to expose attached ATA devices through the Linux storage stack.

  • ahci — kernel driver/module candidate

Detected, bound, operational: learn the difference

Firmware

Device/revision dependent

Controller firmware, option ROM and drive firmware can be separate. The reviewed sources do not establish a host-loaded filename for this profile; firmware revision and update policy require the actual controller and OEM identity.

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 the class and bound driver

lspci -nnk -s BDF

Replace BDF with the controller address. A class-derived ahci candidate establishes a protocol family only. Kernel driver in use is the observed binding; the PCI pair alone does not name the attached SSD.

Inspect visible block-device identities

lsblk -d -o NAME,MODEL,TRAN,HCTL

MODEL describes a block device or a controller-presented logical volume; it is not a PCI-controller identity. HCTL helps distinguish SCSI targets. TRAN can be absent, and this list does not establish the complete physical disk topology.

Read controller and transport messages

sudo journalctl -k -b --no-pager

Elevated access may be needed. Root reads the current boot kernel journal. Associate ahci messages, port/host identifiers and timeout/reset timestamps with the actual controller. A reset message alone does not prove a bad disk or a firmware defect.

Limitations & related issues

The controller class does not identify Samsung, Crucial or any other attached drive. RAID/IDE firmware modes can expose different classes and drivers; this profile is not evidence that switching modes is safe.

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.