summaryrefslogtreecommitdiffstats
path: root/share/man/man4/man4.i386/wd.4
blob: 54d173cf1e9e9d59659eb19858a542f21d6251d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
.\"
.\" Copyright (c) 1994 Wilko Bulte
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. The name of the author may not be used to endorse or promote products
.\"    derived from this software withough specific prior written permission
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\"	$Id: wd.4,v 1.6 1997/07/15 09:44:05 charnier Exp $
.\"
.Dd August 31, 1994
.Dt WD 4 i386
.Os FreeBSD
.Sh NAME
.Nm wd
.Nd
Generic WD100x/IDE diskcontroller driver
.Sh SYNOPSIS
.Cd "controller wdc0 at isa? port" \&"IO_WD1\&" bio irq 14 vector wdintr
.Cd "disk wd0 at wdc0 drive 0
.Cd "disk wd1 at wdc0 drive 1
.Pp
For the CMD640b IDE controller:
.Cd "options"  \&"CMD640\&"
.Sh DESCRIPTION
This driver provides access to disks connected to controllers that emulate
the Western Digital WD100x series. This range of controllers includes WD1003
type ST412 controllers, WD1007 ESDI controllers and also the generic IDE 
controllers found on most motherboards.
.Pp
Your controller documentation is usually quick to point out any WD100x 
compatibility.
.Pp
You can convey a number of hints and instructions to the driver using
the
.Ar flags
parameter.
.Pp
For each drive there are four bit-fields encoded in a 16 bit integer:
.Bl -tag -width 0x0000 -offset 1c
.It 0x8000
Test and use the 32bit transfer capability of the drive.
.It 0x4000
If drive looks like it's comming out of sleep mode, assume it's 
confused and reinitialize it.
.It 0x2000
Probe for and use the bus-mastering DMA capabilities of modern
PCI chipsets.
.It 0x0f00
Force number of heads to ((flags & 0xf00)>>8), recalculate number
of cylinders to match.
.It 0x00ff
Test and use multi-sector transfer mode of this drive, max number of
sectors attempted is (flags & 0x00ff).
.El
.Pp
The flags can be specified on the line for the drive as a 16 bit int,
or on the controller line as a 32 bit int, where the top 16 bit is
relevant to the highest numbered drive.
.Pp
The
.Dq Dv CMD640
configuration option
enables a workaround for a deficiency of the CMD640b IDE controller.
If this option is enabled and the chip is detected by the PCI subsystem,
the primary and secondary controller will not be used simultaneously.
.Sh FILES
.Bl -tag -width Pa -compact
.It Pa /dev/wd*
disk block device nodes 
.It Pa /dev/rwd*
disk character device nodes
.It Pa /sys/i386/conf/GENERIC
sample generic kernel config file for (a.o.) wd based systems
.It Pa /sys/i386/isa/wd.c
driver source
.El
.Sh SEE ALSO
.Xr bad144 8
.Sh NOTES
This controller/disk combo has no provisions for automatic bad block handling.
You need to run 
.Xr bad144 8
to check for bad blocks.
OpenPOWER on IntegriCloud