-- This file is corresponding to Release 9.1.10.101 from 2014/08/11 00:00:00


-- (C)opyright 1991-2014 bintec elmeg GmbH, All Rights Reserved
-- $RCSfile: mibserial,v $ 
-- $Revision: 1.23 $ 

BIANCA-BRICK-SERIAL-MIB DEFINITIONS ::= BEGIN
 
        IMPORTS
            Counter, enterprises
                FROM RFC1155-SMI

            Date, HexValue
                FROM BINTEC-MIB
 
            OBJECT-TYPE
                FROM RFC-1212;

    bintec 	OBJECT IDENTIFIER ::= { enterprises 272 }
    bibo	OBJECT IDENTIFIER ::= { bintec 4 }
    serial	OBJECT IDENTIFIER 
	::= { bibo 25 }


    -- Interfaces Group

    -- Management Information for the Serial Subsystem 

        serialIfTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF SerialIfEntry
            ACCESS  not-accessible
            STATUS  mandatory
            DESCRIPTION
		"The serialIfTable contains information relating to the 
                interfaces available on the system. Each entry corresponds to
                an available serial interface. Entries cannot be added or 
		deleted by the user. 

                Creating entries: Entries are created by the system
                automatically when a new serial module is installed.

                Deleting entries: Entries are removed by the system
                after the appropriate serial module is removed."
	::= { serial 1 }

	serialIfEntry OBJECT-TYPE
            SYNTAX  SerialIfEntry
            ACCESS  not-accessible
            STATUS  mandatory
            DESCRIPTION
		""
	    INDEX   { serialIfIndex }
	::= { serialIfTable 1 }

	SerialIfEntry ::=
            SEQUENCE {
		-- configuration
                serialIfIndex			INTEGER,
		serialIfType			INTEGER,
		serialIfConnector		INTEGER,

		serialIfLeads			INTEGER,
		serialIfClock			INTEGER,
		serialIfClockEdge		INTEGER,
		serialIfSpeed			INTEGER,

                serialIfCableDetection		INTEGER,
		serialIfCableType		INTEGER,
		serialIfCableConnector		INTEGER,

		serialIfBundle			INTEGER,
		serialIfL2Mode			INTEGER,

		-- status
		serialIfL1State			INTEGER,
		serialIfSpeedReal		Counter,
		serialIfLicense			INTEGER,

		-- statistics
		serialIfRxPackets		Counter,
		serialIfRxOctets		Counter,
		serialIfTxPackets		Counter,
		serialIfTxOctets		Counter,

		serialIfRxResets		Counter,
		serialIfRxAborts		Counter,
		serialIfRxOverruns		Counter,
		serialIfRxCRCErrors		Counter,
		serialIfRxGiantFrames		Counter,

		serialIfTxResets		Counter,
		serialIfTxAborts		Counter,
		serialIfTxUnderruns		Counter,
		serialIfTxGiantFrames		Counter
            }

	serialIfIndex OBJECT-TYPE
            SYNTAX  INTEGER
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
                "Unique interface index of the serial interface."
	::= { serialIfEntry 1 }

	-- configuration

	serialIfType OBJECT-TYPE
	    SYNTAX  INTEGER {
	       	none(1),
		x21(2),
		v35(3),
		v36(4),
		x21bis(5),
		rs422(6),
		rs449(7),
		rs530(8),
		rs530a(9)
	    }
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
                "The serial physical interface type
 		    none(1)    interface disabled
 		    x21(2)     X21(V11) terminated     (sync)
 		    v35(3)     V35(V11 & V28)          (sync)
 		    v36(4)     V36(V10 & V11)          (sync)
 		    x21bis(5)  RS232(V28)              (sync)
 		    rs422(6)   X21(V11) not terminated (sync)
		    rs449(7)   RS449(V10 & V11)        (sync)
		    rs530(8)   RS530(V10 & V11)        (sync)
		    rs530a(9)  RS530A(V10 & V11)       (sync)
		"
	    DEFVAL { none }
	::= { serialIfEntry 2 }

	serialIfConnector OBJECT-TYPE
            SYNTAX  INTEGER { dte(1), dce(2) }
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
                "The physical connector type.
	 	 When configured as DCE the pins on the output connector
		 act as a DCE interface. If configured as DTE on the output
		 connector act as a DTE interface.
		    dte(1)	DTE output pins  
		    dce(2) 	DCE output pins "
	    DEFVAL { dte }
	::= { serialIfEntry 3 }

	serialIfLeads OBJECT-TYPE
            SYNTAX  INTEGER { enabled(1), disabled(2) }
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
		"The value of IfLeads has influence on the state of the
		 physical layer (L1State). When configured as
		 IfLeads=enabled, the state of the physical layer
		 depends on the signals of the control interface pins
		 Indication/Control on X.21 or RTS/CTS on the other
		 protocols. 
		 When configured as IfLeads=disabled, the state of the 
		 physical layer stays always up.
		    enabled(1)		interface pins accepted.	
		    disabled(2)		ignore interface pins." 
	    DEFVAL { disabled }
	::= { serialIfEntry 4 }

	serialIfClock OBJECT-TYPE
            SYNTAX  INTEGER { auto(1), extern(2), intern(3) }
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
                "The physical layer (layer 1) clocking mode.
	  	 When configured as AUTO the clock provided depends what is
		 configured on connector. If connector is configured as
		 DTE clock must provided from external, if the connector is
		 configured as DCE clock is generated and is provided at
		 the output pins.
		 It is possible to configure the clock independed from
		 connector type. EXTERNAL clock means the clock must provided
		 by the external device and INTERNAL clock means the clock
		 is generated by the brick and is provided on the output pins.
		 X.21      one clock line is provided.
		 V.35/V.36 two clock lines are provided.
		 auto(1)	connector = DTE = extern,
		 		            DCE = intern
		 extern(2)	clock pins operate as input.
		 intern(3)	clock pins operate as output."
	    DEFVAL { auto }
	::= { serialIfEntry 5 }
		
	serialIfClockEdge OBJECT-TYPE
            SYNTAX  INTEGER {
                default(1),
                rxc-inverted(2),
                txc-inverted(3),
                rxc-txc-inverted(4)
            }
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
                "The value of IfClockEdge influences the (internal) active
                 clock edge(s) for generating/sampling data on the serial line. 
		 This value should be left on DEFAULT under normal
		 circumstances. Nevertheless, in some rare cases it is possible
		 the connection does not work properly. This behaviour may be
		 produced by timing inconsistencies over the serial line in
		 conjunction with some disadvantageous clock/data processing
		 at the DTE/DCE devices and is very device couple specific. The
		 several settings allow shifting data generation/sampling by
		 half a cycle of the incoming serial clock. The variation of
		 this setting can help to make a not working connection
		 working. A typical sign for an erroneous situation in this
		 sense is the reception of massive corrupted frames at one or
		 both communication end points.
		 default(1)		the clock edges for generating/sampling
		 			are the default ones
		 rxc-inverted(2)	the receiver's data sampling is shifted
		 			by half a cycle of incoming serial
		 			clock (currently only supported by
		 			X8500)
		 txc-inverted(3)	the transmitter's data generation is
		 			shifted by half a cycle of incoming
		 			serial clock
		 rxc-txc-inverted(4)	both the receiver's data sampling and
		 			the transmitter's data generation is
		 			shifted by half a cycle of incoming
		 			serial clock (currently only supported
		 			by X8500)"
	    DEFVAL { default }
	::= { serialIfEntry 6 }
		
	serialIfSpeed OBJECT-TYPE
	    SYNTAX  INTEGER
	    ACCESS  read-write
	    STATUS  mandatory
	    DESCRIPTION
		"The serial interface speed in bits per second. The range
		 is dependant on the type of the line (balanced/unbalanced)
		 and the quality and length of the cable.
		 Over a short distance (about 5 m) and with a shielded cable 
		 speeds of up to 8 Mbit/sec are possible." 
	::= { serialIfEntry 8 }

	serialIfL2Mode OBJECT-TYPE
            SYNTAX  INTEGER { dte(1), dce(2), auto(3) }
            ACCESS  read-write
            STATUS  mandatory
            DESCRIPTION
                "The layer 2 mode. This value has influence on the
		 HDLC address field (first byte of a HDCL frame). When
		 configured as DTE the address in a command frame is
		 0x01, when configured as DCE it is 0x03. For
		 response frames it is vice versa. When configured as
		 AUTO, layer 2 is set to the same as connector is set.
   		    dte(1)	HDLC address 0x01
		    dce(2)	HDLC address 0x03
		    auto(3)	same as conector = DTE=0x01 DCE=0x03" 
	    DEFVAL { auto }
	::= { serialIfEntry 10 }

	serialIfCableDetection OBJECT-TYPE
	    SYNTAX  INTEGER {
	        manual(1),
                auto(2),
                iftype(3),
                connector(4)
            }
	    ACCESS  read-write
	    STATUS  mandatory
	    DESCRIPTION
	      "Cable autodetection for:
	       manual(1)    disabled
	       auto(2)      serialIfType and serialIfConnector
	       iftype(3)    serialIfType
	       connector(4) serialIfConnector
	       "
	       -- manual for X4000
	       -- auto  for  X4200,X4300, X2x00 and X8x00
	    DEFVAL { manual } 
	::= { serialIfEntry 11 }

	serialIfCableType OBJECT-TYPE
            SYNTAX  INTEGER {
	       	unknown(1),
		x21(2),
		v35(3),
		v36(4),
		x21bis(5),
	       	not-supported(255)
	    }
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
                "Show the detected cable type:
 		    unknown(1)         cable type unknown.
 		    x21(2)             DB15, X27/V11    (sync)
 		    v35(3)             M34,  V35/V10    (sync)
 		    v36(4)             DB37, V10/V11    (sync)
 		    x21bis(5)          DB25, RS232/V28  (sync)
 		    not-supported(255) cable detection not supported
		"
	    DEFVAL { not-supported }
	::= { serialIfEntry 12 }

	serialIfCableConnector OBJECT-TYPE
            SYNTAX  INTEGER {
		dte(1),
		dce(2),
		unknown(3),
		not-supported(4)
	    }
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
                "Show the detected cable connector type:
		    dte(1)           DTE cable 
		    dce(2)           DCE cable
		    unknown(3)       cable type unknown.
		    not-supported(4) cable detection not supported.
		"
	    DEFVAL { not-supported }
	::= { serialIfEntry 13 }

	serialIfBundle OBJECT-TYPE
	    SYNTAX  INTEGER (0..255)
	    ACCESS  read-write
	    STATUS  mandatory
	    DESCRIPTION
		"Index of the bundle to aggregate multiple Channels
		 to one interface."
	    DEFVAL { 0 }
	::= { serialIfEntry 14 }

	-- status information

	serialIfL1State OBJECT-TYPE
            SYNTAX  INTEGER { dn(1), up(2) }
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
                "The serial physical layer state
 		  dn(1)		physical layer is inactive
                  up(2)		physical layer is active"
	::= { serialIfEntry 15 }

	serialIfSpeedReal OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
	    "In DCE/internal clock mode this is the rounded speed in bits per
	     second, because not every baudrate can exactly be generated.
	     In DTE/external clock mode this is the measured speed, where
	     measurement is possible, or the configured speed in serialIfSpeed."
	::= { serialIfEntry 16 }

	serialIfLicense OBJECT-TYPE
	    SYNTAX  INTEGER {
	    	not-required(1),
		missing(2),
		used(3)
	    }
	    ACCESS  read-only
	    STATUS  mandatory

	    DESCRIPTION
		"Shows wether a serial license associated with this serial port
		 port is required, missing or in use."
	    DEFVAL { not-required }
	::= { serialIfEntry 17 }

	-- statistic counter

	serialIfRxPackets OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
                "Count of received valid Frames."
	::= { serialIfEntry 20 }

	serialIfRxOctets OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of received bytes."
	::= { serialIfEntry 21 }

	serialIfTxPackets OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
                "Count of transmitted valid Frames."
	::= { serialIfEntry 22 }

	serialIfTxOctets OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of transmitted bytes."
	::= { serialIfEntry 23 }

	serialIfRxResets OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of receiver resets. Under rare circumstances it
		might be necessary to reset the receiver to work
		properly." 
	::= { serialIfEntry 24 }

	serialIfRxAborts OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of receiver aborts. The sender of a frame can
		indicate a frame as aborted with a special Abort
		sequence." 
	::= { serialIfEntry 25 }

	serialIfRxOverruns OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of receiver overruns. If the serial port is unable
		to grant sufficiently soon/often the bus, the
		RxFIFO may fill up. This leads to loss of data." 
	::= { serialIfEntry 26 }

	serialIfRxCRCErrors OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of corrupted frames. Errors due to interference
		on the serial cable."
	::= { serialIfEntry 27 }

	serialIfRxGiantFrames OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of received frames with illegal framesize. This
 		 can occur if a frame delimiter is destroyed." 
	::= { serialIfEntry 28 }

	serialIfTxResets OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of transmitter resets. Under rare circumstances
		it might be necessary to reset the transmitter to work
		properly." 
	::= { serialIfEntry 29 }

	serialIfTxAborts OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of transmitter aborts. While sending a frame it
		might be necessary to indicate this frame as aborted. In
		this case the receiver regards this frame as illegal." 
	::= { serialIfEntry 30 }

	serialIfTxUnderruns OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of transmitter underruns. The serial data for the
		serial port is supplied too slowly." 
	::= { serialIfEntry 31 }

	serialIfTxGiantFrames OBJECT-TYPE
            SYNTAX  Counter
            ACCESS  read-only
            STATUS  mandatory
            DESCRIPTION
		"Count of transmitted frames with illegal
		framesize. This can occur if an upper module creates
		packets with more than the maximum allowed packet size."
	::= { serialIfEntry 32 }

END
