Re: Puzzle in Ethernet Card.
From: Knight Lin (lhbb5405_at_hotmail.com)
Date: 03/01/05
- Next message: vijayaraju.k_at_gmail.com: "Re: Windows CE 4.2 Evaluation CDs"
- Previous message: StuartG: "Creating WinCE images"
- In reply to: Paul G. Tobey [eMVP]: "Re: Puzzle in Ethernet Card."
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 1 Mar 2005 12:06:37 +0800
Hi Paul:
Thanks for your reply.
a)The OS had shown the type of the Card "CF+ LP-E" in the "System
Properties-->Computer-->Expansion Slots:",so it seems like the card driver
is using,right?
b)Maybe you are right.I will check it again.
c)In my card(slot) driver,it is using polling mode,no interrupt.
And,there is only one PCMCIA slot used to connnect the Ethernet card in
my platform,so it can not use Ethernet Kitl to debug the card driver.But I
add some debug messages in the code,and get them through serial port.
************OEMInit**************Sp=ffffc7cc
OEMIoControl: Unsupported Code 0x101008c - device 0x0101 func 35
OEMIoControl: Unsupported Code 0x10100d0 - device 0x0101 func 52
OEMIoControl: Unsupported Code 0x10100f8 - device 0x0101 func 62
EnEnableClient(mdd/pccarden.cpp)
pCardEnableContainer
CardRegisterClient(mdd/pcclient.cpp)
EnablerClienCallBack(mdd/pccarden.cpp)
Init(mdd/init.cpp)
PCCARD.DLL : Init g_PcCardIoResourceID=abcd0001
DeviceFolder::LoadDevice!Enumerate Found deprecated load instructions at
(Drivers\BuiltIn\AFD). Driver cannot
be unloaded.
CPCCardBusBridgeBase(bridgebase.cpp)
CPcmciaBusBridge(pdsocket.cpp)
Init(pdsocket.cpp)
loadPcCardEntry(bridgebase.cpp)
InitCardBusBridge(pdsocket.cpp)
GetRegistryConfig(pdsocket.cpp)
LoadWindowsSettings(bridgebase.cpp)
m_dwCount=3
WindowEntry=0
m_pPcmciaWindowInfo[0].m_dwRepeatCount =1
m_pPcmciaWindowInfo[0].m_nSlotNo =0
m_pPcmciaWindowInfo[0].m_WindowInfo.fWindowCaps=2
m_pPcmciaWindowInfo[0].m_WindowInfo.fMemoryCaps=10
m_pPcmciaWindowInfo[0].m_WindowInfo.uMemMinSize=1000
m_pPcmciaWindowInfo[0].m_WindowInfo.uMemMaxSize=4000000
m_pPcmciaWindowInfo[0].m_WindowInfo.uMemGranularity=0
m_pPcmciaWindowInfo[0].m_WindowInfo.uMemBase=28000000
WindowEntry=1
m_pPcmciaWindowInfo[1].m_dwRepeatCount =1
m_pPcmciaWindowInfo[1].m_nSlotNo =0
m_pPcmciaWindowInfo[1].m_WindowInfo.fWindowCaps=1
m_pPcmciaWindowInfo[1].m_WindowInfo.fMemoryCaps=10
m_pPcmciaWindowInfo[1].m_WindowInfo.uMemMinSize=1000
m_pPcmciaWindowInfo[1].m_WindowInfo.uMemMaxSize=4000000
m_pPcmciaWindowInfo[1].m_WindowInfo.uMemGranularity=0
m_pPcmciaWindowInfo[1].m_WindowInfo.uMemBase=2c000000
WindowEntry=2
m_pPcmciaWindowInfo[2].m_dwRepeatCount =2
m_pPcmciaWindowInfo[2].m_nSlotNo =0
m_pPcmciaWindowInfo[2].m_WindowInfo.fWindowCaps=4
m_pPcmciaWindowInfo[2].m_WindowInfo.fMemoryCaps=0
m_pPcmciaWindowInfo[2].m_WindowInfo.fIOCaps=18
m_pPcmciaWindowInfo[2].m_WindowInfo.uMemGranularity=0
m_pPcmciaWindowInfo[2].m_WindowInfo.uMemBase=0
m_pPcmciaWindowInfo[2].m_WindowInfo.uMemOffset=0
m_pPcmciaWindowInfo[2].m_WindowInfo.uIOFirstByte=20000000
m_pPcmciaWindowInfo[2].m_WindowInfo.uIOLastByte=21ffffff
m_pPcmciaWindowInfo[2].m_WindowInfo.uIOMinSize=1000
m_pPcmciaWindowInfo[2].m_WindowInfo.uIOMaxSize=2000000
m_pPcmciaWindowInfo[2].m_WindowInfo.uIOGranularity=1
m_pPcmciaWindowInfo[2].m_WindowState.fState=1
m_nIoWindowCount=2
m_nMemWindowCount=2
m_SlotNumber = 0
m_fPollingMode = 1
m_dwClientIrq = 33
m_dwCSCSysIntr = 18
m_dwCSCIrq = 32
m_dwPollTimeout = 500
m_uPriority = 101
MapDeviceRegisters(pdsocket.cpp)
InitializeBridgeHW(pdsocket.cpp)
InstallIsr(pdsocket.cpp)
m_fPollingMode = 1
GetSocketName(bridgebase.cpp)
CPcmciaCardSocket(pcmsock.cpp)
pBridge->GetMemWindowCount()=2
pBridge->GetIoWindowCount()=2
GetRegPowerOption(pdsocket.cpp)
MapDeviceRegisters(pcmsock.cpp)
m_dwSocketIndex=2
CreatePCMCIASocket(pcmsock.cpp)
pNewSocket->CardInitWindow( pNewSocket )
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
GetPowerEntry(pdsocket.cpp)
status = 0
EnablerClienCallBack(mdd/pccarden.cpp)
CreatePCCardEnabler(mdd/pccarden.cpp)
CreatePcmciaEnabler
Init(mdd/pccarden.cpp)
EnablerClienCallBack(mdd/pccarden.cpp)
Init(mdd/aysacc.cpp)
EnablerClienCallBack(mdd/pccarden.cpp)
CardResetSocket(pcmsock.cpp)
XllpPCCardPowerOff=0
OEMIoControl: Unsupported Code 0x10100fc - device 0x0101 func 63
Lyg.p: Layout Manager successfully initialized to 1
SocketEventHandle(pcmsock.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
EnablerClienCallBack(mdd/pccarden.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: 1c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardSetSocket(pcmsock.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardSetSocket(pcmsock.cpp)
CreateDeviceID(mdd/pccarden.cpp)
FindTuple(mdd/pccarden.cpp)
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetTupleData(mdd/pccarden.cpp)
CardGetTupleData(mdd/pctuple.cpp)
Manufacturer = CF+_LPE
Product Name = Socket_Communications_Inc
GetTupleData(mdd/pccarden.cpp)
CardGetTupleData(mdd/pctuple.cpp)
FindTuple(mdd/pccarden.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetTupleData(mdd/pccarden.cpp)
CardGetTupleData(mdd/pctuple.cpp)
FindTuple(mdd/pccarden.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetTupleData(mdd/pccarden.cpp)
Explorer(V2.0) taskbar thread started.
CardGetTupleData(mdd/pctuple.cpp)
FindTuple(mdd/pccarden.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetTupleData(mdd/pccarden.cpp)
CardGetTupleData(mdd/pctuple.cpp)
FindTuple(mdd/pccarden.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetCardCRC: CardGetNextTuple returned fails
GetCardCRC: CRC = 46c2
FindTuple(mdd/pccarden.cpp)
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetTupleData(mdd/pccarden.cpp)
DllEntry(pcmcia/Init.cpp)
+PCMCIA::Init(pcmcia/Init.cpp)
+PCMCIA::Init(pcmcia/pcmcia.cpp)
Init(mdd/aysacc.cpp)
PCMCIA:GetRegistryConfig: GetSocket ID sock= 1, func=0
CardRegisterClient(mdd/pcclient.cpp)
EnablerClienCallBack(mdd/pccarden.cpp)
-PCMCIA::Init return . with success
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
******DllEntry******
NE2000: DLL_PROCESS_ATTACH
*********DetectNE2000************
pfnGetParsedTuple=3a8209c
pfnMapWindow=3a82244
pfnRegisterClient =3a8339c
pfnDeregisterClient =3a8345c
pfnRequestConfig=3a823c4
pfnReleaseConfig=3a8242c
pfnRequestWindow =3a82120
pfnReleaseWindow =3a821c4
pfnResetFunction =3a825d4
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
************PcmciaCallBack*************
-PcmciaCallBack
NE2000: DetectNE2000: Trying Config index 0x20, range 0x300 31
inputvoltage=50************StandardVoltage*************
Voltage = 50
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardSetSocket(pcmsock.cpp)
m_pMemCtrlRegs->mecr(pcmsock.cpp)
NE2000
******DllEntry******
NE2000: DLL_PROCESS_DETACH
******DllEntry******
NE2000: DLL_PROCESS_ATTACH
**********NE2000:DriverEntry*********
-NE2000:DriverEntry: Success
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
*********Ne2000Initialize***************
###NE2000=1
NE2000: Assigned InterruptNumber is 3
NE2000: Assigned Port is 768 Len 0
NE2000:Registering adapter # buffers 12
NE2000:Bus type: 8
NE2000:I/O base addr 0x300
NE2000:interrupt number 3
************Ne2000RegisterAdapter*************
CardGetFirstTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
CardGetNextTuple(mdd/pctuple.cpp)
GetDesiredTupe(mdd/pctuple.cpp)
CardGetTupleData(mdd/pctuple.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardSetSocket(pcmsock.cpp)
m_pMemCtrlRegs->mecr(pcmsock.cpp)
NE2000:RegisterAdapter calling CardInitialize
************CardInitialize*************
NE2000:CardInitialize calling CardSlotTest
************CardSlotTest*************
NE2000:CardSlotTest - Resetting the chip
NE2000:CardSlotTest - Checking slot type
NE2000:CardSlotTest - 16 bit slot
NE2000:RegisterAdapter CardInitialize -- Success
NE2000:RegisterAdapter Xmit Start (0x4000, 0x40) : Rcv Start (0x4c00, 0x4c)
: Rcv End (0x8000, 0x80)
************CardReadEthernetAddress*************
NE2000: PermanentAddress [ 00-c0-1b-00-9d-2b ]
NE2000:RegisterAdapter CardSetup
************CardSetup*************
Adapter->PacketFilter=0
NE2000:RegisterAdapter CardSetup -- Success
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardSetSocket(pcmsock.cpp)
m_pMemCtrlRegs->mecr(pcmsock.cpp)
NE2000:RegisterAdapter Interrupt Connected
NE2000:RegisterAdapter OK
NE2000:Initialize succeeded
************Ne2000QueryInformation*************
######NDIS_OID=10116
************Ne2000QueryInformation*************
######NDIS_OID=10105
************Ne2000QueryInformation*************
######NDIS_OID=10113
************Ne2000QueryInformation*************
######NDIS_OID=1010104
************Ne2000QueryInformation*************
######NDIS_OID=1010102
************Ne2000QueryInformation*************
######NDIS_OID=10202
************Ne2000QueryInformation*************
######NDIS_OID=fd010100
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
CardSetSocket(pcmsock.cpp)
m_pMemCtrlRegs->mecr(pcmsock.cpp)
************Ne2000QueryInformation*************
######NDIS_OID=1010102
************Ne2000QueryInformation*************
######NDIS_OID=10106
************Ne2000QueryInformation*************
######NDIS_OID=10107
************Ne2000QueryInformation*************
######NDIS_OID=10113
************Ne2000QueryInformation*************
######NDIS_OID=10201
************Ne2000QueryInformation*************
######NDIS_OID=fc010201
************Ne2000QueryInformation*************
######NDIS_OID=fd010100
************Ne2000SetInformation*************
##Oid=default
##StatusToReturn=c0010017
************Ne2000SetInformation*************
##Oid=OID_GEN_CURRENT_LOOKAHEAD
##StatusToReturn=0
************Ne2000SetInformation*************
##Oid=OID_GEN_CURRENT_PACKET_FILTER
************DispatchSetPacketFilter*************
************DispatchSetMulticastAddressList*************
************CardComputeCrc*************
************CardComputeCrc*************
************CardComputeCrc*************
************CardComputeCrc*************
##StatusToReturn=0
************Ne2000QueryInformation*************
######NDIS_OID=10114
************Ne2000QueryInformation*************
######NDIS_OID=10114
************Ne2000QueryInformation*************
######NDIS_OID=10202
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************CardCopyDownPacket*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
CardWaitForDMAComplete=1
Ne2000Log('4')
Ne2000Log('9')
Ne2000Log('S')
************Ne2000QueryInformation*************
######NDIS_OID=10107
ThreadRun-1
ThreadRun-5
SocketEventHandle(pcmsock.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: 80
-CPcmciaCardSocket::GetSocket(): dwEventStatus: 80
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************CardCopyDownPacket*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
CardWaitForDMAComplete=1
Ne2000Log('S')
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************Ne2000Reset*************
************CardStop*************
************CardSetup*************
Adapter->PacketFilter=11
************Ne2000QueryInformation*************
######NDIS_OID=10114
ThreadRun-1
ThreadRun-5
SocketEventHandle(pcmsock.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: c0
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************CardCopyDownPacket*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
CardWaitForDMAComplete=1
Ne2000Log('4')
Ne2000Log('9')
Ne2000Log('S')
SocketEventHandle(pcmsock.cpp)
CardGetSocket(pcmsock.cpp)
-CPcmciaCardSocket::GetSocket(): dwEventMask: 180 dwEventChanged: c0
-CPcmciaCardSocket::GetSocket(): dwEventStatus: 80
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************CardCopyDownPacket*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
CardWaitForDMAComplete=1
Ne2000Log('S')
************Ne2000SetInformation*************
##Oid=default
##StatusToReturn=c0010017
************Ne2000SetInformation*************
##Oid=default
##StatusToReturn=c0010017
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************CardCopyDownPacket*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
CardWaitForDMAComplete=1
************CardCopyDown*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
Ne2000Log('S')
************Ne2000SetInformation*************
##Oid=OID_802_3_MULTICAST_LIST
************DispatchSetMulticastAddressList*************
************CardComputeCrc*************
************CardComputeCrc*************
##StatusToReturn=0
************Ne2000QueryInformation*************
######NDIS_OID=10107
@@@@@@Ne2000Send@@@@@@
@@@@@@Ne2000DoNextSend@@@@@@
************CardCopyDownPacket*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
CardWaitForDMAComplete=1
************CardCopyDown*************
************Ne2000RawWritePortBufferUshort*************
######IoPort=350310
Ne2000Log('S')
- Next message: vijayaraju.k_at_gmail.com: "Re: Windows CE 4.2 Evaluation CDs"
- Previous message: StuartG: "Creating WinCE images"
- In reply to: Paul G. Tobey [eMVP]: "Re: Puzzle in Ethernet Card."
- Messages sorted by: [ date ] [ thread ]