diff options
Diffstat (limited to 'sys/dev/atapi/atapiconf.c')
-rw-r--r-- | sys/dev/atapi/atapiconf.c | 37 |
1 files changed, 24 insertions, 13 deletions
diff --git a/sys/dev/atapi/atapiconf.c b/sys/dev/atapi/atapiconf.c index b5cfb5e94a9..b343bc4eda2 100644 --- a/sys/dev/atapi/atapiconf.c +++ b/sys/dev/atapi/atapiconf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: atapiconf.c,v 1.14 1997/06/15 02:38:01 downsj Exp $ */ +/* $OpenBSD: atapiconf.c,v 1.15 1997/06/24 05:29:54 downsj Exp $ */ /* * Copyright (c) 1996 Manuel Bouyer. All rights reserved. @@ -93,17 +93,25 @@ struct atapi_quirk_inquiry_pattern { }; struct atapi_quirk_inquiry_pattern atapi_quirk_inquiry_patterns[] = { + /* GoldStar 8X */ {ATAPI_DEVICE_TYPE_CD, ATAPI_REMOVABLE, - "GCD-R580B", "1.00", AQUIRK_LITTLETOC},/* GoldStar 8X */ - + "GCD-R580B", "1.00", AQUIRK_LITTLETOC}, + /* NEC Multispin 2Vi */ {ATAPI_DEVICE_TYPE_DAD, ATAPI_REMOVABLE, "NEC CD-ROM DRIVE:260", "3.04", AQUIRK_CDROM}, - /* NEC Multispin 2Vi */ + /* NEC 273 */ + {ATAPI_DEVICE_TYPE_CD, ATAPI_REMOVABLE, + "NEC CD-ROM DRIVE:273", "4.21", AQUIRK_NOTUR}, + /* Sanyo 6x */ + {ATAPI_DEVICE_TYPE_CD, ATAPI_REMOVABLE, + "SANYO CRD-256P", "1.02", AQUIRK_NOCAPACITY}, + /* Acer Notelight 370 */ {ATAPI_DEVICE_TYPE_CD, ATAPI_REMOVABLE, "UJDCD8730", "1.14", AQUIRK_NODOORLOCK}, - /* Acer Notelight 370 */ - - {0, 0, NULL, NULL, 0} /* The End */ + /* ALPS CD changer */ + {ATAPI_DEVICE_TYPE_CD, ATAPI_REMOVABLE, + "ALPS ELECTRIC CO.,LTD. DC544C", "SW03D", AQUIRK_NOTUR}, + {0, 0, NULL, NULL, 0} }; int @@ -529,13 +537,16 @@ atapi_test_unit_ready(ad_link, flags) ATAPI_DEBUG_FCTN_PRINT(("atapi_test_unit_ready: ")); - bzero(&cmd, sizeof(cmd)); - cmd.opcode = ATAPI_TEST_UNIT_READY; - - ret = atapi_exec_cmd(ad_link, &cmd, sizeof(cmd), 0, 0, 0, flags); - + /* Device doesn't support TUR! */ + if (ad_link->quirks & AQUIRK_NOTUR) + ret = 0; + else { + bzero(&cmd, sizeof(cmd)); + cmd.opcode = ATAPI_TEST_UNIT_READY; + ret = atapi_exec_cmd(ad_link, &cmd, sizeof(cmd), 0, 0, 0, + flags); + } ATAPI_DEBUG_FCTN_PRINT(("atapi_test_unit_ready: ret %d\n", ret)); - return ret; } |