# AHCI support enabled?



## salvo2002 (Nov 11, 2010)

Please bare with me. I am a newbie.

I am trying to figure out if AHCI is loaded or if it is even possible for me to use with my setup.

I have a VIA Nano U2250 and a VX800 chipset mainboard (VIA m'serv s2100).

I installed FreeBSD-8.1-RELEASE-amd64.

dmesg reports:


```
atapci0: <VIA VX800 SATA150 controller> 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376
ata0: <ATA channel 0> on atapci0
ata0: [ITHREAD]
ata1: <ATA channel 1> on atapci0
ata1: [ITHREAD]
...
ad0: 1907729MB <WDC WD20EARS-00S8B1 80.00A80> at ata0-master UDMA133 SATA 1.5Gb/s
```

I followed sub.measa's guide here and here where it had me put 
	
	



```
ahci_load="YES"
```
 in my loader.conf file

I did some searching and found this thread that talks about SATA port multiplier support for the VX800 but mentions "limited support". This was back in April so not sure how relevant the thread is now.

The main goal is to setup a ZFS pool and from what I've read it seems you need to use AHCI.

I am too new to this to know what command to use to figure out if AHCI is being used or even possible to use. Please help!


----------



## wblock@ (Nov 11, 2010)

It depends on your chipset and BIOS.  Both must support AHCI, and it has to be enabled in the BIOS.  Then load the module and proceed.

Moving A FreeBSD System To AHCI And Labeled Filesystems

VIA's page on the VX800 doesn't say a thing about AHCI.


----------



## salvo2002 (Nov 11, 2010)

I looked in the BIOS and the only settings I have are:


```
SATA Controller Mode
====================
IDE [X]
RAID []
```

currently it IDE is selected. Do I need AHCI to use ZFS?


----------



## aragon (Nov 11, 2010)

If ahci(4) is working you would see ahciX devices in your boot time dmesg instead of the atapciX devices you pasted, eg.


```
ahci0: <Intel ICH9 AHCI SATA controller> port 0x3428-0x342f,0x3434-0x3437,0x3420-0x3427,0x3430-0x3433,0x3020-0x303f mem 0xe0325000-0xe03257ff irq 21 at device 31.2 on pci0
ahci0: [ITHREAD]
ahci0: AHCI v1.20 with 6 3Gbps ports, Port Multiplier supported
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich0: [ITHREAD]
ahcich1: <AHCI channel> at channel 1 on ahci0
ahcich1: [ITHREAD]
ahcich2: <AHCI channel> at channel 2 on ahci0
ahcich2: [ITHREAD]
ahcich3: <AHCI channel> at channel 3 on ahci0
ahcich3: [ITHREAD]
ahcich4: <AHCI channel> at channel 4 on ahci0
ahcich4: [ITHREAD]
ahcich5: <AHCI channel> at channel 5 on ahci0
ahcich5: [ITHREAD]
```


----------



## salvo2002 (Nov 11, 2010)

@aragon thanks for the reply.

I called VIA tech support and they said that they didn't know if the VX800 even supports AHCI but that they would get back with me after they spoke with the R&D guys. The tech guy said that if it turned out the VX800 supports it that he could have a BIOS revision done & released.

I was reading the "ZFS Best Practices Guide" here and did see anything that said I can't use ZFS without AHCI. The only problem is that I can only use the SATA controller in IDE mode in which I will take a significant read/write speed hit, correct? I tried using RAID mode but I can't find the disk after I boot.


----------



## danbi (Nov 13, 2010)

You can use ZFS with or without AHCI. It does not really matter. ZFS will work happily in both configs, even if you switch these from time to time.

AHCI is one of the ways the OS will manage the raw drives. ZFS works with whatever the OS tells it is 'drive'.

One benefit to use the AHCI drives is that it supports NCQ and if your drives do (all new drives do), you will benefit for random and multitask IO.


----------

