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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mac.h

?? 一個實例接受
?? H
字號:
/****************************************************************************
* Copyright (c) 2002 Windond Electronics Corp.
* All rights reserved.
*
* FILE NAME: mac.h
*
* DESCRIPTION: Header File for MAC of W90N740.
*
* AUTHOR: Jen-Hao Tsai, PC30
****************************************************************************/
#ifndef W740_MAC_H
#define W740_MAC_H

#include "740defs.h"

//#define TxInt_Msg
//#define RxInt_Msg

//#define PHY_Auto_Negotiation
	
#define MODE_DR100_FULL   3
#define MODE_DR100_HALF   2
#define MODE_DR10_FULL    1
#define MODE_DR10_HALF    0

#define MAC_NUM 0

// CAM Command Register(CAMCMR)
#define CAM_AUP  0x0001  // Accept Packets with Unicast Address
#define CAM_AMP  0x0002  // Accept Packets with Multicast Address
#define CAM_ABP  0x0004  // Accept Packets with Broadcast Address
#define CAM_CCAM 0x0008  // 0: Accept Packets CAM Recognizes and Reject Others
                         // 1: Reject Packets CAM Recognizes and Accept Others
#define CAM_ECMP 0x0010  // Enable CAM Compare


// MAC Interrupt Enable Register(MIEN)
#define EnRXINTR 0x00000001  // Enable Interrupt on Receive Interrupt
#define EnCRCE   0x00000002  // Enable CRC Error Interrupt
#define EnRXOV   0x00000004  // Enable Receive FIFO Overflow Interrupt
#define EnPTLE   0x00000008  // Enable Packet Too Long Interrupt
#define EnRXGD   0x00000010  // Enable Receive Good Interrupt
#define EnALIE   0x00000020  // Enable Alignment Error Interrupt
#define EnRP     0x00000040  // Enable Runt Packet on Receive Interrupt
#define EnMMP    0x00000080  // Enable More Missed Packets Interrupt
#define EnDFO    0x00000100  // Enable DMA receive frame over maximum size Interrupt
#define EnDEN    0x00000200  // Enable DMA early notification Interrupt
#define EnRDU    0x00000400  // Enable Receive Descriptor Unavailable Interrupt
#define EnRxBErr 0x00000800  // Enable Receive Bus ERROR interrupt
#define EnNATOK  0x00001000  // Enable NAT Processing OK Interrupt
#define EnNATErr 0x00002000  // Enable NAT Processing Error Interrupt
#define EnCFR    0x00004000  // Enable Control Frame Receive Interrupt
#define EnTXINTR 0x00010000  // Enable Interrupt on Transmit Interrupt
#define EnTXEMP  0x00020000  // Enable Transmit FIFO Empty Interrupt
#define EnTXCP   0x00040000  // Enable Transmit Completion Interrupt
#define EnEXDEF  0x00080000  // Enable Defer Interrupt
#define EnNCS    0x00100000  // Enable No Carrier Sense Interrupt
#define EnTXABT  0x00200000  // Enable Transmit Abort Interrupt
#define EnLC     0x00400000  // Enable Late Collision Interrupt
#define EnTDU    0x00800000  // Enable Transmit Descriptor Unavailable Interrupt
#define EnTxBErr 0x01000000  // Enable Transmit Bus ERROR Interrupt


// MAC Command Register(MCMDR)
#define MCMDR_RXON    0x00000001  // Receive ON
#define MCMDR_ALP     0x00000002  // Accept Long Packet
#define MCMDR_ARP     0x00000004  // Accept Runt Packet
#define MCMDR_ACP     0x00000008  // Accept Control Packet
#define MCMDR_AEP     0x00000010  // Accept Error Packet
#define MCMDR_SPCRC   0x00000020  // Accept Strip CRC Value
#define MCMDR_TXON    0x00000100  // Transmit On
#define MCMDR_NDEF    0x00000200  // No defer
#define MCMDR_SDPZ    0x00010000  // Send Pause
#define MCMDR_EnSQE   0x00020000  // Enable SQE test
#define MCMDR_FDUP    0x00040000  // Full Duplex
#define MCMDR_EnMDC   0x00080000  // Enable MDC signal
#define MCMDR_OPMOD   0x00100000  // Operation Mode
#define MCMDR_LBK     0x00200000  // Loop Back
#define MCMDR_EnRMII  0x00400000  // Enable RMII
#define MCMDR_LPCS    0x00800000  // Low Pin Count Package Switch
#define MCMDR_LAN     0x01000000  // LAN Port Setting Mode
#define MCMDR_EnTMode 0x02000000  // Enable Test Mode


