c2fab4fea000996b3068c40b1b44e7003ea0a129
[reactos.git] / reactos / drivers / storage / class / disk_new / data.c
1 /*++
2
3 Copyright (C) Microsoft Corporation, 1991 - 1999
4
5 Module Name:
6
7 disk.c
8
9 Abstract:
10
11 SCSI disk class driver
12
13 Environment:
14
15 kernel mode only
16
17 Notes:
18
19 Revision History:
20
21 --*/
22
23 #include "disk.h"
24
25 #ifdef ALLOC_DATA_PRAGMA
26 #pragma data_seg("PAGE")
27 #endif
28
29 /*
30 #define HackDisableTaggedQueuing (0x01)
31 #define HackDisableSynchronousTransfers (0x02)
32 #define HackDisableSpinDown (0x04)
33 #define HackDisableWriteCache (0x08)
34 #define HackCauseNotReportableHack (0x10)
35 #define HackRequiresStartUnitCommand (0x20)
36 */
37
38 CLASSPNP_SCAN_FOR_SPECIAL_INFO DiskBadControllers[] = {
39 { "COMPAQ" , "PD-1" , NULL, 0x02 },
40 { "CONNER" , "CP3500" , NULL, 0x02 },
41 { "FUJITSU" , "M2652S-512" , NULL, 0x01 },
42 { "HP ", "C1113F " , NULL, 0x20 },
43 // iomegas require START_UNIT commands so be sure to match all of them.
44 { "iomega" , "jaz" , NULL, 0x30 },
45 { "iomega" , NULL , NULL, 0x20 },
46 { "IOMEGA" , "ZIP" , NULL, 0x27 },
47 { "IOMEGA" , NULL , NULL, 0x20 },
48 { "MAXTOR" , "MXT-540SL" , "I1.2", 0x01 },
49 { "MICROP" , "1936-21MW1002002" , NULL, 0x03 },
50 { "OLIVETTI", "CP3500" , NULL, 0x02 },
51 { "SEAGATE" , "ST41601N" , "0102", 0x02 },
52 { "SEAGATE" , "ST3655N" , NULL, 0x08 },
53 { "SEAGATE" , "ST3390N" , NULL, 0x08 },
54 { "SEAGATE" , "ST12550N" , NULL, 0x08 },
55 { "SEAGATE" , "ST32430N" , NULL, 0x08 },
56 { "SEAGATE" , "ST31230N" , NULL, 0x08 },
57 { "SEAGATE" , "ST15230N" , NULL, 0x08 },
58 { "SyQuest" , "SQ5110" , "CHC", 0x03 },
59 { "TOSHIBA" , "MK538FB" , "60", 0x01 },
60 { NULL , NULL , NULL, 0x0 }
61 };
62
63 //
64 // ======== ROS DIFF ========
65 // Added MediaTypes in their own brace nesting level
66 // ======== ROS DIFF ========
67 //
68 DISK_MEDIA_TYPES_LIST const DiskMediaTypes[] = {
69 { "COMPAQ" , "PD-1 LF-1094" , NULL, 1, 1, {PC_5_RW , 0 , 0 , 0 }},
70 { "HP" , NULL , NULL, 2, 2, {MO_5_WO , MO_5_RW, 0 , 0 }},
71 { "iomega" , "jaz" , NULL, 1, 1, {IOMEGA_JAZ , 0 , 0 , 0 }},
72 { "IOMEGA" , "ZIP" , NULL, 1, 1, {IOMEGA_ZIP , 0 , 0 , 0 }},
73 { "PINNACLE", "Apex 4.6GB" , NULL, 3, 2, {PINNACLE_APEX_5_RW, MO_5_RW, MO_5_WO, 0 }},
74 { "SONY" , "SMO-F541" , NULL, 2, 2, {MO_5_WO , MO_5_RW, 0 , 0 }},
75 { "SONY" , "SMO-F551" , NULL, 2, 2, {MO_5_WO , MO_5_RW, 0 , 0 }},
76 { NULL , NULL , NULL, 0, 0, {0 , 0 , 0 , 0 }}
77 };
78
79 #ifdef ALLOC_DATA_PRAGMA
80 #pragma data_seg()
81 #endif
82