https://wiki.archlinux.org/api.php?action=feedcontributions&user=Bednar&feedformat=atomArchWiki - User contributions [en]2024-03-29T14:16:21ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=AHCI&diff=573461AHCI2019-05-18T10:22:12Z<p>Bednar: /* Troubleshooting */ - corrected grammar for better readability</p>
<hr />
<div>[[Category:Storage]]<br />
[[es:AHCI]]<br />
[[ja:AHCI]]<br />
[[zh-hans:AHCI]]<br />
[[Wikipedia:AHCI|AHCI]] (Advanced Host Controller Interface) is the native work mode for SATA drives. AHCI has two main benefits: support for hot pluggable SATA drives (mimicking USB drives' behavior) and [[Wikipedia:Native Command Queuing|Native Command Queuing]] (NCQ). It has been present in the Linux kernel since version 2.6.19 and will be loaded automatically in current Arch kernel. <br />
<br />
== Configure from BIOS ==<br />
If your BIOS set SATA as legacy/parallel ATA, you can access BIOS setting depends on the motherboard; usually, {{ic|Del}} is used to display the menu.<br />
<br />
Once the BIOS options are available, search for parameters resembling:<br />
Enable SATA as: IDE/AHCI<br />
or:<br />
SATA: PATA Emulation/Native/Enhanced<br />
<br />
Choose {{Ic|AHCI}} or {{Ic|Native}}, save the settings and exit the BIOS. Consult the motherboard's manual if it's not clear which of the modes is AHCI, since the naming can vary.<br />
<br />
After altering and saving the BIOS settings, Linux should load the AHCI driver on the next boot. {{Ic|dmesg}}'s output should confirm this:<br />
<pre><br />
SCSI subsystem initialized<br />
libata version 3.00 loaded.<br />
ahci 0000:00:1f.2: version 3.0<br />
ahci 0000:00:1f.2: PCI INT B -> GSI 19 (level, low) -> IRQ 19<br />
ahci 0000:00:1f.2: irq 764 for MSI/MSI-X<br />
ahci 0000:00:1f.2: AHCI 0001.0200 32 slots 6 ports 3 Gbps 0x3f impl SATA mode<br />
ahci 0000:00:1f.2: flags: 64bit ncq sntf stag pm led clo pmp pio slum part ems <br />
ahci 0000:00:1f.2: setting latency timer to 64<br />
scsi0 : ahci<br />
scsi1 : ahci<br />
scsi2 : ahci<br />
scsi3 : ahci<br />
scsi4 : ahci<br />
scsi5 : ahci<br />
</pre><br />
and for NCQ:<br />
ata2.00: 625142448 sectors, multi 16: LBA48 NCQ (depth 31/32)<br />
<br />
== Troubleshooting ==<br />
It is possible that the AHCI module is not loaded automatically if SATA configuration is switched from IDE to AHCI after installing Arch.<br />
In such case, an error message will appear at early boot indicating that the root partition was not found.<br />
<br />
If that happens, the {{Ic|failsafe}} boot option should still work fine.<br />
Once started in failsafe mode, you have to run [[mkinitcpio]] to re-generate initramfs images.</div>Bednar