NAME
rf
-
DEC RX01 / RX02
floppy disk interface
SYNOPSIS
rfc0 at uba? csr 0177170 # RX01/RX02 controller
rf* at rfc? drive? # RX01/RX02 floppy disk drive
DESCRIPTION
The
rf
device provides access to
DEC
RX01
and
RX02
floppy disk drives and clones thereof.
These drives use preformatted 8" single sided, soft sectored media.
The
RX01
and
RX02
drives use a geometry of 77 cylinders, one head and 26 sectors.
Each sector contains 128 bytes in case of single density (
RX01
and
RX02
in
RX01
mode) or 256 bytes in double density mode.
As
NetBSD
is not able to handle non-512 byte media the driver translates this
to a geometry of 50 cylinders, one head and 10 sectors in single
density and 77 cylinders, one head and 13 sectors in double density
mode.
While the later matches the total number of sectors, the fake
geometry in single density does not cover the last two physical
sectors exact, but it is possible to access this sectors at 512
byte LBN 501.
When a 512 byte block is written to LBN 501 the last 256 bytes are ignored.
When this 512 byte block is read the last 256 bytes contain undefined data.
This driver supports three minor devices corresponding to the slices:
Slice Description
a Single density only mode.
b Double density only mode.
c Density autodetect.
As the
RX01
and
RX02
hardware is not able to support formatting a blank disk, this driver has
no support for according IOCTLs.
But there are clones from third party vendors that support formatting.
Formatting a blank disk may be initiated
by the following commands on the VAX chevron prompt:
Single density
d/p/w 20001E78 9
d/p/w 20001E7A 92
Double density
d/p/w 20001E78 109
d/p/w 20001E7A 92
FILES
/dev/rf?[abc]
-
/dev/rrf?[abc]
-
DIAGNOSTICS
- rfc_attach: Error creating bus_dma map: %d
-
- did not respond to INIT CMD
-
Possible errors during
autoconf(4).
%d is the return code of
bus_dmamap_create(9).
- %s: did not respond to CMD %x
-
An error occurred while the driver tried to send command %x to drive %s.
- rfc_intr: Error while reading sector: %x
-
- rfc_intr: Error while writing sector: %x
-
- rfc_intr: Error while DMA: %x
-
%x is status code from the controller error and status register.
- rfc_intr: Error while loading bus_dma map: %d
-
%d is return code of
bus_dmamap_load(9).
- %s: density error.
-
A single density disk was opened in double density only mode or vice
versa or the medium in the drive attached as %s was not readable at all.
SEE ALSO
dd(1),
tar(1),
intro(4),
disklabel(5),
disklabel(8),
mknod(8),
mount(8),
newfs(8)
HISTORY
The rf driver appeared in
NetBSD2.0.
It is a complete rewrite, not related to the old 4.2BSD
rx
driver.
AUTHORS
Jochen Kunz
BUGS
Writing of a
disklabel(5)
is not supported.
The driver return always the internally fake disklabel.