📄 txc_envoy_pin.h
字号:
/*--------------------------------------------------------------------------
******* ****
* ***** ** * * * * * * ***** **** * *
* * * * * ** * * * * * * * * * *
* * * * * * * * **** * * * * * ******
* ***** ****** * * * * * ** * * * * * *
* * * * * * ** * * ** ** * * * * * *
* * * * * * * **** * * * * **** * *
Proprietary and Confidential
This program is made available only to customers and prospective customers
of TranSwitch Corporation under license and may be used only with TranSwitch
semi-conductor products.
Copyright(c) 2004 TranSwitch Inc.
--------------------------------------------------------------------------
******* ** ** ** ** ******** ** **
******* *** ** ** ** ********** ** **
** ** * ** ** ** ** ** ** **
***** ** * ** ** ** ** ** * *
***** ** * ** ** ** ** ** **
** ** * ** ** ** ** ** **
******* ** *** **** ********** **
******* ** ** ** ******** **
--------------------------------------------------------------------------
TranSwitch Envoy-CE2/CE4
Device Driver
--------------------------------------------------------------------------
Workfile: txc_envoy_pin.h
Description: This header file contains the defines and prototypes
for the Device Pin-Status and Pin Configuration functions
--------------------------------------------------------------------------
Revision History
--------------------------------------------------------------------------
Rev # Date Author Description
----- ------- ------------ ----------------------
0.5.0 6/03/04 F. Giannella Initial release (beta)
*--------------------------------------------------------------------------*/
#ifndef TXC_ENVOY_PIN_STATUS_H
#define TXC_ENVOY_PIN_STATUS_H
/****************************************************************************
** Defines **
****************************************************************************/
/****************************************************************************
** Data Structures **
****************************************************************************/
typedef enum
{
ENVOY_PORT_MODE_OFF = 0,
ENVOY_PORT_GMII_MODE,
ENVOY_PORT_SMII_OR_MII_PHY_MODE,
ENVOY_PORT_SMII_OR_MII_MAC_TO_MAC_MODE,
ENVOY_END_OF_ETHENET_PORT_MODE_ENUM,
ENVOY_ETHERNET_PORT_MODE_ENUM_ERR= 0xFFFE
} ENVOY_ETHERNET_PORT_MODE_ENUM;
typedef struct
{
ENVOY_ETHERNET_PORT_MODE_ENUM ethernetPortMode;
} ENVOY_DEV_ETHERNET_MODE_STRUCT;
typedef enum
{
ENVOY_DEV_PIN_MODE_OFF = 0,
ENVOY_DEV_PIN_MODE_1_GMII = 1,
ENVOY_DEV_PIN_MODE_2_ESMII = 2,
ENVOY_DEV_PIN_MODE_8_SMII = 3,
ENVOY_DEV_END_OF_PIN_MODE_ENUM = 4,
ENVOY_DEV_PIN_MODE_ENUM_ERR= 0xFFFE
} ENVOY_DEV_PIN_MODE_ENUM;
typedef enum
{
ENVOY_DEV_PIN_SPI3_PHY_MODE = 0,
ENVOY_DEV_PIN_SPI3_LINK_MODE,
ENVOY_DEV_END_OF_PIN_SPI3_LINK_MODE_ENUM,
ENVOY_DEV_PIN_SPI3_MODE_ENUM_ERR = 0xFFFE
} ENVOY_DEV_PIN_SPI3_MODE_ENUM;
typedef enum
{
ENVOY_DEV_PIN_SPI3_32_BITS = 0,
ENVOY_DEV_PIN_SPI3_16_BITS,
ENVOY_DEV_PIN_SPI3_8_BITS,
ENVOY_DEV_END_OF_PIN_SPI3_WIDTH_MODE_ENUM,
ENVOY_DEV_PIN_SPI3_WIDTH_MODE_ENUM_ERR = 0xFFFE
} ENVOY_DEV_PIN_SPI3_WIDTH_MODE_ENUM;
typedef struct
{
ENVOY_DEV_PIN_MODE_ENUM ports0to7Mode;
ENVOY_DEV_PIN_MODE_ENUM ports8to15Mode;
ENVOY_DEV_PIN_MODE_ENUM ports16to23Mode;
ENVOY_DEV_PIN_MODE_ENUM ports24to31Mode;
ENVOY_DEV_PIN_SPI3_MODE_ENUM spi3InputMode;
ENVOY_DEV_PIN_SPI3_MODE_ENUM spi3OutputMode;
ENVOY_DEV_PIN_SPI3_WIDTH_MODE_ENUM spi3WidthMode;
} ENVOY_DEV_EXT_PIN_STRUCT;
/****************************************************************************
** Function Prototypes **
****************************************************************************/
TXC_U16BIT TXC_ENVOY_DeviceExPinRtrv (TXC_U16BIT handle,
ENVOY_DEV_EXT_PIN_STRUCT *deviceExtPinDataPtr);
TXC_U16BIT TXC_ENVOY_EthernetPortConfigSet
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_DEV_ETHERNET_MODE_STRUCT * ethernetPortModeDataPtr);
TXC_U16BIT TXC_ENVOY_EthernetPortConfigGet
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_DEV_ETHERNET_MODE_STRUCT *ethernetPortModeDataPtr);
TXC_U16BIT pinParsing(TXC_REG_32 data , ENVOY_DEV_PIN_MODE_ENUM *ptr);
/* to do: place three prototypes below in a new pin_real.h file m*/
TXC_U16BIT ENVOY_SetEthernetPortConfigReal
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_DEV_ETHERNET_MODE_STRUCT * ethernetPortModeDataPtr);
TXC_U16BIT ENVOY_GetEthernetPortConfigReal
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_DEV_ETHERNET_MODE_STRUCT *ethernetPortModeDataPtr);
/* to do: place two prototypes in a new pin_valid.h file */
TXC_U16BIT ENVOY_SetEthernetPortConfigValid
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_DEV_ETHERNET_MODE_STRUCT * ethernetPortModeDataPtr);
TXC_U16BIT ENVOY_GetEthernetPortConfigValid
(TXC_U16BIT handle, TXC_U16BIT port,
ENVOY_DEV_ETHERNET_MODE_STRUCT *ethernetPortModeDataPtr);
/****************************************************************************
** Callback Function Typedef **
****************************************************************************/
/* none */
/****************************************************************************
** End of Module **
****************************************************************************/
#endif /* TXC_ENVOY_PIN_STATUS_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -