From 6b9bc594267d7db922a633954c52e17ff1ff18cb Mon Sep 17 00:00:00 2001 From: rocky Date: Mon, 26 Apr 2004 07:54:47 +0000 Subject: [PATCH] More procedure canonicalization, some #defines added and used. --- lib/_cdio_freebsd.c | 8 ++++---- lib/_cdio_linux.c | 26 +++++++++++++------------- lib/scsi_mmc.h | 3 ++- 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/lib/_cdio_freebsd.c b/lib/_cdio_freebsd.c index d0bc3727..f085c1ba 100644 --- a/lib/_cdio_freebsd.c +++ b/lib/_cdio_freebsd.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_freebsd.c,v 1.23 2004/04/26 06:40:16 rocky Exp $ + $Id: _cdio_freebsd.c,v 1.24 2004/04/26 07:54:47 rocky Exp $ Copyright (C) 2003, 2004 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_freebsd.c,v 1.23 2004/04/26 06:40:16 rocky Exp $"; +static const char _rcsid[] = "$Id: _cdio_freebsd.c,v 1.24 2004/04/26 07:54:47 rocky Exp $"; #include #include @@ -287,8 +287,8 @@ _cdio_read_toc (_img_private_t *_obj) Eject media. Return 1 if successful, 0 otherwise. */ static int -_eject_media_freebsd (void *env) { - +_eject_media_freebsd (void *env) +{ _img_private_t *_obj = env; int ret=2; int fd; diff --git a/lib/_cdio_linux.c b/lib/_cdio_linux.c index 3b427aa8..1de32ab7 100644 --- a/lib/_cdio_linux.c +++ b/lib/_cdio_linux.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_linux.c,v 1.38 2004/04/25 15:41:26 rocky Exp $ + $Id: _cdio_linux.c,v 1.39 2004/04/26 07:54:47 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.38 2004/04/25 15:41:26 rocky Exp $"; +static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.39 2004/04/26 07:54:47 rocky Exp $"; #include @@ -278,7 +278,7 @@ _read_audio_sectors_linux (void *env, void *buf, lsn_t lsn, Can read only up to 25 blocks. */ static int -__read_packet_mode2_sectors (int fd, void *buf, lba_t lba, +_read_packet_mode2_sectors_mmc (int fd, void *buf, lba_t lba, unsigned int nblocks, bool use_read_10) { struct cdrom_generic_command cgc; @@ -297,7 +297,7 @@ __read_packet_mode2_sectors (int fd, void *buf, lba_t lba, cgc.cmd[9] = 0x58; /* 2336 mode2 */ } - cgc.buflen = 2336 * nblocks; + cgc.buflen = M2RAW_SECTOR_SIZE * nblocks; cgc.buffer = buf; #ifdef HAVE_LINUX_CDROM_TIMEOUT @@ -309,16 +309,16 @@ __read_packet_mode2_sectors (int fd, void *buf, lba_t lba, { int retval; - if ((retval = _set_bsize (fd, 2336))) + if ((retval = _set_bsize (fd, M2RAW_SECTOR_SIZE))) return retval; if ((retval = ioctl (fd, CDROM_SEND_PACKET, &cgc))) { - _set_bsize (fd, 2048); + _set_bsize (fd, CDIO_CD_FRAMESIZE); return retval; } - if ((retval = _set_bsize (fd, 2048))) + if ((retval = _set_bsize (fd, CDIO_CD_FRAMESIZE))) return retval; } else @@ -337,10 +337,10 @@ _read_packet_mode2_sectors (int fd, void *buf, lba_t lba, while (nblocks > 0) { const unsigned nblocks2 = (nblocks > 25) ? 25 : nblocks; - void *buf2 = ((char *)buf ) + (l * 2336); + void *buf2 = ((char *)buf ) + (l * M2RAW_SECTOR_SIZE); - retval |= __read_packet_mode2_sectors (fd, buf2, lba + l, nblocks2, - use_read_10); + retval |= _read_packet_mode2_sectors_mmc (fd, buf2, lba + l, nblocks2, + use_read_10); if (retval) break; @@ -665,7 +665,7 @@ _cdio_read_toc (_img_private_t *_obj) * Eject using SCSI commands. Return 1 if successful, 0 otherwise. */ static int -_cdio_eject_scsi(int fd) +_eject_media_mmc(int fd) { int status; struct sdata { @@ -741,8 +741,8 @@ _eject_media_linux (void *env) { case CDS_DISC_OK: if((ret = ioctl(fd, CDROMEJECT)) != 0) { int eject_error = errno; - /* Try ejecting the SCSI way... */ - ret = _cdio_eject_scsi(fd); + /* Try ejecting the MMC way... */ + ret = _eject_media_mmc(fd); if (0 != ret) { cdio_error("ioctl CDROMEJECT failed: %s\n", strerror(eject_error)); ret = 1; diff --git a/lib/scsi_mmc.h b/lib/scsi_mmc.h index 60494fa8..bcb9cd81 100644 --- a/lib/scsi_mmc.h +++ b/lib/scsi_mmc.h @@ -1,5 +1,5 @@ /* - $Id: scsi_mmc.h,v 1.7 2004/04/25 03:52:37 rocky Exp $ + $Id: scsi_mmc.h,v 1.8 2004/04/26 07:54:47 rocky Exp $ Copyright (C) 2003, 2004 Rocky Bernstein @@ -37,6 +37,7 @@ /*! The generic packet command opcodes for CD/DVD Logical Units. */ #define CDIO_MMC_MODE_SENSE 0x1a +#define CDIO_MMC_START_STOP 0x1b #define CDIO_MMC_GPCMD_READ_10 0x28 #define CDIO_MMC_GPCMD_READ_SUBCHANNEL 0x42 #define CDIO_MMC_MODE_SENSE_10 0x5a