| What: /sys/class/ata_* | |
| Description: | |
| Provide a place in sysfs for storing the ATA topology of the | |
| system. This allows retrieving various information about ATA | |
| objects. | |
| Files under /sys/class/ata_port | |
| ------------------------------- | |
| For each port, a directory ataX is created where X is the ata_port_id of the | |
| port. The device parent is the ata host device. | |
| What: /sys/class/ata_port/ataX/nr_pmp_links | |
| What: /sys/class/ata_port/ataX/idle_irq | |
| Date: May, 2010 | |
| KernelVersion: v2.6.37 | |
| Contact: Gwendal Grignou <gwendal@chromium.org> | |
| Description: | |
| nr_pmp_links: (RO) If a SATA Port Multiplier (PM) is | |
| connected, the number of links behind it. | |
| idle_irq: (RO) Number of IRQ received by the port while | |
| idle [some ata HBA only]. | |
| What: /sys/class/ata_port/ataX/port_no | |
| Date: May, 2013 | |
| KernelVersion: v3.11 | |
| Contact: Gwendal Grignou <gwendal@chromium.org> | |
| Description: | |
| (RO) Host local port number. While registering host controller, | |
| port numbers are tracked based upon number of ports available on | |
| the controller. This attribute is needed by udev for composing | |
| persistent links in /dev/disk/by-path. | |
| Files under /sys/class/ata_link | |
| ------------------------------- | |
| Behind each port, there is a ata_link. If there is a SATA PM in the topology, 15 | |
| ata_link objects are created. | |
| If a link is behind a port, the directory name is linkX, where X is ata_port_id | |
| of the port. If a link is behind a PM, its name is linkX.Y where X is | |
| ata_port_id of the parent port and Y the PM port. | |
| What: /sys/class/ata_link/linkX[.Y]/hw_sata_spd_limit | |
| What: /sys/class/ata_link/linkX[.Y]/sata_spd_limit | |
| What: /sys/class/ata_link/linkX[.Y]/sata_spd | |
| Date: May, 2010 | |
| KernelVersion: v2.6.37 | |
| Contact: Gwendal Grignou <gwendal@chromium.org> | |
| Description: | |
| hw_sata_spd_limit: (RO) Maximum speed supported by the | |
| connected SATA device. | |
| sata_spd_limit: (RO) Maximum speed imposed by libata. | |
| sata_spd: (RO) Current speed of the link | |
| eg. 1.5, 3 Gbps etc. | |
| Files under /sys/class/ata_device | |
| --------------------------------- | |
| Behind each link, up to two ata devices are created. | |
| The name of the directory is devX[.Y].Z where: | |
| - X is ata_port_id of the port where the device is connected, | |
| - Y the port of the PM if any, and | |
| - Z the device id: for PATA, there is usually 2 devices [0,1], only 1 for SATA. | |
| What: /sys/class/ata_device/devX[.Y].Z/spdn_cnt | |
| What: /sys/class/ata_device/devX[.Y].Z/gscr | |
| What: /sys/class/ata_device/devX[.Y].Z/ering | |
| What: /sys/class/ata_device/devX[.Y].Z/id | |
| What: /sys/class/ata_device/devX[.Y].Z/pio_mode | |
| What: /sys/class/ata_device/devX[.Y].Z/xfer_mode | |
| What: /sys/class/ata_device/devX[.Y].Z/dma_mode | |
| What: /sys/class/ata_device/devX[.Y].Z/class | |
| Date: May, 2010 | |
| KernelVersion: v2.6.37 | |
| Contact: Gwendal Grignou <gwendal@chromium.org> | |
| Description: | |
| spdn_cnt: (RO) Number of times libata decided to lower the | |
| speed of link due to errors. | |
| gscr: (RO) Cached result of the dump of PM GSCR | |
| register. Valid registers are: | |
| 0: SATA_PMP_GSCR_PROD_ID, | |
| 1: SATA_PMP_GSCR_REV, | |
| 2: SATA_PMP_GSCR_PORT_INFO, | |
| 32: SATA_PMP_GSCR_ERROR, | |
| 33: SATA_PMP_GSCR_ERROR_EN, | |
| 64: SATA_PMP_GSCR_FEAT, | |
| 96: SATA_PMP_GSCR_FEAT_EN, | |
| 130: SATA_PMP_GSCR_SII_GPIO | |
| Only valid if the device is a PM. | |
| ering: (RO) Formatted output of the error ring of the | |
| device. | |
| id: (RO) Cached result of IDENTIFY command, as | |
| described in ATA8 7.16 and 7.17. Only valid if | |
| the device is not a PM. | |
| pio_mode: (RO) PIO transfer mode used by the device. | |
| Mostly used by PATA devices. | |
| xfer_mode: (RO) Current transfer mode. Mostly used by | |
| PATA devices. | |
| dma_mode: (RO) DMA transfer mode used by the device. | |
| Mostly used by PATA devices. | |
| class: (RO) Device class. Can be "ata" for disk, | |
| "atapi" for packet device, "pmp" for PM, or | |
| "none" if no device was found behind the link. | |
| What: /sys/class/ata_device/devX[.Y].Z/trim | |
| Date: May, 2015 | |
| KernelVersion: v4.10 | |
| Contact: Gwendal Grignou <gwendal@chromium.org> | |
| Description: | |
| (RO) Shows the DSM TRIM mode currently used by the device. Valid | |
| values are: | |
| unsupported: Drive does not support DSM TRIM | |
| unqueued: Drive supports unqueued DSM TRIM only | |
| queued: Drive supports queued DSM TRIM | |
| forced_unqueued: Drive's queued DSM support is known to | |
| be buggy and only unqueued TRIM commands | |
| are sent |