summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsanpei <sanpei@FreeBSD.org>2004-01-03 13:30:19 +0000
committersanpei <sanpei@FreeBSD.org>2004-01-03 13:30:19 +0000
commitb758c940c1abd0f507a03af74d12b87be28af9b4 (patch)
treede0ad865e718ec2da1659c5e465bd20c2c184b14
parent79a95fe15c1400e22ec9af52d14c5b62559caf9c (diff)
downloadFreeBSD-src-b758c940c1abd0f507a03af74d12b87be28af9b4.zip
FreeBSD-src-b758c940c1abd0f507a03af74d12b87be28af9b4.tar.gz
Add the MMC commands to umass_atapi_transform. It seems to work
unmodified for ATAPI type devices with ports/sysutils/cdrtools. (But we need timeout routine which was in kern/58649 for fixate, I think.) PR: kern/58649 Submitted by: SAKIYAMA Nobuo <sakichan@sakichan.org>
-rw-r--r--sys/dev/usb/umass.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/sys/dev/usb/umass.c b/sys/dev/usb/umass.c
index 7db681a..f86adf5 100644
--- a/sys/dev/usb/umass.c
+++ b/sys/dev/usb/umass.c
@@ -2911,6 +2911,22 @@ umass_atapi_transform(struct umass_softc *sc, unsigned char *cmd, int cmdlen,
case SYNCHRONIZE_CACHE:
case MODE_SELECT_10:
case MODE_SENSE_10:
+ case READ_BUFFER:
+ case 0x42: /* READ_SUBCHANNEL */
+ case 0x43: /* READ_TOC */
+ case 0x44: /* READ_HEADER */
+ case 0x51: /* READ_DISK_INFO */
+ case 0x52: /* READ_TRACK_INFO */
+ case 0x54: /* SEND_OPC */
+ case 0x59: /* READ_MASTER_CUE */
+ case 0x5b: /* CLOSE_TR_SESSION */
+ case 0x5c: /* READ_BUFFER_CAP */
+ case 0x5d: /* SEND_CUE_SHEET */
+ case 0xa1: /* BLANK */
+ case 0xa6: /* EXCHANGE_MEDIUM */
+ case 0xad: /* READ_DVD_STRUCTURE */
+ case 0xbb: /* SET_CD_SPEED */
+ case 0xe5: /* READ_TRACK_INFO_PHILIPS */
memcpy(*rcmd, cmd, cmdlen);
return 1;
OpenPOWER on IntegriCloud