Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

223 lines
6.7 KiB

/*++
Copyright (c) 1990 Microsoft Corporation
Module Name:
card.c
Abstract:
This is the mac ndis file for the Ungermann Bass Ethernet Controller.
This driver conforms to the NDIS 3.0 interface.
It is here that the NDIS3.0 functions defined in the MAC characteristic
table have been deinfed.
Author:
Sanjeev Katariya (sanjeevk) 03-05-92
Environment:
Kernel Mode Operating Systems : NT and other lesser OS's
Revision History:
Brian Lieuallen BrianLie 07/21/92
Made it work.
Brian Lieuallen BrianLie 12/15/93
Made it a mini-port
--*/
// INCLUDES
#include <ndis.h>
#include <efilter.h>
#include "niudata.h"
#include "debug.h"
#include "ubhard.h"
#include "ubsoft.h"
#include "ubnei.h"
#include "map.h"
#ifdef NDIS_NT
#ifdef ALLOC_DATA_PRAGMA
#pragma data_seg("INIT")
#endif
#endif
NIUDETAILS NiuDetails[6]={
// PCNIU--Not supported
{0},
// Cost_Reduced-PCNIU-- Not Supported
{0},
// NIUpc(long 16-bit card)
{ { 0x02, 0x12, 0x06, 0x16,
0x0A, 0x1A, 0x0E, 0x1E
},
ATLANTA,
NIUPC_MINIMUM_WINDOW_SIZE,
NIUPC_OPERATIONAL_CS,
NIUPC_PRIMARY_DS,
NIUPC_TX_BUFFER_SEGS,
NIUPC_HIGHEST_RAM_SEGS,
NIUPC_SCSP_SEGS,
NIUPC_POD_STATUS_ADDR,
NIUPC_HOST_INTR_PORT,
NIUPC_82586_CA_PORT,
NIUPC_82586_RESET_PORT,
NIUPC_ADAPTER_CTRL_PORT,
NIUPC_LEDOFF_12V_DOPARCHK,
NIUPC_LEDON_12V_DOPARCHK,
NIUPC_IRQSEL_LEDPORT,
NIUPC_DEADMAN_TIMERPORT,
{ NIUPC_CLI_OFFSET,
NIUPC_MAP_OFFSET,
NIUPC_INTR_STATUS_OFFSET,
NIUPC_SETWINBASE_OFFSET
},
NIUPC_ADAPTER_FLAGS,
NIUPC_ADAPTER_CODE
},
// NIUps (MCA EOTP)
{ { 0x02, 0x06, 0x0A, 0x0E,
0x12, 0x16, 0x1A, 0x1E,
0x22, 0x26, 0x2A, 0x2E,
0x32, 0x36, 0x3A, 0x3E,
0x42, 0x46, 0x4A, 0x4E,
0x52, 0x56, 0x5A, 0x5E,
0x62, 0x66, 0x6A, 0x6E,
0x72, 0x76, 0x7A, 0x7E
},
CHAMELEON,
GPCNIU_MINIMUM_WINDOW_SIZE,
GPCNIU_OPERATIONAL_CS,
GPCNIU_PRIMARY_DS,
GPCNIU_TX_BUFFER_SEGS,
GPCNIU_HIGHEST_RAM_SEGS,
GPCNIU_SCSP_SEGS,
GPCNIU_POD_STATUS_ADDR,
GPCNIU_HOST_INTR_PORT,
GPCNIU_82586_CA_PORT,
GPCNIU_82586_RESET_PORT,
GPCNIU_ADAPTER_CTRL_PORT,
GPCNIU_LEDOFF_12V_DOPARCHK,
GPCNIU_LEDON_12V_DOPARCHK,
GPCNIU_IRQSEL_LEDPORT,
GPCNIU_DEADMAN_TIMERPORT,
{ GPCNIU_CLI_OFFSET,
GPCNIU_MAP_OFFSET,
GPCNIU_INTR_STATUS_OFFSET,
GPCNIU_SETWINBASE_OFFSET
},
GPCNIU_ADAPTER_FLAGS,
NIUPS_ADAPTER_CODE
},
// GPCNIU (EOTP)
{ { 0x02, 0x06, 0x0A, 0x0E,
0x12, 0x16, 0x1A, 0x1E,
0x22, 0x26, 0x2A, 0x2E,
0x32, 0x36, 0x3A, 0x3E,
0x42, 0x46, 0x4A, 0x4E,
0x52, 0x56, 0x5A, 0x5E,
0x62, 0x66, 0x6A, 0x6E,
0x72, 0x76, 0x7A, 0x7E
},
CHAMELEON,
GPCNIU_MINIMUM_WINDOW_SIZE,
GPCNIU_OPERATIONAL_CS,
GPCNIU_PRIMARY_DS,
GPCNIU_TX_BUFFER_SEGS,
GPCNIU_HIGHEST_RAM_SEGS,
GPCNIU_SCSP_SEGS,
GPCNIU_POD_STATUS_ADDR,
GPCNIU_HOST_INTR_PORT,
GPCNIU_82586_CA_PORT,
GPCNIU_82586_RESET_PORT,
GPCNIU_ADAPTER_CTRL_PORT,
GPCNIU_LEDOFF_12V_DOPARCHK,
GPCNIU_LEDON_12V_DOPARCHK,
GPCNIU_IRQSEL_LEDPORT,
GPCNIU_DEADMAN_TIMERPORT,
{ GPCNIU_CLI_OFFSET,
GPCNIU_MAP_OFFSET,
GPCNIU_INTR_STATUS_OFFSET,
GPCNIU_SETWINBASE_OFFSET
},
GPCNIU_ADAPTER_FLAGS,
GPCNIU_ADAPTER_CODE
},
// PCNIUex -- Not Supported
{0},
};
UCHAR GPNIU_IRQ_Selections[13]={0,0,0x10,0x20,0x30,0x40,0,0x50,0,0x10,0,0,0x60};
ULONG MemoryWindows[4]={0x08000,0x10000,0x04000,0x0};
ULONG MemoryBases[16]={0x0c0000,0x0c4000,0x0c8000,0x0cc000,
0x0d0000,0x0d4000,0x0d8000,0x0dc000,
0xe28000,0x0c4000,0x0c8000,0x0cc000,
0x0d0000,0x0d4000,0x0d8000,0x0dc000};
USHORT PortBases[16]={ 0x350,0x350,0x358,0x358,
0x360,0x360,0x368,0x368,
0x368,0x368,0x368,0x368,
0x368,0x368,0x368,0x368};
#ifdef NDIS_NT
#ifdef ALLOC_DATA_PRAGMA
#pragma data_seg()
#endif
#endif