Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pg(4S) — OS/MP 4.1A3

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

arp(4P)

etherfind(8C)

pgstat(8C)

if(4N)

ifconfig(8C)

inet(4F)

netstat(8C)

PG(4S)  —  DEVICES AND NETWORK INTERFACES

NAME

pg − Solbourne VMEbus Dual Attach FDDI interface

CONFIG

device pg0 at vme16d16 ? csr 0x6000
dma vme24d16 priority 3 vector prgintr 0xd6 prgxintr 0xd7

The synopsis line above specifies an Interphase 4211 ‘Peregrine’ Dual Attach FDDI controller on the VMEbus. 

DESCRIPTION

The pg interface provides dual attach access to a 100 Mb/s fiber-optic token-ring local area network (FDDI) through a high-performance VMEbus controller card.  This RISC-based intelligent card runs firmware stored in EPROM on the card, or firmware images downloaded from the host.  Most of the network management functions (SMT) required by FDDI are performed by the VMEbus controller card.  The driver supports transmition and reception of packets conforming to RFC 1103/1188.  Also, the driver supports general network and controller-specific ioctls.  For a description of general network interfaces see if(4N). 

The following controller-specific ioctl calls may be used to manipulate the network interface.  Unless specified otherwise, the request takes an ifreq structure as its parameter. 

SIOCFDRESET Reset the pg controller. 

SIOCSTRTFMWAR Start firmware at an address. 

SIOCLDNSTRTFW Load the shared memory. 

SIOCFDGMIB Get the specified portion of the SMT MIB. 

The pg driver parses the ROM environment configuration string PG%d_MODE to see if the board is to be configured for any special operating situations.  This string consists of a comma separated list of parameter names followed by an ‘=’ sign followed by their value.  All timer values are specified in nano-seconds; it is recommended that these values not be changed.  For example the string may be set as follows:

ROM> setenv PG0_MODE  user=bunyip,t_req=9000000

The following parameter names are supported:

user This parameter specifies the string to be used for the SMT MIB field UserData.  The default value of this string is "Solbourne-x", where x is the hostid for the machine. 

t_req This parameter specifies the SMT MIB field MACT_Req.  This value is used in the negotiation of T_Neg during the claim process.  The default value is 165000000 (165ms). 

t_max The default value is 165000000 (165ms). 

t_min The default value is 4000000 (4ms). 

tvx The default value is 2500000 (2.5ms). 

mac_addr

SEE ALSO

arp(4P), etherfind(8C), pgstat(8C), if(4N), ifconfig(8C), inet(4F), netstat(8C)

DIAGNOSTICS/MESSAGES

Common messages from the driver are listed below, if other messages occur they should be reported to Solbourne technical support. 

The following group of messages occur during normal operation of the controller board. 

pg%d: FDDI-DAS: mac %s: fw %s: driver %s
This message is printed during auto-configuration and provides information on the default station address for the board, the firmware level, and the driver version.

pg%d: PG%d_MODE: WARNING! non-standard timer values. 
The ROM environment configuration string specifies non standard timer values; incorrect values may impair the entire network.

pg%d: ring up, connected
The interface is connected to the ring and should be able to transmit and receive packets.

pg%d: ring down, connected
Packet traffic has halted; the ring is broken because of media disconnect or protocol errors.

pg%d: CFM State = %s

Isolated Both PhyA and PhyB are looped back. The station is isolated from the ring. 

WrapA The station is receiving on the secondary path (SRX PHY A) and transmiting on the primary (PTX PHY A).  Only Phy A is in use.  The cable to Phy B is suspect. 

WrapB The station is receiving on the primary path (PRX PHY B) and transmitting on the secondary (STX PHY B).  Only Phy B is in use.  The cable to Phy A is suspect. 

Thru This is the correct state for a dual ring configuration.  The station is receiving on the primary path (PRX PHY B) and transmitting on the primary path (PTX PHY A). 

pg%d: MAC UNA Changed: %s --> %s
A new Upstream Neighbor Address has been detected. A machine has either entered or been removed from the ring.

pg%d: MAC DNA Changed: %s --> %s
A new Downstream Neighbor Address has been detected. A machine has either entered or been removed from the ring.

The following messages are abnormal, some corrective action is called for. 