// MAC MII Management Data Control and Address Register(MIIDA)
#define MDCCR    0x00000000  // MDC clock rating
#define PHYAD    0x00000100  // PHY Address
#define PHYWR    0x00010000  // Write Operation
#define PHYBUSY  0x00020000  // Busy Bit
#define PHYPreSP 0x00040000  // Preamble Suppress


// FIFO Threshold Adjustment Register(FIFOTHD)
#define SWR        0x00010000  // Software Reset
#define TxTHD_1    0x00000100  // 1/4 Transmit FIFO Threshold
#define TxTHD_2    0x00000200  // 2/4 Transmit FIFO Threshold
#define TxTHD_3    0x00000300  // 3/4 Transmit FIFO Threshold
#define RxTHD_1    0x00000001  // 1/4 Receive FIFO Threshold
#define RxTHD_2    0x00000002  // 2/4 Receive FIFO Threshold
#define RxTHD_3    0x00000003  // 3/4 Receive FIFO Threshold
#define Blength_8  0x00100000  // DMA burst length 8 beats
#define Blength_12 0x00200000  // DMA burst length 12 beats
#define Blength_16 0x00300000  // DMA burst length 16 beats


// MAC Interrupt Status Register(MISTA)
#define MISTA_RXINTR 0x00000001  // Interrupt on Receive
#define MISTA_CRCE   0x00000002  // CRC Error
#define MISTA_RXOV   0x00000004  // Receive FIFO Overflow error
#define MISTA_PTLE   0x00000008  // Packet Too Long Error
#define MISTA_RXGD   0x00000010  // Receive Good
#define MISTA_ALIE   0x00000020  // Alignment Error
#define MISTA_RP     0x00000040  // Runt Packet
#define MISTA_MMP    0x00000080  // More Missed Packets than miss rolling over counter flag
#define MISTA_DFOI   0x00000100  // DMA receive frame over maximum size interrupt
#define MISTA_DENI   0x00000200  // DMA early notification interrupt
#define MISTA_RDU    0x00000400  // Receive Descriptor Unavailable interrupt
#define MISTA_RxBErr 0x00000800  // Receive Bus Error interrupt
#define MISTA_NATOK  0x00001000  // NAT Processing OK
#define MISTA_NATErr 0x00002000  // NAT Processing Error
#define MISTA_CFR    0x00004000  // Control Frame Receive
#define MISTA_TXINTR 0x00010000  // Interrupt on Transmit
#define MISTA_TXEMP  0x00020000  // Transmit FIFO Empty
#define MISTA_TXCP   0x00040000  // Transmit Completion
#define MISTA_EXDEF  0x00080000  // Defer
#define MISTA_NCS    0x00100000  // No Carrier Sense
#define MISTA_TXABT  0x00200000  // Transmit Abort
#define MISTA_LC     0x00400000  // Late Collision
#define MISTA_TDU    0x00800000  // Transmit Descriptor Unavailable interrupt
#define MISTA_TxBErr 0x01000000  // Transmit Bus Error interrupt


// MAC General Status Register(MGSTA)
#define MGSTA_CFR  0x00000001  // Control Frame Received
#define MGSTA_RXHA 0x00000002  // Reception Halted
#define MGSTA_DEF  0x00000010  // Deferred transmission
#define MGSTA_PAU  0x00000020  // Pause Bit
#define MGSTA_SQE  0x00000040  // Signal Quality Error
#define MGSTA_TXHA 0x00000080  // Transmission Halted


// PHY(DM9161) Register Description
#define PHY_CNTL_REG    0x00
#define PHY_STATUS_REG  0x01
#define PHY_ID1_REG     0x02
#define PHY_ID2_REG     0x03
#define PHY_ANA_REG     0x04
#define PHY_ANLPA_REG   0x05
#define PHY_ANE_REG     0x06

#define PHY_DSC_REG     0x10
#define PHY_DSCS_REG    0x11
#define PHY_10BTCS_REG  0x12
#define PHY_SINT_REG    0x15
#define PHY_SREC_REG    0x16
#define PHY_DISC_REG    0x17

//PHY Control Register
#define RESET_PHY       1 << 15
#define ENABLE_LOOPBACK 1 << 14
#define DR_100MB        1 << 13
#define ENABLE_AN       1 << 12
#define PHY_MAC_ISOLATE 1 << 10
#define RESTART_AN      1 << 9
#define PHY_FULLDUPLEX  1 << 8
#define PHY_COL_TEST    1 << 7

// PHY Status Register
#define AN_COMPLETE     1 << 5

