1What: /sys/class/ata_* 2Description: 3 Provide a place in sysfs for storing the ATA topology of the 4 system. This allows retrieving various information about ATA 5 objects. 6 7Files under /sys/class/ata_port 8------------------------------- 9 10For each port, a directory ataX is created where X is the ata_port_id of the 11port. The device parent is the ata host device. 12 13 14What: /sys/class/ata_port/ataX/nr_pmp_links 15What: /sys/class/ata_port/ataX/idle_irq 16Date: May, 2010 17KernelVersion: v2.6.37 18Contact: Gwendal Grignou <gwendal@chromium.org> 19Description: 20 nr_pmp_links: (RO) If a SATA Port Multiplier (PM) is 21 connected, the number of links behind it. 22 23 idle_irq: (RO) Number of IRQ received by the port while 24 idle [some ata HBA only]. 25 26 27What: /sys/class/ata_port/ataX/port_no 28Date: May, 2013 29KernelVersion: v3.11 30Contact: Gwendal Grignou <gwendal@chromium.org> 31Description: 32 (RO) Host local port number. While registering host controller, 33 port numbers are tracked based upon number of ports available on 34 the controller. This attribute is needed by udev for composing 35 persistent links in /dev/disk/by-path. 36 37Files under /sys/class/ata_link 38------------------------------- 39 40Behind each port, there is a ata_link. If there is a SATA PM in the topology, 15 41ata_link objects are created. 42 43If a link is behind a port, the directory name is linkX, where X is ata_port_id 44of the port. If a link is behind a PM, its name is linkX.Y where X is 45ata_port_id of the parent port and Y the PM port. 46 47 48What: /sys/class/ata_link/linkX[.Y]/hw_sata_spd_limit 49What: /sys/class/ata_link/linkX[.Y]/sata_spd_limit 50What: /sys/class/ata_link/linkX[.Y]/sata_spd 51Date: May, 2010 52KernelVersion: v2.6.37 53Contact: Gwendal Grignou <gwendal@chromium.org> 54Description: 55 hw_sata_spd_limit: (RO) Maximum speed supported by the 56 connected SATA device. 57 58 sata_spd_limit: (RO) Maximum speed imposed by libata. 59 60 sata_spd: (RO) Current speed of the link 61 eg. 1.5, 3 Gbps etc. 62 63 64Files under /sys/class/ata_device 65--------------------------------- 66 67Behind each link, up to two ata devices are created. 68The name of the directory is devX[.Y].Z where: 69- X is ata_port_id of the port where the device is connected, 70- Y the port of the PM if any, and 71- Z the device id: for PATA, there is usually 2 devices [0,1], only 1 for SATA. 72 73 74What: /sys/class/ata_device/devX[.Y].Z/spdn_cnt 75What: /sys/class/ata_device/devX[.Y].Z/gscr 76What: /sys/class/ata_device/devX[.Y].Z/ering 77What: /sys/class/ata_device/devX[.Y].Z/id 78What: /sys/class/ata_device/devX[.Y].Z/pio_mode 79What: /sys/class/ata_device/devX[.Y].Z/xfer_mode 80What: /sys/class/ata_device/devX[.Y].Z/dma_mode 81What: /sys/class/ata_device/devX[.Y].Z/class 82Date: May, 2010 83KernelVersion: v2.6.37 84Contact: Gwendal Grignou <gwendal@chromium.org> 85Description: 86 spdn_cnt: (RO) Number of times libata decided to lower the 87 speed of link due to errors. 88 89 gscr: (RO) Cached result of the dump of PM GSCR 90 register. Valid registers are: 91 92 0: SATA_PMP_GSCR_PROD_ID, 93 1: SATA_PMP_GSCR_REV, 94 2: SATA_PMP_GSCR_PORT_INFO, 95 32: SATA_PMP_GSCR_ERROR, 96 33: SATA_PMP_GSCR_ERROR_EN, 97 64: SATA_PMP_GSCR_FEAT, 98 96: SATA_PMP_GSCR_FEAT_EN, 99 130: SATA_PMP_GSCR_SII_GPIO 100 101 Only valid if the device is a PM. 102 103 ering: (RO) Formatted output of the error ring of the 104 device. 105 106 id: (RO) Cached result of IDENTIFY command, as 107 described in ATA8 7.16 and 7.17. Only valid if 108 the device is not a PM. 109 110 pio_mode: (RO) Transfer modes supported by the device when 111 in PIO mode. Mostly used by PATA device. 112 113 xfer_mode: (RO) Current transfer mode 114 115 dma_mode: (RO) Transfer modes supported by the device when 116 in DMA mode. Mostly used by PATA device. 117 118 class: (RO) Device class. Can be "ata" for disk, 119 "atapi" for packet device, "pmp" for PM, or 120 "none" if no device was found behind the link. 121 122 123What: /sys/class/ata_device/devX[.Y].Z/trim 124Date: May, 2015 125KernelVersion: v4.10 126Contact: Gwendal Grignou <gwendal@chromium.org> 127Description: 128 (RO) Shows the DSM TRIM mode currently used by the device. Valid 129 values are: 130 131 unsupported: Drive does not support DSM TRIM 132 133 unqueued: Drive supports unqueued DSM TRIM only 134 135 queued: Drive supports queued DSM TRIM 136 137 forced_unqueued: Drive's queued DSM support is known to 138 be buggy and only unqueued TRIM commands 139 are sent 140