亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sar.h

?? 網絡驅動開發
?? H
?? 第 1 頁 / 共 2 頁
字號:
   {
       ULONG   Rx_Cell_Cnt:20;             // the least significant bit
       ULONG   reserved:12;
   };

   ULONG   reg;
}
   RX_CELLCNT,
   *PRX_CELLCNT,
   TX_CELLCNT,
   *PTX_CELLCNT;


typedef union  _RX_DROPPKTCNT_REG
{
   struct
   {
       ULONG   Rx_Drop_PktCnt:20;      // the least significant bit
       ULONG	reserved:12;
   };

   ULONG   reg;
}
   RX_AAL5_DROPPKTCNT,
   *PRX_AAL5_DROPPKTCNT,
   RX_RAW_DROPPKTCNT,
   *PRX_RAW_DROPPKTCNT;


typedef union  _REAL_TIME_REG
{
   struct
   {
       ULONG   Real_Time_30ns:8;       // the least significant bit
       ULONG   Real_Time_3p30us:22;
       ULONG   reserved:2;
   };

   ULONG   reg;
}
   REAL_TIME_REG,
   *PREAL_TIME_REG;


typedef union  _CURRENT_TIME_REG
{
   struct
   {
       ULONG   CBR_Current_Time:8;     // the least significant bit
       ULONG   ABR_Current_Time:8;     // the least significant bit
       ULONG   reserved:16;
   };

   ULONG   reg;
}
   CURRENT_TIME_REG,
   *PCURRENT_TIME_REG;


typedef union  _TEST_CNTRL_REG
{
   struct
   {
       ULONG   Rx_DMA_Disable:1;       // the least significant bit
       ULONG   Tx_DMA_Disable:1;
       ULONG   Counter_Segment:1;
       ULONG   Counter_Force_Count:1;
       ULONG   Force_All_Intr:1;
       ULONG   Ph_Test:1;
       ULONG   Ph_GFC_Set_A:1;
       ULONG   Ph_GFC_Halt:1;
       ULONG   RATO_Poll_Time:1;
       ULONG   LastRM_Poll_Time:1;
       ULONG   Tac_Timer_Speedup:1;
       ULONG   Tds_Wait:1;
       ULONG   Report_Segment:1;
       ULONG   reserved:19;
   };

   ULONG   reg;
}
   TEST_CNTRL_REG,
   *PTEST_CNTRL_REG;


typedef struct	_TX_PENDING_SLOT_REGS
{
   TX_PENDING_SLOTS_CTL    Cntrl;
   ULONG                   Base_Addr;
}
   TX_PENDING_SLOT,
   *PTX_PENDING_SLOT;


typedef struct	_RX_PENDING_SLOT_REGS
{
   RX_PENDING_SLOTS_CTL    Cntrl;
   ULONG                   Base_Addr;
}
   RX_PENDING_SLOT,
   *PRX_PENDING_SLOT;


#define	MAX_SLOTS_NUMBER        8

typedef struct	_TBATM155_SAR
{
   TX_PENDING_SLOT         Tx_Pending_Slots[MAX_SLOTS_NUMBER];
   RX_PENDING_SLOT         Rx_Pending_Slots[MAX_SLOTS_NUMBER];
   TB155PCISAR_CNTRL1      SAR_Cntrl1;
   TB155PCISAR_CNTRL2      SAR_Cntrl2;
   INTR_STATUS_REGISTER    Intr_Status;
   INTR_ENB_REGISTER       Intr_Enb;
   INTR_HLDOFF_REG         Intr_Hldoff;
   TX_FS_LIST_PTRS         Tx_FS_List_ptrs;
   TX_REPORT_BASE          Tx_Report_Base;
   RX_REPORT_BASE          Rx_Report_Base;
   TX_REPORT_PTR           Tx_Report_Ptr;
   RX_REPORT_PTR           Rx_Report_Ptr;
   RX_SLOT_CONG_TH         Rx_Slot_Cong_Th;
   TX_ABR_ADTF             Tx_ABR_ADTF;
   TX_ABR_NRM_TRM          Tx_ABR_Nrm_Trm;
   PEEPHOLE_CMD            PeepHole_Cmd;
   PEEPHOLE_DATA           PeepHole_Data;
   RX_RAW_SLOT_TAG         Rx_Raw_Slot_Tag;
   RX_CELLCNT              Rx_CellCnt;
   RX_AAL5_DROPPKTCNT      Rx_AAL5_DropPktCnt;
   RX_RAW_DROPPKTCNT       Rx_Raw_DropPktCnt;
   TX_CELLCNT              Tx_CellCnt;
   REAL_TIME_REG           Real_Time;
   CURRENT_TIME_REG        Current_Time;
   TEST_CNTRL_REG          Test_Cntrl;
}
	TBATM155_SAR,
	*PTBATM155_SAR;


