pefn(7) DG/UX R4.11 pefn(7)
NAME
pefn - Peregrine VME FDDI network controller (88K only)
SYNOPSIS
pefn(parent-bus[,controller-num[,,alt-fddi-addr]])
DESCRIPTION
The pefn device driver allows an AViiON system that includes a VME
FDDI controller (VFC) to access a Fiber Distributed Data Interface
(FDDI) network. To configure such devices, you must add to the DG/UX
system configuration file one or more device name entries of the form
described in the synopsis above. The parameters in a device name
have the following meanings:
· The parent-bus parameter is itself a device name, representing
the VME bus device to which the controller is attached (vme(0) or
vme(1), for example). There is no default value for this
parameter; it must always be specified explicitly.
· The controller-num parameter is a hexadecimal number in the range
0 through 7 which distinguishes the various standard addressing
values to which the controller may be jumpered. Consult the
table below for details on these address settings. The default
value for controller-num is 0.
· The third parameter position is unused, and is reserved for
reasons of backward compatibility.
· The alt-fddi-addr parameter can be used to override the
controller's default FDDI address with a user-specified value,
which must be represented as a string of exactly 12 hexadecimal
digits. If no alt-fddi-addr parameter is specified, the
controller-resident default FDDI address is used.
Each pefn controller board contains two jumperable VME board address
settings: the interrupt vector number used by the board, and the A16
address of the board's 16-bit control register space. The following
hexadecimal address values are used for the 8 standard controller-num
instances supported by the device driver on each parent VME bus:
Controller Interrupt A16 Address
Number Vector
Number
0 78 FFFF2000
1 79 FFFF2200
2 7A FFFF2400
3 7B FFFF2600
4 7C FFFF2800
5 7D FFFF2A00
6 7E FFFF2C00
7 7F FFFF2E00
A pefn device can still be used even if it is not jumpered to one of
the standard address settings. However, such a device is referred to
as a non-standard instance, and it requires a different device name
format:
pefn@intr-vec-num(parent-bus,a16-addr[,,alt-fddi-addr])
The parameters in a non-standard device name have the following
meanings:
· The intr-vec-num value is the hexadecimal VME interrupt vector
number used by the board. There is no default value for this
parameter; it must always be specified explicitly.
· The parent-bus parameter has exactly the same meaning here as it
does in the standard device name format.
· The a16-addr parameter is the hexadecimal value of the VME A16
address of the board's 16-bit control register space. There is
no default value for this parameter; it must always be specified
explicitly.
· The third parameter position is unused, and is reserved for
reasons of backward compatibility.
· The alt-fddi-addr parameter has exactly the same meaning here as
it does in the standard device name format.
In conjunction with the pefn system file entries, the following
tunable kernel parameters are used by all pefn devices configured
into the system:
· PEFN_DMA_BURST specifies the maximum number of 32-bit transfers
that a VFC controller will perform per DMA burst. The range of
valid values is {1 .. 4096}; values outside this range result in
an effective value of 256, which is the default. On AViiON 8500
and 9500 series computers, a value of 4 is recommended to
maximize system performance. WARNING: Setting this value to a
large number may cause problems for other controllers in the
system.
· PEFN_RX_BUF_SIZE specifies the receive frame size in bytes. The
range of valid values is {16.. 2048}; values outside this range
result in an effective value of 2048, which is the default.
· PEFN_MAX_RX_BUF specifies the total number of receive buffers.
The range of valid values is {1 .. 511}; a values of this 0 will
result in an effective value of 168, which is the default. A
value greater than 511 will result in an effective value of 511.
· PEFN_BOARD_RX_LOAD specifies the maximum number of receive frames
that the a controller will process simultaneously. The range of
valid adjustment values is {1 .. 64}; values above this range but
below 256 result in an effective value of 64. A value of 0
(which is the default) or a value greater than 255 disables the
adjustment feature.
· PEFN_HOST_RX_LOAD specifies the maximum number of receive frames
that the pefn driver will process at one time. The range of
valid values is {1 .. PEFN_MAX_RX_BUF}; values outside this range
result in an effective value of PEFN_MAX_RX_BUF. The default
value is 168.
FILES
Each standard pefn device creates single character-special device
node when it is configured, with the pathname:
/dev/net/pefn(parent-bus,controller-num)
The pathname of the device node created for non-standard device
instances is:
/dev/net/pefn@intr-vec-num(parent-bus,a16-addr)
The chk.devlink command is responsible for creating and maintaining
an additional link to each pefn device node, with a pathname of the
form /dev/net/pefn[0-9]*. See the chk.devlink(1M) and devlinktab(4M)
man pages for details.
The pefn device driver is a clonable Streams driver. This means that
you can open a single pefn device node to access any unused minor
device. Each subsequent access of the node via the open(2) system
call allocates a separate Stream (minor number) to the device driver.
DIAGNOSTICS
Use the -i option with netstat(1C).
EXAMPLES
The following entries in a DG/UX configuration file configure VFC
controllers that use two of the standard sets of addressing values,
and which use their on-board default FDDI addresses:
pefn(vme(1),0)
pefn(vme(0),4)
The following statement configures a VFC device using the address
settings for controller number 0, but specifies an alternate FDDI
address:
pefn(vme(0),0,,08001b123456)
The following statement configures a non-standard VFC device which
uses interrupt vector number 0x7B and VME A16 address 0xFFFF2400, but
which accepts the default FDDI address:
pefn@7B(vme(0),ffff2400)
For more information about DG/UX device configuration, refer to
"Writing a Device Driver" in Programming in the DG/UX Kernel
Environment.
SEE ALSO
ifconfig(1M), netinit(1M), system(4), arp(6P), inet(6F), vme(7),
chk.devlink(1M), devlinktab(4M), intro(7).
Licensed material--property of copyright holder(s)