Author: mav
Date: Fri Jul 19 20:02:01 2019
New Revision: 350150
URL: https://svnweb.freebsd.org/changeset/base/350150

Log:
  Properly report ACS revisions alike to kernel.
  
  MFC after:    2 weeks

Modified:
  head/sbin/camcontrol/camcontrol.c

Modified: head/sbin/camcontrol/camcontrol.c
==============================================================================
--- head/sbin/camcontrol/camcontrol.c   Fri Jul 19 19:15:08 2019        
(r350149)
+++ head/sbin/camcontrol/camcontrol.c   Fri Jul 19 20:02:01 2019        
(r350150)
@@ -1478,6 +1478,7 @@ atasata(struct ata_params *parm)
 static void
 atacapprint(struct ata_params *parm)
 {
+       const char *proto;
        u_int32_t lbasize = (u_int32_t)parm->lba_size_1 |
                                ((u_int32_t)parm->lba_size_2 << 16);
 
@@ -1488,7 +1489,19 @@ atacapprint(struct ata_params *parm)
 
        printf("\n");
        printf("protocol              ");
-       printf("ATA/ATAPI-%d", ata_version(parm->version_major));
+       proto = (parm->config == ATA_PROTO_CFA) ? "CFA" :
+               (parm->config & ATA_PROTO_ATAPI) ? "ATAPI" : "ATA";
+       if (ata_version(parm->version_major) == 0) {
+               printf("%s", proto);
+       } else if (ata_version(parm->version_major) <= 7) {
+               printf("%s-%d", proto,
+                   ata_version(parm->version_major));
+       } else if (ata_version(parm->version_major) == 8) {
+               printf("%s8-ACS", proto);
+       } else {
+               printf("ACS-%d %s",
+                   ata_version(parm->version_major) - 7, proto);
+       }
        if (parm->satacapabilities && parm->satacapabilities != 0xffff) {
                if (parm->satacapabilities & ATA_SATA_GEN3)
                        printf(" SATA 3.x\n");
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to