//
//	The following defines are used for the interrupt registers.
//
//	Intr_Status	-   If a bit is set then the interrupt is pending.
//			        Write 1 to clear status bits.
//	Intr_En     -   If a bit is set then the interrupt is enabled.
//

#define TBATM155_INT_TX_FATAL_ERR          BIT(20)
#define TBATM155_INT_PCI_FATAL_ERR         BIT(19)
#define TBATM155_INT_PHY_INTR              BIT(18)
#define TBATM155_INT_PH_DONE               BIT(17)
#define TBATM155_INT_PH_ACCESS_ERR         BIT(16)
#define TBATM155_INT_HOST_ACCESS_ERR       BIT(15)
#define TBATM155_INT_TX_FREE_SLOT_UNFL     BIT(14)
#define TBATM155_INT_TX_IOC                BIT(13)
#define TBATM155_INT_FM_RESYNCH_DONE       BIT(12)
#define TBATM155_INT_RX_FREE_SLOT_OVFL     BIT(11)
#define TBATM155_INT_RX_DATA_FIFO_OVFL     BIT(10)
#define TBATM155_INT_RX_NO_BIG_SLOTS       BIT(9)
#define TBATM155_INT_RX_NO_SMALL_SLOTS     BIT(8)
#define TBATM155_INT_RX_NO_RAW_SLOTS       BIT(7)
#define TBATM155_INT_RX_BIG_SLOTS_LOW      BIT(6)
#define TBATM155_INT_RX_SMALL_SLOTS_LOW    BIT(5)
#define TBATM155_INT_RX_RAW_SLOTS_LOW      BIT(4)
#define TBATM155_INT_RX_UNOPENED_VC        BIT(3)
#define TBATM155_INT_RX_UNKNOWN_VC         BIT(2)
#define TBATM155_INT_RX_UNKNOWN_ACK        BIT(1)
#define TBATM155_INT_RX_IOC                BIT(0)


#define TBATM155_REG_INT_VALID (TBATM155_INT_TX_FATAL_ERR          |	\
                                TBATM155_INT_PCI_FATAL_ERR         | 	\
                                TBATM155_INT_PHY_INTR              | 	\
                                TBATM155_INT_HOST_ACCESS_ERR       | 	\
                                TBATM155_INT_TX_FREE_SLOT_UNFL     | 	\
                                TBATM155_INT_TX_IOC                | 	\
                                TBATM155_INT_RX_FREE_SLOT_OVFL     | 	\
                                TBATM155_INT_RX_DATA_FIFO_OVFL     | 	\
                                TBATM155_INT_RX_NO_BIG_SLOTS       | 	\
                                TBATM155_INT_RX_NO_SMALL_SLOTS     | 	\
                                TBATM155_INT_RX_BIG_SLOTS_LOW      | 	\
                                TBATM155_INT_RX_SMALL_SLOTS_LOW    |    \
                                TBATM155_INT_RX_UNOPENED_VC        | 	\
                                TBATM155_INT_RX_UNKNOWN_VC         |	\
                                TBATM155_INT_RX_IOC)

#define TBATM155_REG_INT_ERROR (TBATM155_INT_TX_FATAL_ERR          |	\
                                TBATM155_INT_PCI_FATAL_ERR         |    \
                                TBATM155_INT_TX_FREE_SLOT_UNFL     | 	\
                                TBATM155_INT_RX_FREE_SLOT_OVFL)
   