// PHY Auto-negotiation Advertisement Register
#define DR100_TX_FULL   1 << 8
#define DR100_TX_HALF   1 << 7
#define DR10_TX_FULL    1 << 6
#define DR10_TX_HALF    1 << 5
#define IEEE_802_3_CSMA_CD   1


#define MAC_ADDR_SIZE         6

#define MaxRxFrameSize        1520 // Rx Frame Max Size = 1520
//
#define MaxRxFrameDescriptors 32   // Max number of Rx Frame Descriptors
#define MaxTxFrameDescriptors 16   // Max number of Tx Frame Descriptors
#define MaxRxFrameData        32   // Max number of Rx Frame Data
#define MaxTxFrameData        16   // Max number of Tx Frame Data
//


// RX Frame Descriptor's Owner bit
#define RXfOwnership_DMA 0x80000000  // 10 = DMA
#define RXfOwnership_NAT 0xc0000000  // 11 = NAT
#define RXfOwnership_CPU 0x3fffffff  // 00 = CPU

// TX Frame Descriptor's Owner bit
#define TXfOwnership_DMA 0x80000000  // 1 = DMA
#define TXfOwnership_CPU 0x7fffffff  // 0 = CPU


// Rx Frame Descriptor Status
#define RXFD_Hit     0x4000  // current packet is hit with NAT entry table
#define RXFD_IPHit   0x2000  // current packet is hit on IP address
#define RXFD_PortHit 0x1000  // current packet is hit on Port Number
#define RXFD_Inverse 0x0800  // current hit entry is setting on inverse mode
#define RXFD_NATFSH  0x0400  // NAT Processing Finish
#define RXFD_RP      0x0040  // Runt Packet
#define RXFD_ALIE    0x0020  // Alignment Error
#define RXFD_RXGD    0x0010  // Receiving Good packet received
#define RXFD_PTLE    0x0008  // Packet Too Long Error
#define RXFD_CRCE    0x0002  // CRC Error
#define RXFD_RXINTR  0x0001  // Interrupt on receive

// Rx Frame Descriptor NAT Information
#define RXFD_NAT_URG     0x20000000  // TCP status(URG)
#define RXFD_NAT_ACK     0x10000000  // TCP status(ACK)
#define RXFD_NAT_PSH     0x08000000  // TCP status(PSH)
#define RXFD_NAT_RST     0x04000000  // TCP status(RST)
#define RXFD_NAT_SYN     0x02000000  // TCP status(SYN)
#define RXFD_NAT_FIN     0x01000000  // TCP status(FIN)
#define RXFD_NAT_UCKERR  0x00400000  // TCP/UCKS Error
#define RXFD_NAT_TUERR   0x00200000  // TCP/UDP Error
#define RXFD_NAT_NHERR   0x00100000  // No Hit Error
#define RXFD_NAT_PPPCaps 0x00000040  // PPPoE datagram encapsulated
#define RXFD_NAT_PPPoE   0x00000020  // PPPoE protocol
#define RXFD_NAT_UCKS    0x00000010  // UDP protocol with skip checksum replacement
#define RXFD_NAT_UDP     0x00000008  // apply UDP protocol
#define RXFD_NAT_TCP     0x00000004  // apply TCP protocol
#define RXFD_NAT_LAN     0x00000002  // internal (LAN) port gets hit
#define RXFD_NAT_Hit     0x00000001  // current packet is hit with NAT entry table


// Tx Frame Descriptor's Control bits
#define MACTxIntEn    0x04
#define CRCMode       0x02
#define NoCRCMode     0x00
#define PaddingMode   0x01
#define NoPaddingMode 0x00

// Tx Frame Descriptor Status
#define TXFD_TXINTR 0x0001  // Interrupt on Transmit
#define TXFD_DEF    0x0002  // Transmit deferred 
#define TXFD_TXCP   0x0008  // Transmission Completion 
#define TXFD_EXDEF  0x0010  // Exceed Deferral
#define TXFD_NCS    0x0020  // No Carrier Sense Error
#define TXFD_TXABT  0x0040  // Transmission Abort 
#define TXFD_LC     0x0080  // Late Collision 
#define TXFD_TXHA   0x0100  // Transmission halted
#define TXFD_PAU    0x0200  // Paused
#define TXFD_SQE    0x0400  // SQE error 


// Tx/Rx buffer descriptor structure
typedef struct FrameDescriptor
{
 U32 Status1; // RX - Ownership(2bits),RxStatus(14bits),Length(16bits)
              // TX - Ownership(1bits),Control bits(3bits),Reserved(28bits)
 U32 FrameDataPtr;
 U32 Status2; // RX - NAT Information/Reserved(32bits)
              // TX - TxStatus(16bits),Length(16bits)
 U32 NextFrameDescriptor;
} sFrameDescriptor;


// MAC Frame Structure
typedef struct ETH_HEADER
{
 U8 DestinationAddr[6] ;
 U8 SourceAddr[6] ;
 U8 LengthOrType[2] ;
} etheader ;

typedef struct MACFrame
{
 etheader Header ;
 U8       LLCData[1506] ;
} sMACFrame;


// MAC Tx Error Structure
typedef struct MACTxStatus
{
 U32 DEF;
 U32 TXCP;
 U32 EXDEF;
 U32 NCS;
 U32 TXABT;
 U32 LC;
 U32 TXHA;
 U32 PAU;
 U32 SQE;
 U32 TxBErr; //CMN [2002/11/01]
 U32 TxBytes;
 U32 TDU;
 U32 EMP;
} pMACTxStatus;

// MAC Rx Error Structure
typedef struct MACRxStatus
{
 U32 RP;
 U32 ALIE;
 U32 RXGD;
 U32 PTLE;
 U32 CRCE;
 U32 CFR;
 U32 RxBErr; //CMN [2002/11/01]
 U32 RxBytes;
 U32 RXOV;
 U32 RDU;
} pMACRxStatus;


// Utilities
extern void ReadErrReport(int num) ;
extern void ClearErrReport(int num) ;

// Ethernet and MAC hardware control functions
extern void LanInitialize(int num) ;
extern void MacInitialize(int num) ;
extern void TxFDInitialize(int num) ;
extern void RxFDInitialize(int num) ;
extern void ReadyMac(int num) ;
extern void MacTxGo(int num) ;
extern void MacRxOff(int num) ;
extern void SetMacAddr(int num) ;
extern void FillCamEntry(int num, int entry, U32 msw, U32 lsw);
extern void EnableCamEntry(int num, int entry);
extern void DisableCamEntry(int num, int entry);
extern void ResetPhyChip(int num) ;
extern void MiiStationWrite(int num, U32 PhyInAddr, U32 PhyAddr, U32 PhyWrData) ;
extern U32  MiiStationRead(int num, U32 PhyInAddr, U32 PhyAddr) ;
extern void MAC0_Tx_isr(void) ;
extern void MAC0_Rx_isr(void) ;
extern void MAC1_Tx_isr(void) ;
extern void MAC1_Rx_isr(void) ;
extern int  SendPacket(int num, U8 *Data,int Size) ;

#endif /* _MAC_ */

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99精品国产一区二区三区不卡| 男女性色大片免费观看一区二区 | 亚洲激情图片一区| 懂色av一区二区在线播放| 国产三区在线成人av| 国产综合色视频| 中文字幕第一区| 色综合久久久久久久久| 亚洲精品v日韩精品| 欧美日本在线一区| 久久精品99国产精品日本| 精品国产在天天线2019| 国产福利一区二区三区在线视频| 国产精品视频麻豆| 欧日韩精品视频| 麻豆成人av在线| 中国色在线观看另类| 一本大道av伊人久久综合| 亚洲国产裸拍裸体视频在线观看乱了| 欧美一级高清片在线观看| 美女一区二区视频| 欧美国产精品v| 在线观看91精品国产入口| 久久精品99国产国产精| 中文字幕不卡三区| 欧美亚洲自拍偷拍| 久久av老司机精品网站导航| 亚洲国产精品v| 欧美日韩免费观看一区三区| 国产精品自拍一区| 樱花草国产18久久久久| 日韩一二三区不卡| 成人av免费在线观看| 亚洲国产毛片aaaaa无费看| 久久天堂av综合合色蜜桃网| 99久久精品费精品国产一区二区| 日韩综合小视频| 国产精品女主播在线观看| 在线成人av网站| 91一区二区在线观看| 麻豆精品视频在线观看免费| 一区二区在线观看视频| 精品欧美乱码久久久久久1区2区| 91极品视觉盛宴| 国产精品性做久久久久久| 亚洲444eee在线观看| ●精品国产综合乱码久久久久| 日韩午夜电影av| 在线观看欧美精品| www.成人网.com| 精品一区在线看| 天天综合色天天| 中文字幕字幕中文在线中不卡视频| 精品国产三级a在线观看| 欧美日韩一卡二卡三卡| 91浏览器打开| 岛国精品一区二区| 九九**精品视频免费播放| 亚洲一本大道在线| 综合欧美亚洲日本| 欧美激情在线看| 久久日一线二线三线suv| 91精品国产综合久久久久久久| www.99精品| 成人av在线电影| 国产成人免费在线观看| 国产一区二区免费在线| 另类小说图片综合网| 视频一区欧美日韩| 亚洲成人自拍网| 亚洲免费资源在线播放| 一区视频在线播放| 国产精品三级视频| 国产精品高潮呻吟| 中文字幕在线观看一区二区| 欧美一卡在线观看| 777亚洲妇女| 日韩一级片网站| 精品久久一区二区三区| 精品成人佐山爱一区二区| 日韩一区二区精品| 欧美一区二区三区免费| 欧美肥妇毛茸茸| 欧美一级生活片| 日韩欧美国产精品一区| 91精品欧美一区二区三区综合在| 欧美日韩亚洲高清一区二区| 欧美日韩国产一级| 欧美一区二区三区免费| 2020国产精品自拍| 久久九九全国免费| 国产精品福利在线播放| 亚洲视频一区在线| 亚洲精品视频观看| 亚洲国产另类av| 日本午夜精品视频在线观看| 精品在线亚洲视频| 成人性视频免费网站| 91女人视频在线观看| 欧美性受xxxx黑人xyx| 欧美日本在线播放| 精品成a人在线观看| 欧美激情综合在线| 亚洲啪啪综合av一区二区三区| 香蕉成人伊视频在线观看| 理论电影国产精品| 99综合影院在线| 欧美精品一级二级| ww亚洲ww在线观看国产| 亚洲天堂网中文字| 亚洲第一成年网| 国产一区二区三区不卡在线观看 | 亚洲精品欧美激情| 日韩精品五月天| 国产69精品久久久久777| 一本一道久久a久久精品综合蜜臀| 678五月天丁香亚洲综合网| 26uuu国产在线精品一区二区| 中文字幕一区二区在线播放| 水野朝阳av一区二区三区| 国产成人免费在线| 欧美久久婷婷综合色| 国产精品你懂的在线| 日本欧美大码aⅴ在线播放| 高清免费成人av| 欧美日韩中文另类| 国产色产综合色产在线视频| 亚洲午夜视频在线观看| 国产精品一区二区果冻传媒| 欧美在线观看一二区| 久久先锋影音av鲁色资源网| 一区二区三区四区在线播放| 国产在线视频一区二区三区| 欧美在线不卡视频| 国产欧美日韩另类一区| 日韩精品电影一区亚洲| 91丨九色丨黑人外教| 日韩欧美亚洲一区二区| 一区二区成人在线视频| 国产福利一区二区三区在线视频| 欧美顶级少妇做爰| 一区二区三区在线免费视频| 成人免费视频一区| 欧美成人精品福利| 亚洲国产人成综合网站| www.99精品| 国产婷婷色一区二区三区在线| 奇米888四色在线精品| 欧美性色黄大片| 亚洲欧美日韩一区二区 | 亚洲成人av福利| 99精品国产99久久久久久白柏| 久久久久综合网| 麻豆精品一二三| 91麻豆精品国产91久久久| 一区二区高清视频在线观看| www.亚洲在线| 国产精品欧美一区二区三区| 韩国视频一区二区| 欧美一二三四在线| 日韩黄色免费电影| 欧美蜜桃一区二区三区| 亚洲电影视频在线| 欧美午夜精品电影| 亚洲码国产岛国毛片在线| 99久久精品情趣| 国产精品久久一卡二卡| 高清不卡一区二区| 337p日本欧洲亚洲大胆精品| 国产自产2019最新不卡| 精品国产百合女同互慰| 麻豆精品精品国产自在97香蕉| 欧美老女人第四色| 婷婷成人激情在线网| 欧美色图片你懂的| 亚洲一区二区三区激情| 欧美久久高跟鞋激| 日本不卡免费在线视频| 日韩欧美国产午夜精品| 韩国女主播成人在线| 久久久精品日韩欧美| 成人午夜看片网址| 一区精品在线播放| 色激情天天射综合网| 午夜电影网一区| 日韩欧美一级二级| 国产高清在线精品| 亚洲天堂精品视频| 欧美日韩综合色| 老色鬼精品视频在线观看播放| 久久综合精品国产一区二区三区 | 亚洲国产精品人人做人人爽| 欧美精品aⅴ在线视频| 免费人成黄页网站在线一区二区| 久久久久国产精品麻豆| proumb性欧美在线观看| 亚洲一卡二卡三卡四卡| 欧美一级一级性生活免费录像| 国产成人一区二区精品非洲| 18欧美乱大交hd1984|