summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/scsi/atapi_disk.h15
-rw-r--r--sys/scsi/sd_atapi.c14
2 files changed, 9 insertions, 20 deletions
diff --git a/sys/scsi/atapi_disk.h b/sys/scsi/atapi_disk.h
index 40750e5630b..5f7606effad 100644
--- a/sys/scsi/atapi_disk.h
+++ b/sys/scsi/atapi_disk.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: atapi_disk.h,v 1.3 2005/05/22 21:11:31 krw Exp $ */
+/* $OpenBSD: atapi_disk.h,v 1.4 2005/06/19 20:41:28 krw Exp $ */
/* $NetBSD: atapi_disk.h,v 1.3 1998/02/13 08:28:21 enami Exp $ */
/*
@@ -54,12 +54,6 @@ struct atapi_capacity_list_header {
u_int8_t length;
};
-struct atapi_capacity_descriptor {
- u_int8_t nblks[4];
- u_int8_t byte5;
- u_int8_t blklen[3];
-};
-
/* codes only valid in the current/maximum capacity descriptor */
#define ATAPI_CAP_DESC_CODE_MASK 0x3
/* reserved 0x0 */
@@ -69,13 +63,8 @@ struct atapi_capacity_descriptor {
#define ATAPI_CAP_DESC_SIZE(n) \
(sizeof(struct atapi_capacity_list_header) + \
- (n) * sizeof(struct atapi_capacity_descriptor))
+ (n) * sizeof(struct scsi_direct_blk_desc))
#define ATAPI_CAP_DESC_OFFSET_HEADER 0
#define ATAPI_CAP_DESC_OFFSET_DESC(n) ATAPI_CAP_DESC_SIZE(n)
#define ATAPI_FLEX_GEOMETRY_PAGE 0x05
-
-struct atapi_sd_mode_data {
- struct scsi_mode_header_big header;
- union scsi_disk_pages pages;
-};
diff --git a/sys/scsi/sd_atapi.c b/sys/scsi/sd_atapi.c
index cdbca3dfd15..ff8726a7463 100644
--- a/sys/scsi/sd_atapi.c
+++ b/sys/scsi/sd_atapi.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sd_atapi.c,v 1.9 2005/06/03 15:50:10 krw Exp $ */
+/* $OpenBSD: sd_atapi.c,v 1.10 2005/06/19 20:41:28 krw Exp $ */
/* $NetBSD: sd_atapi.c,v 1.3 1998/08/31 22:28:07 cgd Exp $ */
/*
@@ -71,7 +71,7 @@ sd_atapibus_get_parms(sd, dp, flags)
int flags;
{
struct atapi_read_format_capacities scsi_cmd;
- struct atapi_capacity_descriptor *descp;
+ struct scsi_direct_blk_desc *descp;
struct scsi_mode_sense_buf sense_data;
union scsi_disk_pages *sense_pages = NULL;
char capacity_data[ATAPI_CAP_DESC_SIZE(1)];
@@ -92,10 +92,10 @@ sd_atapibus_get_parms(sd, dp, flags)
if (error != 0)
return (SDGP_RESULT_OFFLINE);
- descp = (struct atapi_capacity_descriptor *)
+ descp = (struct scsi_direct_blk_desc *)
&capacity_data[ATAPI_CAP_DESC_OFFSET_DESC(0)];
- switch (descp->byte5 & ATAPI_CAP_DESC_CODE_MASK) {
+ switch (descp->density & ATAPI_CAP_DESC_CODE_MASK) {
case ATAPI_CAP_DESC_CODE_UNFORMATTED:
return SDGP_RESULT_UNFORMATTED;
@@ -107,13 +107,13 @@ sd_atapibus_get_parms(sd, dp, flags)
default:
#ifdef DIAGNOSTIC
- printf("%s: strange capacity descriptor byte5 0x%x\n",
- sd->sc_dev.dv_xname, (u_int)descp->byte5);
+ printf("%s: strange capacity descriptor density 0x%x\n",
+ sd->sc_dev.dv_xname, (u_int)descp->density);
#endif
break;
}
- dp->disksize = _4btol(descp->nblks);
+ dp->disksize = _4btol(descp->nblocks);
if (dp->disksize == 0)
return (SDGP_RESULT_OFFLINE);