2013年1月16日 星期三

利用RU檢查LAN的MAC

INTEL 82574:
1.  MAC_ADDR = ReadPCI32(NIC_BUS, NIC_DEV, NIC_FUN, 0x10);
2.  MAC_ADDR &= (UINT32) (0xFFF00000);
3.  MAC_ADDR  | =(UINT32) 0x40;
4.  MAC_value_offset1 = (UINT8)(MemRead32((UINT32*)(UINT)(MAC_ADDR)));
5.  MAC_value_offset2 = (UINT8)(MemRead32((UINT32*)(UINT)(MAC_ADDR+1)));
6.  MAC_value_offset3 = (UINT8)(MemRead32((UINT32*)(UINT)(MAC_ADDR+2)));
7.  MAC_value_offset4 = (UINT8)(MemRead32((UINT32*)(UINT)(MAC_ADDR+3)));
8.  MAC_value_offset5 = (UINT8)(MemRead32((UINT32*)(UINT)(MAC_ADDR+4)));
9.  MAC_value_offset6 = (UINT8)(MemRead32((UINT32*)(UINT)(MAC_ADDR+5)));

===========================================================
1.Realtek:Io或Memory map offset BYTE[0x00]~BYTE[0x05]
2.Marvell:Memory map offset BYTE[0x100]~BYTE[0x105]
3.SIS:Io map offset  BYTE[0x62]~BYTE[0x67]
4.Intel: Memory map offset  BYTE[0x40]~BYTE[0x45]
5.Broadcom:Memory  map offset  BYTE[0x16b]~BYTE[0x164] 或者 Memory map offset  BYTE[0x1410]~BYTE[0x1415]
6.Jmicron:Memory  map offset  BYTE[0x38]~BYTE[0x3D]

引用自:
http://www.biosren.com/thread-6474-1-1.html