Re: CF / PCMCIA interrupt mechanism
- From: "David Liao \(MS\)" <davli@xxxxxxxxxxxxxxxxxxxx>
- Date: Tue, 14 Nov 2006 10:56:48 -0800
The Card Interrupt is different Card Detect(PCMCIA Bridge) interrupt. The
Card Interrupt is only be used by PCMCIA client Driver directly.
However, the interrupt could be shared. Some hardware use same interrupt for
PC Card Bridge and PC Card Client Interrupt.
The PC Card Client Interrupt is mapped by PC Card Socket Driver to the
hardware When pcc_serv calls Socket driver PDCardSetSocket function.
For the new PC Card Model, the Client Card Interrupt information is passed
to Client Driver through Device Driver Registry value "SysIntr".
For the Legacy Driver, the pcc_pcm.dll is loaded. the Legacy PCMCIA driver
use the PC Card Service exposed by pcc_pcm.dll(renamed to pcmcia.dll for
compatibility). CardRequestIRQ is used to pass IST callback to the
pcc_pcm.dll stack. When Client Card Interrupt occurs, the pcc_pcm.dll IST
will call the IST callback function that provided by PCMCIA Client Driver
via CardRequestIRQ.
David Liao
"newsposter" <nposter@xxxxxxxxx> wrote in message
news:1163499395.045610.294170@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
I am working on a CE 5.0 build for custom hardware. The CPU includes a
PCMCIA / CF controller which we have got basically working (CF memory
cards work OK). However, I want to use a Network card now and we are
coming up against the problem of interrupts from the CF card, which are
not working.
I don't understand at the moment how they are supposed to work though!
There is only one PCMCIA interrupt in the system, which is also used to
indicate things like card detect change etc. So the PCMCIA controller
code needs to handle this interrupt, and do something if it is the card
that caused the interrupt. What I want to know is:
1) How does the hardware-specific PCMCIA controller code pass the fact
that an interrupt has occurred further up the stack? This must go back
up into the general PCMCIA/CF code then back down into the client
driver but I don't understand how this is supposed to work.
2) We have the further abstraction that the client driver is NDIS and
so is registering for the interrupt through NdisMRegisterInterrupt but
I guess this doesn't change anything.
Thanks,
Matt
.
- References:
- CF / PCMCIA interrupt mechanism
- From: newsposter
- CF / PCMCIA interrupt mechanism
- Prev by Date: How to get romfilter working on WinCE 6
- Next by Date: Re: Invalid Handle in SDGetDeviceHandle
- Previous by thread: CF / PCMCIA interrupt mechanism
- Next by thread: PB5, SDKs and Visual Studio 2005.
- Index(es):
Relevant Pages
|