svn commit: r367261 - in head/sys: cam dev/ahci dev/siis
Alexander Motin
mav at FreeBSD.org
Mon Nov 2 01:01:42 UTC 2020
Author: mav
Date: Mon Nov 2 01:01:41 2020
New Revision: 367261
URL: https://svnweb.freebsd.org/changeset/base/367261
Log:
Add icc (Isochronous Command Completion) ccb_ataio field.
MFC after: 1 week
Modified:
head/sys/cam/cam_ccb.h
head/sys/dev/ahci/ahci.c
head/sys/dev/siis/siis.c
Modified: head/sys/cam/cam_ccb.h
==============================================================================
--- head/sys/cam/cam_ccb.h Mon Nov 2 00:45:40 2020 (r367260)
+++ head/sys/cam/cam_ccb.h Mon Nov 2 01:01:41 2020 (r367261)
@@ -786,6 +786,8 @@ struct ccb_ataio {
u_int32_t resid; /* Transfer residual length: 2's comp */
u_int8_t ata_flags; /* Flags for the rest of the buffer */
#define ATA_FLAG_AUX 0x1
+#define ATA_FLAG_ICC 0x2
+ uint8_t icc; /* Isochronous Command Completion */
uint32_t aux;
uint32_t unused;
};
Modified: head/sys/dev/ahci/ahci.c
==============================================================================
--- head/sys/dev/ahci/ahci.c Mon Nov 2 00:45:40 2020 (r367260)
+++ head/sys/dev/ahci/ahci.c Mon Nov 2 01:01:41 2020 (r367261)
@@ -2584,15 +2584,17 @@ ahci_setup_fis(struct ahci_channel *ch, struct ahci_cm
fis[12] |= tag << 3;
}
fis[13] = ccb->ataio.cmd.sector_count_exp;
+ if (ccb->ataio.ata_flags & ATA_FLAG_ICC)
+ fis[14] = ccb->ataio.icc;
fis[15] = ATA_A_4BIT;
+ if (ccb->ataio.ata_flags & ATA_FLAG_AUX) {
+ fis[16] = ccb->ataio.aux & 0xff;
+ fis[17] = (ccb->ataio.aux >> 8) & 0xff;
+ fis[18] = (ccb->ataio.aux >> 16) & 0xff;
+ fis[19] = (ccb->ataio.aux >> 24) & 0xff;
+ }
} else {
fis[15] = ccb->ataio.cmd.control;
- }
- if (ccb->ataio.ata_flags & ATA_FLAG_AUX) {
- fis[16] = ccb->ataio.aux & 0xff;
- fis[17] = (ccb->ataio.aux >> 8) & 0xff;
- fis[18] = (ccb->ataio.aux >> 16) & 0xff;
- fis[19] = (ccb->ataio.aux >> 24) & 0xff;
}
return (20);
}
Modified: head/sys/dev/siis/siis.c
==============================================================================
--- head/sys/dev/siis/siis.c Mon Nov 2 00:45:40 2020 (r367260)
+++ head/sys/dev/siis/siis.c Mon Nov 2 01:01:41 2020 (r367261)
@@ -1729,6 +1729,8 @@ siis_setup_fis(device_t dev, struct siis_cmd *ctp, uni
fis[12] |= tag << 3;
}
fis[13] = ccb->ataio.cmd.sector_count_exp;
+ if (ccb->ataio.ata_flags & ATA_FLAG_ICC)
+ fis[14] = ccb->ataio.icc;
fis[15] = ATA_A_4BIT;
if (ccb->ataio.ata_flags & ATA_FLAG_AUX) {
fis[16] = ccb->ataio.aux & 0xff;
More information about the svn-src-head
mailing list