Deleted Added
full compact
mcd.c (58345) mcd.c (58934)
1/*
2 * Copyright 1993 by Holger Veit (data part)
3 * Copyright 1993 by Brian Moore (audio part)
4 * Changes Copyright 1993 by Gary Clark II
5 * Changes Copyright (C) 1994-1995 by Andrey A. Chernov, Moscow, Russia
6 *
7 * Rewrote probe routine to work on newer Mitsumi drives.
8 * Additional changes (C) 1994 by Jordan K. Hubbard

--- 26 unchanged lines hidden (view full) ---

35 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
36 * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
37 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
38 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
39 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
40 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
41 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
42 *
1/*
2 * Copyright 1993 by Holger Veit (data part)
3 * Copyright 1993 by Brian Moore (audio part)
4 * Changes Copyright 1993 by Gary Clark II
5 * Changes Copyright (C) 1994-1995 by Andrey A. Chernov, Moscow, Russia
6 *
7 * Rewrote probe routine to work on newer Mitsumi drives.
8 * Additional changes (C) 1994 by Jordan K. Hubbard

--- 26 unchanged lines hidden (view full) ---

35 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
36 * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
37 * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
38 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
39 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
40 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
41 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
42 *
43 * $FreeBSD: head/sys/dev/mcd/mcd.c 58345 2000-03-20 10:44:49Z phk $
43 * $FreeBSD: head/sys/dev/mcd/mcd.c 58934 2000-04-02 15:24:56Z phk $
44 */
45static const char COPYRIGHT[] = "mcd-driver (C)1993 by H.Veit & B.Moore";
46
47#include "mcd.h"
48#include <sys/param.h>
49#include <sys/systm.h>
50#include <sys/conf.h>
51#include <sys/fcntl.h>

--- 345 unchanged lines hidden (view full) ---

397 /* test validity */
398/*MCD_TRACE("strategy: buf=0x%lx, unit=%ld, block#=%ld bcount=%ld\n",
399 bp,unit,bp->b_blkno,bp->b_bcount);*/
400 if (unit >= NMCD || bp->b_blkno < 0) {
401 printf("mcdstrategy: unit = %d, blkno = %ld, bcount = %ld\n",
402 unit, (long)bp->b_blkno, bp->b_bcount);
403 printf("mcd: mcdstratregy failure");
404 bp->b_error = EINVAL;
44 */
45static const char COPYRIGHT[] = "mcd-driver (C)1993 by H.Veit & B.Moore";
46
47#include "mcd.h"
48#include <sys/param.h>
49#include <sys/systm.h>
50#include <sys/conf.h>
51#include <sys/fcntl.h>

--- 345 unchanged lines hidden (view full) ---

397 /* test validity */
398/*MCD_TRACE("strategy: buf=0x%lx, unit=%ld, block#=%ld bcount=%ld\n",
399 bp,unit,bp->b_blkno,bp->b_bcount);*/
400 if (unit >= NMCD || bp->b_blkno < 0) {
401 printf("mcdstrategy: unit = %d, blkno = %ld, bcount = %ld\n",
402 unit, (long)bp->b_blkno, bp->b_bcount);
403 printf("mcd: mcdstratregy failure");
404 bp->b_error = EINVAL;
405 bp->b_flags |= B_ERROR;
405 bp->b_ioflags |= BIO_ERROR;
406 goto bad;
407 }
408
409 /* if device invalidated (e.g. media change, door open), error */
410 if (!(cd->flags & MCDVALID)) {
411MCD_TRACE("strategy: drive not valid\n");
412 bp->b_error = EIO;
413 goto bad;

--- 29 unchanged lines hidden (view full) ---

443 bufqdisksort(&cd->head, bp);
444 splx(s);
445
446 /* now check whether we can perform processing */
447 mcd_start(unit);
448 return;
449
450bad:
406 goto bad;
407 }
408
409 /* if device invalidated (e.g. media change, door open), error */
410 if (!(cd->flags & MCDVALID)) {
411MCD_TRACE("strategy: drive not valid\n");
412 bp->b_error = EIO;
413 goto bad;

--- 29 unchanged lines hidden (view full) ---

443 bufqdisksort(&cd->head, bp);
444 splx(s);
445
446 /* now check whether we can perform processing */
447 mcd_start(unit);
448 return;
449
450bad:
451 bp->b_flags |= B_ERROR;
451 bp->b_ioflags |= BIO_ERROR;
452done:
453 bp->b_resid = bp->b_bcount;
454 biodone(bp);
455 return;
456}
457
458static void mcd_start(int unit)
459{

--- 719 unchanged lines hidden (view full) ---

1179readerr:
1180 if (mbx->retry-- > 0) {
1181 printf("mcd%d: retrying\n",unit);
1182 state = MCD_S_BEGIN1;
1183 goto loop;
1184 }
1185harderr:
1186 /* invalidate the buffer */
452done:
453 bp->b_resid = bp->b_bcount;
454 biodone(bp);
455 return;
456}
457
458static void mcd_start(int unit)
459{

--- 719 unchanged lines hidden (view full) ---

1179readerr:
1180 if (mbx->retry-- > 0) {
1181 printf("mcd%d: retrying\n",unit);
1182 state = MCD_S_BEGIN1;
1183 goto loop;
1184 }
1185harderr:
1186 /* invalidate the buffer */
1187 bp->b_flags |= B_ERROR;
1187 bp->b_ioflags |= BIO_ERROR;
1188 bp->b_resid = bp->b_bcount;
1189 biodone(bp);
1190
1191 cd->flags &= ~(MCDMBXBSY|MCDREADRAW);
1192 mcd_start(mbx->unit);
1193 return;
1194
1195changed:

--- 638 unchanged lines hidden ---
1188 bp->b_resid = bp->b_bcount;
1189 biodone(bp);
1190
1191 cd->flags &= ~(MCDMBXBSY|MCDREADRAW);
1192 mcd_start(mbx->unit);
1193 return;
1194
1195changed:

--- 638 unchanged lines hidden ---