//
//	This structure contains informaiton for managing the transmit and
//	receive DMA queues.
//
typedef struct _RECV_BUFFER_QUEUE
{
   //
   //	Count of available receive buffers in the free list.
   //
   ULONG                   BufferCount;

   //
   //	Free Receive buffer queue.
   //
   //	This is a list of buffers that are no longer in use.
   //	When the buffer is first allocated this is NULL.  Once a VC
   //  is created and activated then this list will get "larger".
   //  Also, this list will get "smaller" if a VC is deactivated.
   //
	PRECV_BUFFER_HEADER     BufListHead;
	PRECV_BUFFER_HEADER     BufListTail;

	NDIS_SPIN_LOCK		    lock;

}
   RECV_BUFFER_QUEUE,
   *PRECV_BUFFER_QUEUE;


//
//	This structure contains informaiton for managing the transmit and
//	receive DMA queues.
//
struct _RECV_DMA_QUEUE
{
	//
	//	List of "Small" buffers that are awaiting DMA completion interrupt.
	//

   RECV_BUFFER_QUEUE       CompletingSmallBufQ;

   //
   //  Note:
   //      The field "Slot Tag" in entries of Rx report queue
   //      reflects whatever the value of driver writes to
   //      "Slot Tag" bits in Rx Pending control register, so driver
   //      assignes an unique "Slot Tag" for each receive buffer in 
   //      order to search the receive buffer from the queue.
   //
   //   The current Slot Tag of "Small" buffers that will be assigned to
   //   the next allocated receive buffer.
   //   1. Slot Tag range from 1 to 4095.
   //   2. Initialize after soft reset controller.
   //
   USHORT                  CurrentSlotTagOfSmallBufQ;

   //
   //	List of "Big" buffers that are awaiting DMA completion interrupt.
   //
   RECV_BUFFER_QUEUE       CompletingBigBufQ;

   //
   //   The current Slot Tag of "Big" buffers that will be assigned to
   //   the next allocated receive buffer.
   //   1. Slot Tag range from 1 to 4095
   //   2. Initialize after soft reset controller.
   //
   USHORT                  CurrentSlotTagOfBigBufQ;
		
   //
   //	The following are for keeping track with the "Big" receive slots.
   //
   ULONG                   MaximumReceiveBigSlots;
   ULONG                   RemainingReceiveBigSlots;

	//
	//	The following are for keeping track with the "Small" receive slots.
	//
   ULONG                   MaximumReceiveSmallSlots;
   ULONG                   RemainingReceiveSmallSlots;

   //
   // The following are for keeping track with the informtion of
   // report queue handling.
   //
   // Keep track where was the stop point of last time we handled.
   //
   UINT                    PrevRxReportQIndex;

#if    DBG
   ULONG                   dbgTotalUsedSmallRxSlots;
   ULONG                   dbgTotalUsedBigRxSlots;
#endif // end of DBG

	NDIS_SPIN_LOCK			lock;
};


//
//	This structure contains informaiton for managing the transmit and
//	receive DMA queues.
//
struct _XMIT_DMA_QUEUE
{
   //
   //	List of packets that are waiting to be dma'd.
   //
   PACKET_QUEUE			DmaWait;


   //
   //	The following are for keeping track with the slots.
   //
   ULONG               MaximumTransmitSlots;

   ULONG               RemainingTransmitSlots;

#if    DBG
   ULONG               dbgTotalPostedTxSlots;
#endif // end of DBG

   //
   // The following are for keeping track with the informtion of
   // report queue handling.
   //
   // Keep track where was the stop point of last time we handled.
   //
   UINT                PrevTxReportQIndex;

	NDIS_SPIN_LOCK		lock;
};


//
//	Contains information about the Segmentation and Reassembly unit.
//
struct _SAR_INFO
{
   NDIS_SPIN_LOCK		lockFreeXmitSegment;

   //
   //	DMA queues for transmit and receive.
   //
   XMIT_DMA_QUEUE		XmitDmaQ;
   RECV_DMA_QUEUE		RecvDmaQ;


   //
   //  Free Receive "SMALL" buffer queue.
   //
   //  This is a list of buffers that are no longer in use.
   //  When the buffer is first allocated this is NULL.  Once a VC
   //  is created and activated then this list will get "larger".
   //  Also, this list will get "smaller" each VC is deactivated.
   //
   RECV_BUFFER_QUEUE      FreeSmallBufferQ;
   BOOLEAN                fSmallSlotsLowOrNone;