pg%d: PG%d_MODE: no value for ‘%s’
The ROM environment configuration string has a variable with no value.

pg%d: PG%d_MODE: can’t parse mac address
The ROM environment configuration string’s mac address can’t be parsed.

pg%d: PG%d_MODE: unknown parameter ‘%s’
The ROM environment configuration string specifies an unknown parameter.

pg%d: PG%d_MODE: illegal parameter value for ‘%s’
A ROM environment configuration string parameter has an illegal value.

pg%d: transmit response: %s
A transmit command has had an abnormal completion. This message may occur if the ring goes down after a transmit is queued to the controller.

pg%d: MACDuplicateAddressCondition: %s
There are two stations on the ring with the same address.

pg%d: MACFrameErrorCondition: Frame-Ct %d, Error-Ct %d, Lost
-Ct %d The error thresholds for a clean network have been exceeded. This condition may exist when a node is first coming on line as a result of partial packets coming in when an optical bypass switch is enabled; it should not persist.

pg%d: MACNotCopiedCondition: NotCopied-Ct %d, Receive-Ct
The board has not been able to keep up with the data rate of the ring.

pg%d: PATHTraceStatus: %s %s %s

pg%d: PORTLerCondition: Cutoff %d, Alarm %d, Estimate %d, Le
m-Reject-Ct %d, Lem-Ct %d The error threshold for the link error rate has been exceeded.

pg%d: PORTUndesiredConnectionAttempt[%d]: %s -> %s
An attempt has been made to configure the board in an undesired or unsupported topology.

pg%d: PORTEBErrorCondition: EbError_Ct %d

pg%d: big packet (%d) from %s
Provided that all stations on the FDDI network are operating according to the specification, this error “should never happen,” since the controller allocates its receive buffers to be large enough to hold packets of the largest permitted size. Most likely other station on the net is transmitting packets whose lengths exceed the maximum permitted for FDDI.

pg%d: can’t handle AF 0x%x

pg%d: WARNING: %s: if_snd full
Traffic is being generated for transmission faster than the interface can handle, the operating systems ability to buffer messages has been exceeded and a packet had been dropped.

pg%d: WARNING: fddi_output: no mbufs
The driver was unable to allocate an mbuf for the snap header for the transmission of a packet.  The packet has been dropped;

pg%d: unexpected fddi frame type 0x%x

pg%d: fddi_do_protocol: can’t handle snap control %x

pg%d is reserved for remote debugging 
The interface is present but being used exclusively for debugging.

The following messages should not occur. 

pg%d: failed hard reset: no herald
A hard reset of the board has failed. This should not occur.

pg%d: reset failure %x(%c%c%c%c): %4x%4x
A hard reset of the board has failed. This indicates a the board is either not seated correctly, or is broken.  Please note the failure codes when reporting the problem to Solbourne technical support.

printf("pg%d: cb cmd %x(%c%c%c%c) failure %x(%c%c%c%c)
This indicates a the board is either not seated correctly, or is broken.  Please note the failure codes when reporting the problem to Solbourne technical support.

pg%d: prg_rc_get_cmd: Segments full unable to link. 
This message indicates a breakdown in communication between the driver and the board; it should not occur.

pg%d: timeout waiting for RC response %x on channel %d
This message indicates a breakdown in communication between the driver and the board; it should not occur.

pg%d: rc_get_rsp on uninitialized channel %d
This message indicates a breakdown in communication between the driver and the board; it should not occur.

pg%d: untagged transmit response
This message indicates a breakdown in communication between the driver and the board; it should not occur.

pg%d: message: %s
The controller is printing a message about some non-fatal abnormal condition. The driver is just passing this message on to the user.  This should not occur. Please note the message when reporting the problem to Solbourne technical support.

pg%d: error code %d: cmd %x len %d: message: %s
The controller is reporting an error condition. This should not occur. Please note the codes and message when reporting the problem to Solbourne technical support.

pg%d: unknown ring state: %x
This message should not occur.

pg%d: unexpected multicast CAM status: %x
This message should not occur.

pg%d: prg_rc_drain_resp: response 0x%x unknown
This message should not occur.

pg%d: Unknown Smt Event 0x%x
This message should not occur.

Solbourne Computer, Inc.  —  26 December 1990

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026