diff options
| author | Dmitry Lukhtionov <dmitryluhtionov@gmail.com> | 2026-02-23 14:42:59 +0000 |
|---|---|---|
| committer | Ed Maste <emaste@FreeBSD.org> | 2026-02-24 14:48:58 +0000 |
| commit | f4f9054dc47b430872d38c7a75fea753c6fe796f (patch) | |
| tree | 89729eb6f3e6487b1086e67f5779f798eb503fda | |
| parent | 9ed56cd8d6929e3ee733e1e61d2e0c6b81122983 (diff) | |
camcontrol: Print 'transport revision'
As described in Serial ATA Revision 3.5a
Reviewed by: mav
Pull Request: https://github.com/freebsd/freebsd-src/pull/2044
| -rw-r--r-- | sbin/camcontrol/camcontrol.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/sbin/camcontrol/camcontrol.c b/sbin/camcontrol/camcontrol.c index c2deafbd81da..7ad177c3e4b6 100644 --- a/sbin/camcontrol/camcontrol.c +++ b/sbin/camcontrol/camcontrol.c @@ -1674,6 +1674,35 @@ atacapprint(struct ata_params *parm) } printf("\n"); + printf("transport revision "); + if (parm->transport_major == 0 || parm->transport_major == 0xffff) { + printf("Unknown"); + } else { + if (parm->transport_major & 0x0400) + printf("SATA Rev 3.5"); + else if (parm->transport_major & 0x0200) + printf("SATA Rev 3.4"); + else if (parm->transport_major & 0x0100) + printf("SATA Rev 3.3"); + else if (parm->transport_major & 0x0080) + printf("SATA Rev 3.2"); + else if (parm->transport_major & 0x0040) + printf("SATA Rev 3.1"); + else if (parm->transport_major & 0x0020) + printf("SATA Rev 3.0"); + else if (parm->transport_major & 0x0010) + printf("SATA Rev 2.6"); + else if (parm->transport_major & 0x0008) + printf("SATA Rev 2.5"); + else if (parm->transport_major & 0x0004) + printf("SATA II: Extensions"); + else if (parm->transport_major & 0x0002) + printf("SATA 1.0a"); + else if (parm->transport_major & 0x0001) + printf("ATA8-AST"); + } + printf("\n"); + if (parm->media_rotation_rate == 1) { printf("media RPM non-rotating\n"); } else if (parm->media_rotation_rate >= 0x0401 && |
