Index Index for
Section 7
Index Alphabetical
listing for F
Bottom of page Bottom of
page

faa(7)

NAME

faa - DEFAA FDDI Network Interface

SYNOPSIS

controller faa0 at * vector faaintr This is the entry in the configuration file.

DESCRIPTION

The faa interface is a high-speed Futurebus+ adapter to a 100 megabit per second Fiber Distributed Data Interface (FDDI) timed token ring network adapter. The faa interface allows the host system to be an FDDI single attachment station. The DEFAA uses DMA transfers for both transmitted and received data. The driver initializes the DMA engine before placing the adapter on the ring. The DEFAA can operate in full duplex mode. To allow the faa interface operate in full duplex mode, connect two DEFAA adapters back-to-back. The full duplex mode is enabled or disabled by using the fddi_config command. The host's Internet address is specified at boot time with an SIOCSIFADDR ioctl. The faa interface employs the address resolution protocol described in arp(7) to map dynamically between Internet and physical addresses on the FDDI ring. The maximum frame size for the faa interface is 4500 bytes, which is substantially larger that the 1500 bytes maximum packet size of the Ethernet interfaces. The faa interface does not support the BSD trailer encapsulation, which is specific to the VAX architecture. The SIOCRPHYSADDR ioctl can be used to read the physical address of the DEFAA adapter. The physical address of the DEFAA adapter can be changed by use of the SIOCSPHYSADDR ioctl. The SIOCADDMULTI and SIOCDELMULTI ioctls can be used to add or delete multicast addresses. The DEFAA supports up to 62 multicast addresses. The SIOCRDCTRS ioctl can be used to read the FDDI driver counters. The DEFAA adapter status and characteristics can also be read through this ioctl by providing one of the following flags: FDDI_STATUS, CTR_FDDI, FDDIMIB_PATH, FDDIMIB_SMT, FDDIMIB_MAC, FDDIMIB_PORT, and FDDIMIB_ATTA. The argument to this ioctl is a pointer to a counter or status structure, ctrreq, found in <net/if.h>. The SIOCENABLBACK and SIOCDISABLBACK ioctls can be used to enable and disable the interface loopback mode, respectively. The driver enables internal loopback only. The SIOCIFRESET ioctl can be used to reset the adapter.

ERRORS

Diagnostic messages contain information provided by the faa driver and the adapter. The following messages contain information about the adapter's state, and are printed on the console, where n is a message number: faan: Reset faan: Upgrade faan: DMA Unavailable faan: DMA Available faan: Link Available faan: Link Unavailable faan: Halted Once in the DMA Available state, the adapter goes to the Link Unavailable state and finally to the Link Available state. The following messages contain information about adapter events: faan: Directed beacon received The DEFAA has received a directed beacon. faan: Host bus parity error There is a parity error on the host bus. faan: Link transmit underrun A link transmit underrun occurred. faan: Link transmit failure A link transmit failure occurred. faan: Packet memory parity error The DEFAA adapter has detected a parity error in the packet memory. faan: PC Trace initiated A PC Trace has been initiated. faan: PC Trace received The DEFAA adapter received a PC trace. faan: Receive overrun The adapter's receive queue is full and packets are being dropped. faan: Ring beacon initiated A ring beacon was initiated. faan: Ring initialized" The FDDI ring is being initialized. This occurs each time a machine comes on or goes off the ring. faan: Ring purge error A ring purge error has occurred. The following are diagnostic error messages about driver events: faan: Cannot start error recovery thread The driver could not start the thread that perform error recovery. This error is not fatal. If an error occurs, the driver will not reinitialize the adapter. faan: Could not initialize network adapter The DEFAA cannot transition to the DMA Available state. faan: Disable Internal Loop Back Failed The driver could not disable the internal loopback on the DEFAA adapter. faan: Driver disabled. Check the network adapter. A fatal error occurred, and the driver cannot recover. The driver is off line. faan: Enable Internal Loop Back Failed The driver could not enable the internal loopback on the DEFAA adapter. faan: Flushing Transmit queue The DEFAA detected an error and signaled the driver to flush the transmit queue. faan: Reinitializing network adapter The DEFAA is being reinitialized. The adapter will reset the adapter and force it to the DMA Available state. faan: Self test failure The adapter self test failed. faan: Unknown location accessed on the network adapter The driver accessed an illegal location on the adapter.

EXAMPLES

To obtain the physical address of the adapter, use the SIOCRPHYSADDR ioctl as in the following program example: #include <stdio.h> /* standard I/O */ #include <errno.h> /* error numbers */ #include <sys/socket.h> /* socket definitions */ #include <sys/ioctl.h> /* ioctls */ #include <net/if.h> /* generic interface structures */ main() { int s,i; static struct ifdevea devea; /* Get a socket */ s = socket(AF_INET,SOCK_DGRAM,0); if (s < 0) { perror("socket"); exit(1); } strcpy(devea.ifr_name,"faa0"); if (ioctl(s,SIOCRPHYSADDR,&devea) < 0) { perror(&devea.ifr_name[0]); exit(1); } printf("Address is "); for (i = 0; i < 6; i++) printf("%X ", devea.default_pa[i] & 0xff); printf("\n"); close(s); } To reset the adapter, use the SIOCIFRESET ioctl as in the following program example: #include <stdio.h> /* standard I/O */ #include <errno.h> /* error numbers */ #include <sys/socket.h> /* socket definitions */ #include <sys/ioctl.h> /* ioctls */ #include <net/if.h> /* generic interface structures */ main() { int s; struct ifreq data; /* Get a socket */ s = socket(AF_INET,SOCK_DGRAM,0); if (s < 0) { perror("socket"); exit(1); } strcpy(data.ifr_name,"faa0"); if (ioctl(s,SIOCIFRESET,&data) < 0) { perror("SIOCIFRESET:"); exit(1); } close(s); }

SEE ALSO

netstat(1), arp(7), inet(7), intro(7), fddi_config(8)

Index Index for
Section 7
Index Alphabetical
listing for F
Top of page Top of
page