SATA hardware features
From ata Wiki
OBSOLETE CONTENT
This wiki has been archived and the content is no longer updated.
This table displays key Serial ATA hardware features, as correlated with various SATA controller chips and Linux drivers. See key below.
Vendor | Chip | Driver | NCQ | DMA++ | hotplug | PMP | PMP SM | AN | NS | NQM |
---|---|---|---|---|---|---|---|---|---|---|
Acard | ATP8620 | acard-ahci | AHCI[1] | AHCI | AHCI[1] | yes | FBS [2] | yes | n/a | n/a |
Agere / LSI | NASx00, NASx01 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
ALi | M3383, M3603 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Ambarella | iOne | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
AMCC | 460EX | sata_dwc_460ex | yes [1] | ? | ? | no | n/a | no | n/a | n/a |
AMD | A50M, A60M, A70M | ahci | AHCI | AHCI | AHCI | yes | CBS | yes | no | no |
AMD | A55E | ahci | AHCI | AHCI | AHCI | yes | FBS | yes | no | no |
AMD | A45 | ahci | AHCI | AHCI | AHCI | yes | CBS | yes | n/a | n/a |
AMD | A55, A75 | ahci | AHCI | AHCI | AHCI | yes | FBS | yes | no | no |
AMD | SB600 | ahci | AHCI | AHCI | AHCI | yes [4][5] | CBS | yes | n/a | n/a |
AMD | SB7x0, SP5100 | ahci | AHCI | AHCI | AHCI | yes | CBS | yes | n/a | n/a |
AMD | SB810 | ahci | AHCI | AHCI | AHCI | yes | CBS | yes | n/a | n/a |
AMD | SB820M | ahci | AHCI | AHCI | AHCI | yes | CBS | yes | no | no |
AMD | SB850 | ahci | AHCI | AHCI | AHCI | yes | FBS | yes | no | no |
AMD | SB920 | ahci | AHCI | AHCI | AHCI | yes | CBS | yes | no | no |
AMD | SB950 | ahci | AHCI | AHCI | AHCI | yes | FBS | yes | no | no |
Amlogic | AML8726-M | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
ASMedia | ASM1061 | ahci [6] | AHCI | AHCI | AHCI | yes | ? | ? | no | no |
Broadcom | BCM7038, BCM7205, BCM7316, BCM7335, BCM7400, BCM7400B, BCM7401, BCM7405, BCM7410, BCM7413, BCM7420, BCM7440 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Broadcom / Apple | BCM5770, BCM5770R / K2, Shasta | sata_svw | no | yes | yes [1] | no | n/a | no | n/a | n/a |
Broadcom | HT1000(BCM5785), HT1100(BCM11000) | sata_svw | yes [1] | yes | yes [1] | no | n/a | no | n/a | n/a |
C2 Microsystems | CC1100 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Cavium | CNS3xxx | ahci_cns3xxx | AHCI | AHCI | AHCI | ? | ? | ? | n/a | n/a |
Celestial / Cavium | CNC1800H | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Conexant / NXP | CX24162, CX24163, CX2417x, CX2425x, CX2427x, CX24500 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Core Logic | CLM5520F | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Freescale | i.MX535 | none [3] | AHCI | AHCI | AHCI | yes | CBS | yes | n/a | n/a |
Freescale | MPC8315E, MPC8377E, MPC8379E, MPC8536E, P1022, P3041, P5020 |
sata_fsl | yes [7] | ? | yes | yes | ? | ? | n/a | n/a |
Fujitsu | MB86H610, MB86H611 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Grain Media | GM8181 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
HiSilicon | Hi3515 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Ikanos | Fusiv Vx185 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
infraNT | IT1004, IT1008, IT3102, IT3107 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Initio | INIC-162x | sata_inic162x | yes [1] | yes | yes | ? | ? | no | n/a | n/a |
Intel | CE2110 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Intel | CE3100 | ata_piix, ahci, none [8] | AHCI | AHCI | AHCI | no | n/a | yes [9] | n/a | n/a |
Intel | CE4xx0 | ahci[6] | AHCI | AHCI | AHCI | ? | ? | ? | n/a | n/a |
Intel | EP80579 | ata_piix, ahci | AHCI | AHCI | AHCI | ? | ? | yes | n/a | n/a |
Intel | ICH5 family, 6300ESB | ata_piix | no | no | no | no | n/a | no | n/a | n/a |
Intel | ICH6 family, 631xESB, 632xESB, 3100 | ata_piix, ahci | AHCI | AHCI | AHCI | no | n/a | yes [9] | n/a | n/a |
Intel | ICH7 family, NM10 | ata_piix, ahci | AHCI | AHCI | AHCI | no | n/a | yes [9] | n/a | n/a |
Intel | ICH8 family | ata_piix, ahci | AHCI | AHCI | AHCI | no | no | no [10] | n/a | n/a |
Intel | ICH9 family | ata_piix, ahci | AHCI | AHCI | AHCI | ICH9R and ICH9DO only [11] | CBS | yes [9] | n/a | n/a |
Intel | ICH10 family | ata_piix, ahci | AHCI | AHCI | AHCI | ICH10R only [11] | CBS | yes [9] | n/a | n/a |
Intel | PCH EG20T | ahci[6] | AHCI | AHCI | AHCI | yes | CBS | yes | n/a | n/a |
Intel | PCH SM35 | ahci[6] | AHCI | AHCI | AHCI | ? | ? | ? | n/a | n/a |
Intel | PCH x5x, xx5x, 34x0 family | ata_piix, ahci | AHCI | AHCI | AHCI | yes [12] | FBS [13] | yes | n/a | n/a |
Intel | PCH x6x, xx6x, C20x family | ata_piix, ahci | AHCI | AHCI | AHCI | yes | FBS [13] | yes | no | no |
Intel | PCH 82H67 ("H67 Express Chipset") | ata_piix, ahci | AHCI | AHCI | AHCI | yes | CBS | yes | ||
Intel | X79 | ata_piix, ahci | AHCI | AHCI | AHCI | yes | FBS | yes | no | no |
JMicron | JMB36x | ahci | AHCI | AHCI | AHCI | yes | CBS | ? | n/a | n/a |
Magnum Semiconductor | MS8615 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Marvell | 88SE6121 | ahci | no[10] | ? | ? | no[10] | n/a | no | n/a | n/a |
Marvell | 88SE6145 | ahci | no[10] | ? | ? | no[10] | n/a | no | n/a | n/a |
Marvell | 88SE9128/9125/9123/9120/9111/9110 | ahci | AHCI | AHCI | AHCI | yes | FBS[14] | yes | no | no |
Marvell | 88SE9130 | ahci[6] | AHCI | AHCI | AHCI | yes | FBS | yes | no | no |
Marvell | 88SX504x, 88SX508x | sata_mv | no | yes | yes | no | n/a | no | n/a | n/a |
Marvell | 88SX6040, 88SX6080 | sata_mv | yes | yes | yes | no | n/a | no | n/a | n/a |
Marvell | 88SX6041, 88SX6081 | sata_mv | yes | yes | yes | yes | CBS | yes [15] | n/a | n/a |
Marvell | 88SX6042, 88SX7042 | sata_mv | yes | yes | yes | yes | FBS | yes | n/a | n/a |
Marvell | 88AP510, 88F5182, 88F6192, 88F6281 | sata_mv | yes | yes | yes | yes | FBS | yes | n/a | n/a |
NEC / Renesas | uPD61290, uPD61291, MC-10092, MC-10121 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
nVidia | nForce2, nForce3 | sata_nv | no | no | yes | no | n/a | no | n/a | n/a |
nVidia | nForce4 (CK804, MCP04) | sata_nv | yes | yes | yes | no | n/a | no | n/a | n/a |
nVidia | nForce MCP51, MCP55, MCP61 | sata_nv | yes [16] | no | yes | no | n/a | no | n/a | n/a |
nVidia | nForce MCP65 , MCP67, MCP68, MCP72, MCP73, MCP77, MCP78, MCP79, MCP7A, MCP82 |
ahci | AHCI | AHCI | AHCI | no[10] | n/a | yes | n/a | n/a |
nVidia | nForce MCP89 and later | ahci | AHCI | AHCI | AHCI | yes | ? | yes | n/a | n/a |
NUFRONT | NS2816 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
NXP | PNX8332, PNX8335, PNX8336 | pnx833x-sata [17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
NXP / Trident | PNX8472, PNX8473, PNX8932, PNX8935 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Oxford Semiconductor / PLX Technology | OXE800SE, OXE800DSE | ox800sata[17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Oxford Semiconductor / PLX Technology | OXE810SE, OXE810DSE | ox810sata [17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Promise | PDC2037x | sata_promise | no | yes | yes | no | n/a | no | n/a | n/a |
Promise | PDC2057x | sata_promise | yes | yes | yes | no | n/a | no | n/a | n/a |
Promise | PDC40518 | sata_promise | yes | yes | yes | no | n/a | no | n/a | n/a |
Promise | PDC20619 | sata_promise | ? | yes | no | no | n/a | no | n/a | n/a |
Promise | PDC20621 | sata_sx4 | no | yes | no | no | n/a | no | n/a | n/a |
Realtek | RTD1073 | sata_mars[17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Renesas | SH7776 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
ROHM / OKI | ML7213, ML7223, ML7223V | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
SAMSUNG | Exynos 4210 | ahci_platform | AHCI | AHCI | AHCI | ? | ? | ? | n/a | n/a |
SAMSUNG | SDP93 | sata_aspen[17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Sigma Designs | SMP864x, SMP865x | sata_tango3[17] | no | no | no | no | n/a | no | n/a | n/a |
Silicon Image / ATI | SiI311x, SiI3512 / SB300, SB300C, SB4x0 | sata_sil | no | sorta | yes [1] | no | n/a | no | n/a | n/a |
Silicon Image | SiI3124, SiI3132, SiI3531 | sata_sil24 | yes | yes | yes | yes | FBS | yes | n/a | n/a |
SiS | 180, 964, 965 | sata_sis | no | no | no | no | n/a | no | n/a | n/a |
SiS | 966 | sata_sis, ahci | AHCI | AHCI | AHCI | yes | ? | ? | n/a | n/a |
SiS | 968 | sata_sis, ahci | AHCI | AHCI | AHCI | no | n/a | ? | n/a | n/a |
SiS | XSB | sata_xenon[17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Skyviia | SV8860 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
ST | ConneXt STA2X11, STA2X10 | ahci[6] | AHCI | AHCI | AHCI | ? | ? | ? | n/a | n/a |
ST | SPEAr1310, SPEAr1340 | none [3] | AHCI | AHCI | AHCI | yes | CBS | ? | n/a | n/a |
ST | STi7109 | sata_stm[17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Telechips | TCC8801, TCC890x | sata_snps[17] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Telechips | TCC9302 | none [3] | AHCI | AHCI | AHCI | ? | ? | ? | n/a | n/a |
TI | AM1808, OMAP-L138 | ahci_platform | AHCI | AHCI | AHCI | yes | CBS | yes | n/a | n/a |
ULi | M1575 | ahci | yes | AHCI | yes | no | n/a | yes | n/a | n/a |
ULi | M1573, M1697(528x) | sata_uli | no | no | no | no | n/a | no | n/a | n/a |
VIA | CX700, VX700 family | pata_via | ? | ? | ? | yes | ? | ? | n/a | n/a |
VIA | VX800, VX800UT | pata_via | ? | ? | ? | yes | ? | ? | n/a | n/a |
VIA | VX900 | sata_via | no | no | yes | yes | no | no | n/a | n/a |
VIA | VT642x | sata_via | no | no | no | no | n/a | no | n/a | n/a |
VIA | VT8237 family | sata_via | no | no | yes | no | n/a | no | n/a | n/a |
VIA | VT8251 | sata_via, ahci | no[10] | AHCI | yes | no[10] | no | no | n/a | n/a |
VIA | VT8261 | sata_via | no | no | yes | no | no | no | n/a | n/a |
Intel | GD31244 | sata_vsc | yes | no | no | no | n/a | no | n/a | n/a |
Vitesse | VSC7174 | sata_vsc | yes | no | no | no | n/a | no | n/a | n/a |
ViXS | XCodeHD 3390, XCode 4111, XCode 4115 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
ZORAN | SupraXD 170, SupraXD 180 | none [3] | ? | ? | ? | ? | ? | ? | n/a | n/a |
Key
Chip | Integrated Circuit or IC family, associated with this column of data |
Driver | Linux driver(s) |
NCQ | Supports FPDMA |
DMA++ | DMA engine is more advanced than standard PCI IDE BMDMA engine |
hotplug | Supports interrupt-driven device hotplug and hot unplug. Note that hotplug can often be "hacked" via polling, even if hardware does not natively support it |
PMP | Supports SATA port multipliers |
SM | PMP Switching Method |
CBS | Supports Command Based Switching port multiplier |
FBS | Supports FIS Based Switching port multiplier |
AN | Asynchronous Notification (Serial ATA II feature) |
NS | NCQ Streaming (Serial ATA 3.0 feature) |
NQM | NCQ Queue Management (Serial ATA 3.0 feature) |
SoC ICs have their line highlighted with colour to avoid confusion as those are special low power devices suited for specific tasks and provide minimal user interaction
Notes
- ↑ 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 Not supported by the driver yet
- ↑ When all 15 devices are attached at PMPs, only 8 devices can use FBS, the rest are limited to CBS.
- ↑ 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 3.21 3.22 3.23 3.24 3.25 3.26 Currently, no driver has been released for this SATA controller yet
- ↑ Port multiplier NOT supported in SB600 ASIC revisions A12 and A11
- ↑ Total number of SATA drives connected directly to the host and behind the port multiplier should not exceed 4
- ↑ 6.0 6.1 6.2 6.3 6.4 6.5 Generic support via PCI class code match
- ↑ Maximum NCQ depth is limited to 16 outstanding entries
- ↑ Stepping A0 is not supported by the current drivers because workarounds are needed to fix errata
- ↑ 9.0 9.1 9.2 9.3 9.4 Supported only by some components in AHCI or RAID mode
- ↑ 10.0 10.1 10.2 10.3 10.4 10.5 10.6 10.7 Disabled by the respective driver usually because of hardware flaw or bogus feature
- ↑ 11.0 11.1 Depends on chip variants. SPM bit in the CAP register is set if supported.
- ↑ Port multiplier NOT supported in 3400 Chipset
- ↑ 13.0 13.1 Port multiplier is supported only on SATA port 4 and 5 in AHCI or RAID mode
- ↑ Possible hardware bug exposed by recent kernels [1]
- ↑ Asynchronous Notification NOT supported on revisions Bx
- ↑ NCQ NOT supported in MCP61
- ↑ 17.0 17.1 17.2 17.3 17.4 17.5 17.6 17.7 17.8 Driver is under development