   //
   //	Free Receive "BIG" buffer queue.
   //
   //	This is a list of buffers that are no longer in use.
   //	When the buffer is first allocated this is NULL.  Once a VC
   //  is created and activated then this list will get "larger".
   //  Also, this list will get "smaller" each VC is deactivated.
   //
   RECV_BUFFER_QUEUE      FreeBigBufferQ;
   BOOLEAN                fBigllSlotsLowOrNone;


   //
   //	"BIG" Receive Pool queue.
   //
   //	This is a queue of RECV_BUF_POOL buffers that are allocated.
   //	When the buffer is first allocated this is NULL. After more
   //  VCs have been created, this queue will get "larger" until 
   //  allocated the maximum number of receive buffers .
	//
   PRECV_BUFFER_POOL      BigRecvPoolQ;

   //
   //  Point to the end of BigRecvPoolQ.
   //
   PRECV_BUFFER_POOL      BigRecvPoolTail;

   //
   //  Number of allocated Big Rx buffers.
   //
   USHORT                 AllocatedBigRecvBuffers;


   //
   //	"SMALL" Receive Pool queue.
   //
   //	This is a queue of RECV_BUF_POOL buffers that are allocated.
   //	When the buffer is first allocated this is NULL. After more
   //  VCs have been created, this queue will get "larger" until 
   //  allocated the maximum number of receive buffers .
   //
   PRECV_BUFFER_POOL      SmallRecvPoolQ;

   //
   //  Point to the end of SmallRecvPoolQ.
   //
   PRECV_BUFFER_POOL      SmallRecvPoolTail;

   //
   //  Number of allocated Small Rx buffers.
   //
   USHORT                  AllocatedSmallRecvBuffers;

   //
   //  The maximum number of allowed allocated Rx buffers for 
   //  each Small & Big sets of Rx buffers.
   //
   USHORT                  MaxRecvBufferCount;

#if    DBG

   //
   USHORT                  dbgTxPendingSlot;
   USHORT                  dbgRxPendingSlot;

#endif // end of DBG

};


