Main Page   Modules   Alphabetical List   Data Structures   File List   Data Fields   Globals  

IxAtmm.h File Reference

Header file for the IXP425 ATM Manager component (IxAtmm). More...

Go to the source code of this file.

Data Structures

struct  IxAtmmPortCfg
 Structure contains port-specific information required to initialize IxAtmm, and specifically, the IXP425 UTOPIA Level-2 device. More...

struct  IxAtmmVc
 This structure describes the required attributes of a virtual connection. More...


Defines

#define IX_ATMM_RET_ALREADY_INITIALIZED
 Component has already been initialized.

#define IX_ATMM_RET_INVALID_PORT
 Specified port does not exist or is out of range.

#define IX_ATMM_RET_INVALID_VC_DESCRIPTOR
 The VC description does not adhere to ATM standards.

#define IX_ATMM_RET_VC_CONFLICT
 The VPI/VCI values supplied are either reserved, or they conflict with a previously registered VC on this port.

#define IX_ATMM_RET_PORT_CAPACITY_IS_FULL
 The virtual connection cannot be established on the port because the remaining port capacity is not sufficient to support it.

#define IX_ATMM_RET_NO_SUCH_VC
 No registered VC, as described by the supplied VCI/VPI or VC identifier values, exists on this port.

#define IX_ATMM_RET_INVALID_VC_ID
 The specified VC identifier is out of range.

#define IX_ATMM_RET_INVALID_PARAM_PTR
 A pointer parameter was NULL.

#define IX_ATMM_UTOPIA_SPHY_ADDR
 The phy address when in SPHY mode.


Typedefs

typedef void(* IxAtmmVcChangeCallback )(IxAtmmVcChangeEvent eventType, IxAtmLogicalPort port, const IxAtmmVc *vcChanged)
 Callback type used with ixAtmmVcChangeCallbackRegister interface Defines a callback type which will be used to notify registered users of registration/deregistration events on a particular port.


Enumerations

enum  IxAtmmVcDirection {
  IX_ATMM_VC_DIRECTION_TX,
  IX_ATMM_VC_DIRECTION_RX,
  IX_ATMM_VC_DIRECTION_INVALID
}
 Definition for use in the IxAtmmVc structure. Indicates the direction of a VC. More...

enum  IxAtmmVcChangeEvent {
  IX_ATMM_VC_CHANGE_EVENT_REGISTER,
  IX_ATMM_VC_CHANGE_EVENT_DEREGISTER,
  IX_ATMM_VC_CHANGE_EVENT_INVALID
}
 Definition for use with IxAtmmVcChangeCallback callback. Indicates that the event type represented by the callback for this VC. More...

enum  IxAtmmUtopiaLoopbackMode {
  IX_ATMM_UTOPIA_LOOPBACK_DISABLED,
  IX_ATMM_UTOPIA_LOOPBACK_ENABLED,
  IX_ATMM_UTOPIA_LOOPBACK_INVALID
}
 Definitions for use with interface to indicate that UTOPIA loopback should be enabled or disabled on initialisation. More...

enum  IxAtmmPhyMode {
  IX_ATMM_MPHY_MODE,
  IX_ATMM_SPHY_MODE,
  IX_ATMM_PHY_MODE_INVALID
}
 Definitions for use with ixAtmmUtopiaInit interface to indicate that UTOPIA multi-phy/single-phy mode is used. More...


Functions

IX_STATUS ixAtmmInit (void)
 Interface to initialize the IxAtmm software component. Can be called once only.

IX_STATUS ixAtmmUtopiaInit (unsigned numPorts, IxAtmmPhyMode phyMode, IxAtmmPortCfg portCfgs[], IxAtmmUtopiaLoopbackMode loopbackMode)
 Interface to initialize the UTOPIA Level-2 ATM coprocessor for the specified number of physical ports. The function must be called before the ixAtmmPortInitialize interface can operate successfully.

