2 #include "../port/lib.h"
9 * SMC FDC37C93x Plug and Play Compatible Ultra I/O Controller.
11 enum { /* I/O Ports */
12 Config = 0x370, /* could also be 0x3F0 */
18 static int fddregs[] = {
31 #define OUTB(p, d) outb(p, d); microdelay(10);
43 OUTB(config+Index, 0x20);
45 print("fdc37c93x: Device ID 0x%2.2uX\n", x);
46 OUTB(config+Index, 0x22);
48 print("fdc37c93x: Power/Control 0x%2.2uX\n", x);
50 OUTB(config+Index, 0x07);
52 for(i = 0; fddregs[i]; i++){
53 OUTB(config+Index, fddregs[i]);
55 print("FDD%2.2uX: 0x%2.2uX\n", fddregs[i], x);
58 OUTB(config+Index, 0x70);
59 OUTB(config+Data, 0x06);
60 OUTB(config+Index, 0x74);
61 OUTB(config+Data, 0x02);
62 OUTB(config+Index, 0x30);
63 OUTB(config+Data, 0x01);