Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 12 Mar 2026 13:44:18 +0000
From:      Ed Maste <emaste@FreeBSD.org>
To:        src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org
Cc:        Dmitry Lukhtionov <dmitryluhtionov@gmail.com>
Subject:   git: b1d4b8379f92 - stable/15 - camcontrol: Print 'transport revision'
Message-ID:  <69b2c332.32df8.203ea0c4@gitrepo.freebsd.org>

index | next in thread | raw e-mail

The branch stable/15 has been updated by emaste:

URL: https://cgit.FreeBSD.org/src/commit/?id=b1d4b8379f928259b50b3db13972a9a47a345892

commit b1d4b8379f928259b50b3db13972a9a47a345892
Author:     Dmitry Lukhtionov <dmitryluhtionov@gmail.com>
AuthorDate: 2026-02-23 14:42:59 +0000
Commit:     Ed Maste <emaste@FreeBSD.org>
CommitDate: 2026-03-12 13:43:38 +0000

    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
    
    (cherry picked from commit f4f9054dc47b430872d38c7a75fea753c6fe796f)
---
 sbin/camcontrol/camcontrol.c | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/sbin/camcontrol/camcontrol.c b/sbin/camcontrol/camcontrol.c
index 15a5d42a2ba5..1b27ad3723dd 100644
--- a/sbin/camcontrol/camcontrol.c
+++ b/sbin/camcontrol/camcontrol.c
@@ -1672,6 +1672,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 &&


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?69b2c332.32df8.203ea0c4>