IX_STATUS ixAtmmPortInitialize (IxAtmLogicalPort port, unsigned txPortRate, unsigned rxPortRate)
 The interface is called following ixAtmmUtopiaInit () and before calls to any other IxAtmm interface. It serves to activate the registered ATM port with IxAtmm.

IX_STATUS ixAtmmPortModify (IxAtmLogicalPort port, unsigned txPortRate, unsigned rxPortRate)
 A client may call this interface to change the existing port rate (expressed in bits/second) on an established ATM port.

IX_STATUS ixAtmmPortQuery (IxAtmLogicalPort port, unsigned *txPortRate, unsigned *rxPortRate)
 The client may call this interface to request details on currently registered transmit and receive rates for an ATM port.

IX_STATUS ixAtmmPortEnable (IxAtmLogicalPort port)
 The client call this interface to enable transmit for an ATM port. At initialisation, all the ports are disabled.

IX_STATUS ixAtmmPortDisable (IxAtmLogicalPort port)
 The client call this interface to disable transmit for an ATM port. At initialisation, all the ports are disabled.

IX_STATUS ixAtmmVcRegister (IxAtmLogicalPort port, IxAtmmVc *vcToAdd, IxAtmSchedulerVcId *vcId)
 This interface is used to register an ATM Virtual Connection on the specified ATM port.

IX_STATUS ixAtmmVcDeregister (IxAtmLogicalPort port, IxAtmSchedulerVcId vcId)
 Function called by a client to deregister a VC from the system.

IX_STATUS ixAtmmVcQuery (IxAtmLogicalPort port, unsigned vpi, unsigned vci, IxAtmmVcDirection direction, IxAtmSchedulerVcId *vcId, IxAtmmVc *vcDesc)
 This interface supplies information about an active VC on a particular port when supplied with the VPI, VCI and direction of that VC.

IX_STATUS ixAtmmVcIdQuery (IxAtmLogicalPort port, IxAtmSchedulerVcId vcId, IxAtmmVc *vcDesc)
 This interface supplies information about an active VC on a particular port when supplied with a vcId for that VC.

IX_STATUS ixAtmmVcChangeCallbackRegister (IxAtmmVcChangeCallback callback)
 This interface is invoked to supply a function to IxAtmm which will be called to notify the client if a new VC is registered with IxAtmm or an existing VC is removed.

IX_STATUS ixAtmmVcChangeCallbackDeregister (IxAtmmVcChangeCallback callback)
 This interface is invoked to deregister a previously supplied callback function.

IX_STATUS ixAtmmUtopiaStatusShow (void)
 Display utopia status counters.

IX_STATUS ixAtmmUtopiaCfgShow (void)
 Display utopia information(config registers and status registers).


Detailed Description

Header file for the IXP425 ATM Manager component (IxAtmm).

Date:
3-DEC-2001

Version:
Revision
1.27
-- Intel Copyright Notice --
Copyright 2001-2003 Intel Corporation All Rights Reserved.
The source code contained or described herein and all documents related to the source code ("Material") are owned by Intel Corporation or its suppliers or licensors. Title to the Material remains with Intel Corporation or its suppliers and licensors.
The Material is protected by worldwide copyright and trade secret laws and treaty provisions. No part of the Material may be used, copied, reproduced, modified, published, uploaded, posted, transmitted, distributed, or disclosed in any way except in accordance with the applicable license agreement .
No license under any patent, copyright, trade secret or other intellectual property right is granted to or conferred upon you by disclosure or delivery of the Materials, either expressly, by implication, inducement, estoppel, except in accordance with the applicable license agreement.
Unless otherwise agreed by Intel in writing, you may not remove or alter this notice or any other notice embedded in Materials by Intel or Intel's suppliers or licensors in any way.
For further details, please see the file README.TXT distributed with this software.
-- End Intel Copyright Notice --

Definition in file IxAtmm.h.

Automatically generated from sources. © Intel Corp. 2003