tg3.h

来自「Linux Kernel 2.6.9 for OMAP1710」· C头文件 代码 · 共 1,602 行 · 第 1/5 页

H
1,602
字号
/* $Id: tg3.h,v 1.37.2.32 2002/03/11 12:18:18 davem Exp $ * tg3.h: Definitions for Broadcom Tigon3 ethernet driver. * * Copyright (C) 2001, 2002, 2003, 2004 David S. Miller (davem@redhat.com) * Copyright (C) 2001 Jeff Garzik (jgarzik@pobox.com) * Copyright (C) 2004 Sun Microsystems Inc. */#ifndef _T3_H#define _T3_H#define TG3_64BIT_REG_HIGH		0x00UL#define TG3_64BIT_REG_LOW		0x04UL/* Descriptor block info. */#define TG3_BDINFO_HOST_ADDR		0x0UL /* 64-bit */#define TG3_BDINFO_MAXLEN_FLAGS		0x8UL /* 32-bit */#define  BDINFO_FLAGS_USE_EXT_RECV	 0x00000001 /* ext rx_buffer_desc */#define  BDINFO_FLAGS_DISABLED		 0x00000002#define  BDINFO_FLAGS_MAXLEN_MASK	 0xffff0000#define  BDINFO_FLAGS_MAXLEN_SHIFT	 16#define TG3_BDINFO_NIC_ADDR		0xcUL /* 32-bit */#define TG3_BDINFO_SIZE			0x10UL#define RX_COPY_THRESHOLD  		256#define RX_STD_MAX_SIZE			1536#define RX_STD_MAX_SIZE_5705		512#define RX_JUMBO_MAX_SIZE		0xdeadbeef /* XXX *//* First 256 bytes are a mirror of PCI config space. */#define TG3PCI_VENDOR			0x00000000#define  TG3PCI_VENDOR_BROADCOM		 0x14e4#define TG3PCI_DEVICE			0x00000002#define  TG3PCI_DEVICE_TIGON3_1		 0x1644 /* BCM5700 */#define  TG3PCI_DEVICE_TIGON3_2		 0x1645 /* BCM5701 */#define  TG3PCI_DEVICE_TIGON3_3		 0x1646 /* BCM5702 */#define  TG3PCI_DEVICE_TIGON3_4		 0x1647 /* BCM5703 */#define TG3PCI_COMMAND			0x00000004#define TG3PCI_STATUS			0x00000006#define TG3PCI_CCREVID			0x00000008#define TG3PCI_CACHELINESZ		0x0000000c#define TG3PCI_LATTIMER			0x0000000d#define TG3PCI_HEADERTYPE		0x0000000e#define TG3PCI_BIST			0x0000000f#define TG3PCI_BASE0_LOW		0x00000010#define TG3PCI_BASE0_HIGH		0x00000014/* 0x18 --> 0x2c unused */#define TG3PCI_SUBSYSVENID		0x0000002c#define TG3PCI_SUBSYSID			0x0000002e#define TG3PCI_ROMADDR			0x00000030#define TG3PCI_CAPLIST			0x00000034/* 0x35 --> 0x3c unused */#define TG3PCI_IRQ_LINE			0x0000003c#define TG3PCI_IRQ_PIN			0x0000003d#define TG3PCI_MIN_GNT			0x0000003e#define TG3PCI_MAX_LAT			0x0000003f#define TG3PCI_X_CAPS			0x00000040#define  PCIX_CAPS_RELAXED_ORDERING	 0x00020000#define  PCIX_CAPS_SPLIT_MASK		 0x00700000#define  PCIX_CAPS_SPLIT_SHIFT		 20#define  PCIX_CAPS_BURST_MASK		 0x000c0000#define  PCIX_CAPS_BURST_SHIFT		 18#define  PCIX_CAPS_MAX_BURST_CPIOB	 2#define TG3PCI_PM_CAP_PTR		0x00000041#define TG3PCI_X_COMMAND		0x00000042#define TG3PCI_X_STATUS			0x00000044#define TG3PCI_PM_CAP_ID		0x00000048#define TG3PCI_VPD_CAP_PTR		0x00000049#define TG3PCI_PM_CAPS			0x0000004a#define TG3PCI_PM_CTRL_STAT		0x0000004c#define TG3PCI_BR_SUPP_EXT		0x0000004e#define TG3PCI_PM_DATA			0x0000004f#define TG3PCI_VPD_CAP_ID		0x00000050#define TG3PCI_MSI_CAP_PTR		0x00000051#define TG3PCI_VPD_ADDR_FLAG		0x00000052#define  VPD_ADDR_FLAG_WRITE		0x00008000#define TG3PCI_VPD_DATA			0x00000054#define TG3PCI_MSI_CAP_ID		0x00000058#define TG3PCI_NXT_CAP_PTR		0x00000059#define TG3PCI_MSI_CTRL			0x0000005a#define TG3PCI_MSI_ADDR_LOW		0x0000005c#define TG3PCI_MSI_ADDR_HIGH		0x00000060#define TG3PCI_MSI_DATA			0x00000064/* 0x66 --> 0x68 unused */#define TG3PCI_MISC_HOST_CTRL		0x00000068#define  MISC_HOST_CTRL_CLEAR_INT	 0x00000001#define  MISC_HOST_CTRL_MASK_PCI_INT	 0x00000002#define  MISC_HOST_CTRL_BYTE_SWAP	 0x00000004#define  MISC_HOST_CTRL_WORD_SWAP	 0x00000008#define  MISC_HOST_CTRL_PCISTATE_RW	 0x00000010#define  MISC_HOST_CTRL_CLKREG_RW	 0x00000020#define  MISC_HOST_CTRL_REGWORD_SWAP	 0x00000040#define  MISC_HOST_CTRL_INDIR_ACCESS	 0x00000080#define  MISC_HOST_CTRL_IRQ_MASK_MODE	 0x00000100#define  MISC_HOST_CTRL_TAGGED_STATUS	 0x00000200#define  MISC_HOST_CTRL_CHIPREV		 0xffff0000#define  MISC_HOST_CTRL_CHIPREV_SHIFT	 16#define  GET_CHIP_REV_ID(MISC_HOST_CTRL) \	 (((MISC_HOST_CTRL) & MISC_HOST_CTRL_CHIPREV) >> \	  MISC_HOST_CTRL_CHIPREV_SHIFT)#define  CHIPREV_ID_5700_A0		 0x7000#define  CHIPREV_ID_5700_A1		 0x7001#define  CHIPREV_ID_5700_B0		 0x7100#define  CHIPREV_ID_5700_B1		 0x7101#define  CHIPREV_ID_5700_B3		 0x7102#define  CHIPREV_ID_5700_ALTIMA		 0x7104#define  CHIPREV_ID_5700_C0		 0x7200#define  CHIPREV_ID_5701_A0		 0x0000#define  CHIPREV_ID_5701_B0		 0x0100#define  CHIPREV_ID_5701_B2		 0x0102#define  CHIPREV_ID_5701_B5		 0x0105#define  CHIPREV_ID_5703_A0		 0x1000#define  CHIPREV_ID_5703_A1		 0x1001#define  CHIPREV_ID_5703_A2		 0x1002#define  CHIPREV_ID_5703_A3		 0x1003#define  CHIPREV_ID_5704_A0		 0x2000#define  CHIPREV_ID_5704_A1		 0x2001#define  CHIPREV_ID_5704_A2		 0x2002#define  CHIPREV_ID_5704_A3		 0x2003#define  CHIPREV_ID_5705_A0		 0x3000#define  CHIPREV_ID_5705_A1		 0x3001#define  CHIPREV_ID_5705_A2		 0x3002#define  CHIPREV_ID_5705_A3		 0x3003#define  CHIPREV_ID_5750_A0		 0x4000#define  CHIPREV_ID_5750_A1		 0x4001#define  CHIPREV_ID_5750_A3		 0x4003#define  GET_ASIC_REV(CHIP_REV_ID)	((CHIP_REV_ID) >> 12)#define   ASIC_REV_5700			 0x07#define   ASIC_REV_5701			 0x00#define   ASIC_REV_5703			 0x01#define   ASIC_REV_5704			 0x02#define   ASIC_REV_5705			 0x03#define   ASIC_REV_5750			 0x04#define  GET_CHIP_REV(CHIP_REV_ID)	((CHIP_REV_ID) >> 8)#define   CHIPREV_5700_AX		 0x70#define   CHIPREV_5700_BX		 0x71#define   CHIPREV_5700_CX		 0x72#define   CHIPREV_5701_AX		 0x00#define   CHIPREV_5703_AX		 0x10#define   CHIPREV_5704_AX		 0x20#define   CHIPREV_5704_BX		 0x21#define  GET_METAL_REV(CHIP_REV_ID)	((CHIP_REV_ID) & 0xff)#define   METAL_REV_A0			 0x00#define   METAL_REV_A1			 0x01#define   METAL_REV_B0			 0x00#define   METAL_REV_B1			 0x01#define   METAL_REV_B2			 0x02#define TG3PCI_DMA_RW_CTRL		0x0000006c#define  DMA_RWCTRL_MIN_DMA		 0x000000ff#define  DMA_RWCTRL_MIN_DMA_SHIFT	 0#define  DMA_RWCTRL_READ_BNDRY_MASK	 0x00000700#define  DMA_RWCTRL_READ_BNDRY_DISAB	 0x00000000#define  DMA_RWCTRL_READ_BNDRY_16	 0x00000100#define  DMA_RWCTRL_READ_BNDRY_128_PCIX	 0x00000100#define  DMA_RWCTRL_READ_BNDRY_32	 0x00000200#define  DMA_RWCTRL_READ_BNDRY_256_PCIX	 0x00000200#define  DMA_RWCTRL_READ_BNDRY_64	 0x00000300#define  DMA_RWCTRL_READ_BNDRY_384_PCIX	 0x00000300#define  DMA_RWCTRL_READ_BNDRY_128	 0x00000400#define  DMA_RWCTRL_READ_BNDRY_256	 0x00000500#define  DMA_RWCTRL_READ_BNDRY_512	 0x00000600#define  DMA_RWCTRL_READ_BNDRY_1024	 0x00000700#define  DMA_RWCTRL_WRITE_BNDRY_MASK	 0x00003800#define  DMA_RWCTRL_WRITE_BNDRY_DISAB	 0x00000000#define  DMA_RWCTRL_WRITE_BNDRY_16	 0x00000800#define  DMA_RWCTRL_WRITE_BNDRY_128_PCIX 0x00000800#define  DMA_RWCTRL_WRITE_BNDRY_32	 0x00001000#define  DMA_RWCTRL_WRITE_BNDRY_256_PCIX 0x00001000#define  DMA_RWCTRL_WRITE_BNDRY_64	 0x00001800#define  DMA_RWCTRL_WRITE_BNDRY_384_PCIX 0x00001800#define  DMA_RWCTRL_WRITE_BNDRY_128	 0x00002000#define  DMA_RWCTRL_WRITE_BNDRY_256	 0x00002800#define  DMA_RWCTRL_WRITE_BNDRY_512	 0x00003000#define  DMA_RWCTRL_WRITE_BNDRY_1024	 0x00003800#define  DMA_RWCTRL_ONE_DMA		 0x00004000#define  DMA_RWCTRL_READ_WATER		 0x00070000#define  DMA_RWCTRL_READ_WATER_SHIFT	 16#define  DMA_RWCTRL_WRITE_WATER		 0x00380000#define  DMA_RWCTRL_WRITE_WATER_SHIFT	 19#define  DMA_RWCTRL_USE_MEM_READ_MULT	 0x00400000#define  DMA_RWCTRL_ASSERT_ALL_BE	 0x00800000#define  DMA_RWCTRL_PCI_READ_CMD	 0x0f000000#define  DMA_RWCTRL_PCI_READ_CMD_SHIFT	 24#define  DMA_RWCTRL_PCI_WRITE_CMD	 0xf0000000#define  DMA_RWCTRL_PCI_WRITE_CMD_SHIFT	 28#define  DMA_RWCTRL_WRITE_BNDRY_64_PCIE	 0x10000000#define  DMA_RWCTRL_WRITE_BNDRY_128_PCIE 0x30000000#define  DMA_RWCTRL_WRITE_BNDRY_DISAB_PCIE 0x70000000#define TG3PCI_PCISTATE			0x00000070#define  PCISTATE_FORCE_RESET		 0x00000001#define  PCISTATE_INT_NOT_ACTIVE	 0x00000002#define  PCISTATE_CONV_PCI_MODE		 0x00000004#define  PCISTATE_BUS_SPEED_HIGH	 0x00000008#define  PCISTATE_BUS_32BIT		 0x00000010#define  PCISTATE_ROM_ENABLE		 0x00000020#define  PCISTATE_ROM_RETRY_ENABLE	 0x00000040#define  PCISTATE_FLAT_VIEW		 0x00000100#define  PCISTATE_RETRY_SAME_DMA	 0x00002000#define TG3PCI_CLOCK_CTRL		0x00000074#define  CLOCK_CTRL_CORECLK_DISABLE	 0x00000200#define  CLOCK_CTRL_RXCLK_DISABLE	 0x00000400#define  CLOCK_CTRL_TXCLK_DISABLE	 0x00000800#define  CLOCK_CTRL_ALTCLK		 0x00001000#define  CLOCK_CTRL_PWRDOWN_PLL133	 0x00008000#define  CLOCK_CTRL_44MHZ_CORE		 0x00040000#define  CLOCK_CTRL_625_CORE		 0x00100000#define  CLOCK_CTRL_FORCE_CLKRUN	 0x00200000#define  CLOCK_CTRL_CLKRUN_OENABLE	 0x00400000#define  CLOCK_CTRL_DELAY_PCI_GRANT	 0x80000000#define TG3PCI_REG_BASE_ADDR		0x00000078#define TG3PCI_MEM_WIN_BASE_ADDR	0x0000007c#define TG3PCI_REG_DATA			0x00000080#define TG3PCI_MEM_WIN_DATA		0x00000084#define TG3PCI_MODE_CTRL		0x00000088#define TG3PCI_MISC_CFG			0x0000008c#define TG3PCI_MISC_LOCAL_CTRL		0x00000090/* 0x94 --> 0x98 unused */#define TG3PCI_STD_RING_PROD_IDX	0x00000098 /* 64-bit */#define TG3PCI_RCV_RET_RING_CON_IDX	0x000000a0 /* 64-bit */#define TG3PCI_SND_PROD_IDX		0x000000a8 /* 64-bit *//* 0xb0 --> 0xb8 unused */#define TG3PCI_DUAL_MAC_CTRL		0x000000b8#define  DUAL_MAC_CTRL_CH_MASK		 0x00000003#define  DUAL_MAC_CTRL_ID		 0x00000004/* 0xbc --> 0x100 unused *//* 0x100 --> 0x200 unused *//* Mailbox registers */#define MAILBOX_INTERRUPT_0		0x00000200 /* 64-bit */#define MAILBOX_INTERRUPT_1		0x00000208 /* 64-bit */#define MAILBOX_INTERRUPT_2		0x00000210 /* 64-bit */#define MAILBOX_INTERRUPT_3		0x00000218 /* 64-bit */#define MAILBOX_GENERAL_0		0x00000220 /* 64-bit */#define MAILBOX_GENERAL_1		0x00000228 /* 64-bit */#define MAILBOX_GENERAL_2		0x00000230 /* 64-bit */#define MAILBOX_GENERAL_3		0x00000238 /* 64-bit */#define MAILBOX_GENERAL_4		0x00000240 /* 64-bit */#define MAILBOX_GENERAL_5		0x00000248 /* 64-bit */#define MAILBOX_GENERAL_6		0x00000250 /* 64-bit */#define MAILBOX_GENERAL_7		0x00000258 /* 64-bit */#define MAILBOX_RELOAD_STAT		0x00000260 /* 64-bit */#define MAILBOX_RCV_STD_PROD_IDX	0x00000268 /* 64-bit */#define MAILBOX_RCV_JUMBO_PROD_IDX	0x00000270 /* 64-bit */#define MAILBOX_RCV_MINI_PROD_IDX	0x00000278 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_0	0x00000280 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_1	0x00000288 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_2	0x00000290 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_3	0x00000298 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_4	0x000002a0 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_5	0x000002a8 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_6	0x000002b0 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_7	0x000002b8 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_8	0x000002c0 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_9	0x000002c8 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_10	0x000002d0 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_11	0x000002d8 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_12	0x000002e0 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_13	0x000002e8 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_14	0x000002f0 /* 64-bit */#define MAILBOX_RCVRET_CON_IDX_15	0x000002f8 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_0	0x00000300 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_1	0x00000308 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_2	0x00000310 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_3	0x00000318 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_4	0x00000320 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_5	0x00000328 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_6	0x00000330 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_7	0x00000338 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_8	0x00000340 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_9	0x00000348 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_10	0x00000350 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_11	0x00000358 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_12	0x00000360 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_13	0x00000368 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_14	0x00000370 /* 64-bit */#define MAILBOX_SNDHOST_PROD_IDX_15	0x00000378 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_0	0x00000380 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_1	0x00000388 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_2	0x00000390 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_3	0x00000398 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_4	0x000003a0 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_5	0x000003a8 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_6	0x000003b0 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_7	0x000003b8 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_8	0x000003c0 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_9	0x000003c8 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_10	0x000003d0 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_11	0x000003d8 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_12	0x000003e0 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_13	0x000003e8 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_14	0x000003f0 /* 64-bit */#define MAILBOX_SNDNIC_PROD_IDX_15	0x000003f8 /* 64-bit *//* MAC control registers */#define MAC_MODE			0x00000400#define  MAC_MODE_RESET			 0x00000001#define  MAC_MODE_HALF_DUPLEX		 0x00000002#define  MAC_MODE_PORT_MODE_MASK	 0x0000000c#define  MAC_MODE_PORT_MODE_TBI		 0x0000000c#define  MAC_MODE_PORT_MODE_GMII	 0x00000008#define  MAC_MODE_PORT_MODE_MII		 0x00000004#define  MAC_MODE_PORT_MODE_NONE	 0x00000000#define  MAC_MODE_PORT_INT_LPBACK	 0x00000010#define  MAC_MODE_TAGGED_MAC_CTRL	 0x00000080#define  MAC_MODE_TX_BURSTING		 0x00000100#define  MAC_MODE_MAX_DEFER		 0x00000200#define  MAC_MODE_LINK_POLARITY		 0x00000400#define  MAC_MODE_RXSTAT_ENABLE		 0x00000800#define  MAC_MODE_RXSTAT_CLEAR		 0x00001000#define  MAC_MODE_RXSTAT_FLUSH		 0x00002000#define  MAC_MODE_TXSTAT_ENABLE		 0x00004000#define  MAC_MODE_TXSTAT_CLEAR		 0x00008000#define  MAC_MODE_TXSTAT_FLUSH		 0x00010000#define  MAC_MODE_SEND_CONFIGS		 0x00020000#define  MAC_MODE_MAGIC_PKT_ENABLE	 0x00040000#define  MAC_MODE_ACPI_ENABLE		 0x00080000#define  MAC_MODE_MIP_ENABLE		 0x00100000#define  MAC_MODE_TDE_ENABLE		 0x00200000#define  MAC_MODE_RDE_ENABLE		 0x00400000

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?