📄 dm9000.h
字号:
//#include "biossys.h"//Modify by Taylor#define DM9K_SEGMENT (0xD << 10)#define DM9K_BaseAddr 0x0#define DM9KADDR (DM9K_BaseAddr)#define DM9KDATA (DM9K_BaseAddr + 4)#define DM9000_RX_INTR 0x01#define DM9000_TX_INTR 0x02#define DM9000_OVERFLOW_INTR 0x04/* DM9000 REG 一此相关设定 */#define NCR 0x00#define NSR 0x01#define TCR 0x02#define TSR1 0x03#define TSR2 0x04#define RCR 0x05#define RSR 0x06#define POCR 0x07#define BPTR 0x08#define FCTR 0x09#define FCR 0x0A#define EPCR 0x0B#define EPAR 0x0C#define EPDRL 0x0D#define EPDRH 0x0E#define WAR 0x0F#define PAR 0x10#define MAR 0x16#define GPCR 0x1E#define GPR 0x1F#define VID_L 0x28#define VID_H 0x29#define PID_L 0x2A#define PID_H 0x2B#define CHIPR 0x2C#define MRCMDX 0xF0#define MRCMD 0xF2#define MRRL 0xF4#define MRRH 0xF5#define MWCMDX 0xF6#define MWCMD 0xF8#define MWRL 0xFA#define MWRH 0xFB#define TXPLL 0xFC#define TXPLH 0xFD#define ISR 0xFE#define IMR 0xFF/* for debug ************************************************ *//* #define TRPAL 0x22 在一般情况下不会用到 *//* #define TRPAH 0x23 在一般情况下不会用到 *//* #define RWPAL 0x24 在一般情况下不会用到 *//* #define RWPAH 0x25 在一般情况下不会用到 *//* #define SMCR 0x2F 在一般情况下不会用到 *//* for debug ************************************************ *//* 其他特殊设定 */#define LINK_phy 0x00#define LINK_MII 0x01#define LINK_Reverse_MII 0x02#define WORK_8 0x02#define WORK_16 0x00#define WORK_32 0x01#define GPIO0_s 0x00#define GPIO1_s 0x01#define GPIO2_s 0x02#define GPIO3_s 0x03#define GPIO_in 0x01#define GPIO_out 0x00#define GPIO_high 0x01#define GPIO_low 0x00#define IFNAME0 'e'#define IFNAME1 't'#define DM9K_ID 0x90000A46#define DM9K_REG00 0x00#define DM9K_REG05 0x38 /* SKIP_CRC/SKIP_LONG */#define DM9K_REG08 0x27#define DM9K_REG09 0x38#define DM9K_REG0A 0x00//0xff #define DM9K_REGFF 0x80 /* IMR */#define DM9K_PHY 0x40 /* PHY address 0x01 */#define DM9K_PKT_MAX 1536 /* Received packet max size */#define DM9K_PKT_RDY 0x01 /* Packet ready to receive */#define DM9K_MIN_IO 0x000#define DM9K_MAX_IO 0x000#define DM9K_INT_MII 0x00#define DM9K_EXT_MII 0x80#define DM9K_VID_L 0x28#define DM9K_VID_H 0x29#define DM9K_PID_L 0x2A#define DM9K_PID_H 0x2B#define DM9801_NOISE_FLOOR 0x08#define DM9802_NOISE_FLOOR 0x05#define DMFE_SUCC 0#define MAX_PACKET_SIZE 1514#define DMFE_MAX_MULTICAST 14#define DM9K_RX_INTR 0x01#define DM9K_TX_INTR 0x02#define DM9K_OVERFLOW_INTR 0x04#define DM9K_DWORD_MODE 1#define DM9K_BYTE_MODE 2#define DM9K_WORD_MODE 0#define TRUE 1#define FALSE 0#define DMFE_TIMER_WUT jiffies+(HZ*2) /* timer wakeup time : 2 second */#define DMFE_TX_TIMEOUT (HZ*2) /* tx packet time-out time 1.5 s" */#define DMFE_DBUG(dbug_now, msg, vaule) //\ DEBUGF(DM9K_DEBUG |DBG_TRACE, ("dmfe: %s %x\n", msg, vaule))#define GETMAC(eaddr,i) getbyte(eaddr.addr,i)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -