How do I use NCQ of Intel X25-E(SSD) on ahci(4)?

From: Norikatsu Shigemura <nork_at_FreeBSD.org>
Date: Thu, 19 Nov 2009 00:46:51 +0900
Hi Alexander!

	I have a Intel 64GB SSD(X25-E) and a Western Digital Caviar Green
	1TB HDD (WD10EADS), and use them on ahci(4).  ahci(4) can use NCQ
	of WD10EADS, but doesn't use NCQ of X25-E.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FreeBSD 9.0-CURRENT #107: Thu Nov 19 00:13:30 JST 2009
    nork_at_nadesico.ninth-nine.com:/usr/obj/usr/src/sys/NADESICO amd64
  :
ahci0: <ATI IXP700 AHCI SATA controller> port 0xa000-0xa007,0x9000-0x9003,0x8000-0x8007,0x7000-0x7003,0x6000-0x600f mem 0xfb8fe400-0xfb8fe7ff irq 22 at device 17.0 on pci0
ahci0: [ITHREAD]
ahci0: AHCI v1.10 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]
  :
(aprobe0:ahcich0:0:0:0): SIGNATURE: 0000
(aprobe0:ahcich1:0:0:0): SIGNATURE: 0000
(aprobe0:ahcich2:0:0:0): SIGNATURE: 0000
(aprobe0:ahcich3:0:0:0): SIGNATURE: 0000
  :
ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <SSDSA2SH064G1GC INTEL 045C8790> ATA/ATAPI-7 SATA 2.x device
ada0: 300.000MB/s transfers
ada0: 61057MB (125045424 512 byte sectors: 16H 63S/T 16383C)
ada1 at ahcich1 bus 0 scbus1 target 0 lun 0
ada1: <WDC WD10EADS-00L5B1 01.01A01> ATA/ATAPI-8 SATA 2.x device
ada1: 300.000MB/s transfers
ada1: Command Queueing enabled
ada1: 953869MB (1953525168 512 byte sectors: 16H 63S/T 16383C)
  ;
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

	I confirmed X25-E disabled NCQ.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# camcontrol tags ada0
(pass0:ahcich0:0:0:0): device openings: 2
# camcontrol tags ada1
(pass1:ahcich1:0:0:0): device openings: 32
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

	According to 'camcontrol identify ada0' and Intel's documentation[*],
	X25-E supports NCQ.

	[*] http://www.intel.com/design/flash/nand/extreme/index.htm

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# camcontrol identify ada0
pass0: <SSDSA2SH064G1GC INTEL 045C8790> ATA/ATAPI-7 SATA 2.x device
pass0: 300.000MB/s transfers 

protocol              ATA/ATAPI-7 SATA 2.x
device model          SSDSA2SH064G1GC INTEL
firmware revision     045C8790
serial number         CVEM9024016B064KGN
WWN                   500151795879a64e
cylinders             16383
heads                 16
sectors/track         63
sector size           logical 512, physical 512, offset 0
LBA supported         125045424 sectors
LBA48 supported       125045424 sectors
PIO supported         PIO4
DMA supported         WDMA2 UDMA6 
overlap not supported
media RPM             non-rotating

Feature                      Support  Enable    Value           Vendor
read ahead                     yes      yes
write cache                    yes      yes
flush cache                    yes      yes
Native Command Queuing (NCQ)   yes              30/0x1E
Tagged Command Queuing (TCQ)   no       no      30/0x1E
SMART                          yes      yes
microcode download             yes      yes
security                       yes      no
power management               yes      yes
advanced power management      no       no      0/0x00
automatic acoustic management  no       no      0/0x00  0/0x00
media status notification      no       no
power-up in Standby            no       no
write-read-verify              no       no      0/0x0
unload                         yes      yes
free-fall                      no       no
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# camcontrol identify ada1
pass1: <WDC WD10EADS-00L5B1 01.01A01> ATA/ATAPI-8 SATA 2.x device
pass1: 300.000MB/s transfers 

protocol              ATA/ATAPI-8 SATA 2.x
device model          WDC WD10EADS-00L5B1
firmware revision     01.01A01
serial number         WD-WCAU45664302
WWN                   50014ee257aa350
cylinders             16383
heads                 16
sectors/track         63
sector size           logical 512, physical 512, offset 0
LBA supported         268435455 sectors
LBA48 supported       1953525168 sectors
PIO supported         PIO4
DMA supported         WDMA2 UDMA6 
overlap not supported

Feature                      Support  Enable    Value           Vendor
read ahead                     yes      yes
write cache                    yes      yes
flush cache                    yes      yes
Native Command Queuing (NCQ)   yes              31/0x1F
Tagged Command Queuing (TCQ)   no       no      31/0x1F
SMART                          yes      yes
microcode download             yes      yes
security                       yes      no
power management               yes      yes
advanced power management      no       no      0/0x00
automatic acoustic management  yes      yes     254/0xFE        128/0x80
media status notification      no       no
power-up in Standby            yes      no
write-read-verify              no       no      0/0x0
unload                         no       no
free-fall                      no       no
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

	To use NCQ of X25-E, what should I report to you? 
Received on Wed Nov 18 2009 - 14:46:53 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:58 UTC