cvs commit: src/sys/dev/ata ata-all.h ata-raid.c

Søren Schmidt sos at
Wed Apr 16 17:56:27 UTC 2008


ATA has done this for a long time for AHCI, if needed resources are  
there it will go for AHCI and try to use it for known chipsets.
What is relatively new in ATA is that it will go for chipsets that  
claim to be AHCI compliant via the PCI "progif" register, however the  
AHCI BAR still needs to be populated for it to be able to grap  
resources needed.

However some BIOS's effectively disables AHCI BAR's etc when its not  
selected, not much we can do about that, or at least it will be a  
nightmare to support.


On 16Apr, 2008, at 16:08 , John Baldwin wrote:

> On Monday 14 April 2008 01:09:23 pm Søren Schmidt wrote:
>> Hi
>> Yes, the registers used for setting up events when hotswap happens  
>> are
>> not accessible when in legacy compat mode.
> If all you need is for the AHCI BAR to have resources assigned newer  
> FreeBSD
> kernels (at least 6.x and later) are smart enough to alloc resources  
> for a
> BAR that the BIOS doesn't assign resources for when you do a
> bus_alloc_resource().
>> -Søren
>> On 14Apr, 2008, at 18:00 , Dag-Erling Smørgrav wrote:
>>> Søren Schmidt <sos at> writes:
>>>> You have to set AHCI mode in the BIOS or the resources needed to  
>>>> use
>>>> it wont be available, so yes its software but not ours :)
>>> Thanks Søren, I will make sure the BIOS is correctly configured.
>>> Does this also affect hotswap?  I assume that the ICH8 supports it,
>>> but
>>> I haven't been able to make it work.
>>> DES
>>> --
>>> Dag-Erling Smørgrav - des at
> -- 
> John Baldwin

More information about the cvs-all mailing list