#endif // __SAR_H

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
专区另类欧美日韩| 成人av免费在线观看| 国产成人精品一区二 | 亚洲欧洲在线观看av| 亚洲一区日韩精品中文字幕| 韩国成人在线视频| 欧美日韩在线三区| 日韩美女视频一区二区| 韩日av一区二区| 欧美群妇大交群中文字幕| 亚洲天堂av一区| 国产成人精品免费视频网站| 欧美精品1区2区3区| 亚洲黄色小视频| 成人动漫精品一区二区| 久久久91精品国产一区二区三区| 三级久久三级久久久| 日本高清不卡aⅴ免费网站| 国产精品欧美极品| 国产精品一二一区| 精品国产乱码久久久久久闺蜜 | 懂色av中文字幕一区二区三区| 555夜色666亚洲国产免| 性做久久久久久久免费看| 色噜噜狠狠成人中文综合| 中文字幕中文在线不卡住| 成人性生交大片免费看在线播放 | 91视频在线看| 国产精品久久网站| k8久久久一区二区三区| 亚洲国产高清在线| 成人理论电影网| 亚洲欧美一区二区在线观看| 懂色一区二区三区免费观看| 国产日韩欧美高清| 成人免费高清视频在线观看| 亚洲国产精华液网站w| 丁香亚洲综合激情啪啪综合| 中日韩av电影| 99久免费精品视频在线观看| 亚洲欧美日韩国产另类专区| 色综合久久久久久久| 亚洲综合激情网| 欧美人妇做爰xxxⅹ性高电影| 日本在线观看不卡视频| 欧美xxxx在线观看| 成人一区二区三区中文字幕| 亚洲成av人片在线观看| 日韩西西人体444www| 久久99精品一区二区三区三区| 久久综合狠狠综合久久激情| 国产成人精品一区二区三区四区 | 国产一区二区福利| 国产日韩成人精品| 91捆绑美女网站| 天堂在线亚洲视频| 26uuu国产在线精品一区二区| 成人综合在线观看| 亚洲午夜在线电影| 精品精品国产高清一毛片一天堂| 成人性生交大片免费看中文| 亚洲精品国产一区二区精华液 | 日韩高清不卡在线| 国产亚洲精品资源在线26u| 成人丝袜18视频在线观看| 一区二区三区久久| 欧美va亚洲va| 色中色一区二区| 紧缚捆绑精品一区二区| 国产精品成人在线观看| 欧美精品高清视频| 成人av免费在线播放| 日韩国产欧美一区二区三区| 国产精品私人影院| 欧美一区二区三区免费大片| hitomi一区二区三区精品| 日韩成人精品视频| 免费成人在线影院| 亚洲免费av高清| 久久久久久免费毛片精品| 欧美伊人久久久久久午夜久久久久| 免费在线看成人av| 一区二区高清在线| 国产日韩欧美一区二区三区综合| 欧美三区在线视频| 成人av在线一区二区| 精品在线一区二区| 婷婷夜色潮精品综合在线| 国产精品久久久久三级| 精品久久久久久久一区二区蜜臀| 91精彩视频在线观看| 成人做爰69片免费看网站| 狠狠色综合日日| 日韩在线一区二区三区| 亚洲精品久久嫩草网站秘色| 国产欧美精品国产国产专区| 日韩精品最新网址| 欧美日本在线播放| 欧美最新大片在线看| 91在线观看免费视频| 成人免费毛片aaaaa**| 久久国产精品99久久人人澡| 日韩精品一二三| 亚洲图片欧美视频| 一级特黄大欧美久久久| 亚洲欧美一区二区久久| 欧美激情综合在线| 国产欧美一区二区精品性色超碰| 日韩久久精品一区| 欧美sm美女调教| 日韩欧美一区二区免费| 91精品欧美一区二区三区综合在| 欧美三级欧美一级| 欧美日韩在线三区| 5566中文字幕一区二区电影| 欧美精品aⅴ在线视频| 欧美日韩精品免费观看视频| 欧美日韩在线精品一区二区三区激情| 色婷婷国产精品综合在线观看| av在线不卡电影| 色天天综合久久久久综合片| 99天天综合性| 91色|porny| 欧美色综合影院| 欧美一区二区福利在线| 欧美mv日韩mv国产网站| 久久久久成人黄色影片| 国产欧美一区二区三区鸳鸯浴 | 亚洲乱码中文字幕综合| 亚洲综合丝袜美腿| 日韩福利视频网| 精品午夜一区二区三区在线观看| 国产剧情一区二区三区| 成人综合在线视频| 色av综合在线| 欧美一区二区精美| 国产日韩欧美综合一区| 日韩vs国产vs欧美| 国产伦精一区二区三区| 波波电影院一区二区三区| 在线国产电影不卡| 日韩一区二区三区免费看| 久久免费视频色| 亚洲人成影院在线观看| 午夜精品久久一牛影视| 狠狠色综合日日| 色综合视频一区二区三区高清| 欧美日韩国产天堂| 国产亚洲精品bt天堂精选| 亚洲欧美日韩久久| 日本在线不卡一区| 国产aⅴ综合色| 欧美久久一区二区| 国产欧美精品区一区二区三区| 亚洲人成网站精品片在线观看 | 欧美高清hd18日本| 国产日韩精品视频一区| 午夜天堂影视香蕉久久| 国产精品一区二区在线看| 欧美午夜精品一区二区三区| 26uuu精品一区二区| 亚洲国产精品久久久久秋霞影院| 国内精品视频666| 91福利在线免费观看| 国产午夜亚洲精品午夜鲁丝片| 亚洲在线观看免费| 成人精品电影在线观看| 欧美一级欧美三级| 一区二区日韩av| 国产iv一区二区三区| 日韩欧美成人一区二区| 亚洲国产视频网站| 丁香激情综合国产| 日韩美女视频在线| 亚洲高清视频的网址| 99久久婷婷国产精品综合| 亚洲精品在线免费观看视频| 亚瑟在线精品视频| 91久久精品一区二区二区| 欧美国产1区2区| 国产一区二区三区免费播放| 91精品久久久久久久91蜜桃| 一区二区不卡在线播放| caoporn国产一区二区| 国产色产综合色产在线视频| 91一区一区三区| 国产区在线观看成人精品| 久久成人免费网| 日韩三级视频在线看| 天堂一区二区在线| 欧美色图片你懂的| 亚洲激情六月丁香| 91在线免费视频观看| 国产精品毛片大码女人| 国产99久久久国产精品潘金| 久久久欧美精品sm网站| 国产一区二区h| 久久久久国产精品人| 国产99久久久精品| 欧美国产综合一区二区|