Problems with ATA_CAM support in RELENG_8

Alexander Motin mav at
Wed Jun 30 21:19:20 UTC 2010

Paul Mather wrote:
>> PS: ATA_STATIC_ID is useless when ATA_CAM option enabled.
> Thank you (and Jeremy Chadwick) for the help and information.  The kernel configuration options I used above were taken from a VirtualBox FreeBSD/amd64 install I have that I converted over to ATA_CAM when the code first went into RELENG_8 and it wasn't exactly clear at the time what options were absolutely required.  (I'm not even sure that "options ATA_CAM" is needed any more, given "device ahci" implies it.)

`options ATA_CAM` enables CAM wrapper for legacy drivers, which gave you
adaX devices instead of adX. It doesn't give major benefits, just
unifies behavior.

> I thought ICH8 supported AHCI, but maybe it's only ICH8R that does? 

All ICH8 support AHCI, though not all BIOSes initialize them
respectively. The only benefit of ICH8R is a port multipliers support,
though it also seems to be artificial limitation - I've seen BIOS
allowing it on regular ICH8.

> I'm assuming that "subclass = ATA" means the controller can't operate in AHCI mode. 

Yes. At least it is not configured to do so.

> The BIOS setting is also confusing.  It has two options, "Normal" and "Legacy."  "Normal" mode says, "The hard drive controller is configured for native mode.  This mode provides the highest drive performance and most flexibility."  I guess I misinterpreted "native mode" to be AHCI mode.

"Native" mode means that ATA controllers works as normal PCI device. In
"Legacy" mode controller uses legacy ISA I/O ports and IRQs.

Alexander Motin

More information about the freebsd-stable mailing list