Re: WinCE 5.0 pcmcia public code bug?
- From: Zhijie <Zhijie@xxxxxxxxxxxxxxxxxxxxxxxxx>
- Date: Wed, 8 Jun 2005 18:11:03 -0700
Thanks for the reply. I'm fully aware that when CF card is plugged in, it's
started in memory mode and that is the Card Ready/Busy line. When it goes to
I/O mode, that same line become Interrupt Request line. I'd be more than
happy to describe to you in more detail but, I'd feel more comfortable if we
can take this offline. Kindly drop me an email at zhi4jie2@xxxxxxxxxx I will
furnish more details.
"David Liao (MS)" wrote:
> So. Let me to understand what you concern.
>
> For shared interrupt we have to do this, right?
>
> For embeded device (which the irq is only used for PCCard), If the IRQ fire
> by accident after remove, I suppose system ISR is call and signal the event
> and Interrupt Mask Off again.
> Although I think the cutting off the client IRQ line is require by PC Card
> Specification, It do think there is any problem with this implementation.
>
> If any one have suggestion how I can check this Client IRQ is last one on
> the line in system, I will be really glad.
>
> I don't think your CF card example is correct. Any card is inserted into
> system is memory card only. This line should serve as CARD READY ( not
> interrupt). If this line is connected to system IRQ line, It could cause
> system generate interrupt. But, even that, I don't think it won't cause any
> problem because there is no IST for this card before any one call
> RequestIRQ.
>
> So for shared interrupt system, The (READY/nIRQ) has to be implemented
> correctly.
>
> I just couldn't imaging how it can break you in this case.
>
> Can you tell me what exactly break?
>
> "Zhijie" <Zhijie@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote in message
> news:95AB2DAB-F30C-4957-A90A-AAEAA28E4662@xxxxxxxxxxxxxxxx
> > Hi David,
> >> You worry too much.
> > Not really. The current implementation of PCMCIA code is giving me
> > problem :)
> > I can't afford to spend a lot of time digging into WinCE public codes
> > unless
> > I have to. (to understand the cause of problem I encountered).
> >
> >> So, the interrupt line is cutting off from external, even we enable the
> >> interrupt, I don't think it will generate any interrupt to the system.
> > As what Steve has replied in the mail below, this assumption is not
> > always valid. Let me give you a very simplified scenario. Take CF memory
> > card
> > (using ATADISK driver) for example. Imagine that after you've pulled out
> > the
> > CF card, the interrupt is still enable. Now reinsert the CF card. Spurious
> > interrupt might be generated. But with the interrupt being enabled.
> > Interrupt
> > handler in OAL will first process this. But the ATADISK driver has not
> > been
> > unloaded yet since the card is pulled out. (The actual situation in our
> > hardware/system is more complicated. I'm just giving a very simplified
> > example just to illustrate the issue). Consider that scenario if the
> > interrupt is disable when the card is ejected. Even spurious interrupt
> > comes
> > in, it doesn't matter. Interrupt will be enable when the driver is loaded
> > and
> > ready to process any interrupts. Spurious interrupt also can be cleared.
> > Hope
> > you get a better picture now.
> >
> > Besides, the way that this is implemented (enable interrupt after card
> > disabled/removed) is also not consistent with WinCE driver model. I can't
> > recall any other drivers did it that way. Further, it's not clearly
> > documented in the source code why is it being done that way. IMHO, I
> > believe
> > something need to be done on this.
> > Anyway, I've already modified the public code (ie, reverse the order to
> > the
> > two function call) and this works fine on our system. I could have other
> > workaround in OAL interrupt handling code but that will make OAL's code
> > messy. I prefer to have cleaner solution and thus ask the question here.
> > Hopefully there is some QFE to address this if this is a real issue.
> >
> > Regards,
> > Zhijie
> >
> >
> >
> >
> >
>
>
>
.
- Follow-Ups:
- Re: WinCE 5.0 pcmcia public code bug?
- From: Steve Maillet \(eMVP\)
- Re: WinCE 5.0 pcmcia public code bug?
- References:
- WinCE 5.0 pcmcia public code bug?
- From: Zhijie
- Re: WinCE 5.0 pcmcia public code bug?
- From: David Liao \(MS\)
- Re: WinCE 5.0 pcmcia public code bug?
- From: Zhijie
- Re: WinCE 5.0 pcmcia public code bug?
- From: David Liao \(MS\)
- Re: WinCE 5.0 pcmcia public code bug?
- From: Zhijie
- Re: WinCE 5.0 pcmcia public code bug?
- From: David Liao \(MS\)
- WinCE 5.0 pcmcia public code bug?
- Prev by Date: Re: OS DesignView problem
- Next by Date: Re: Platform Manager API and build directories
- Previous by thread: Re: WinCE 5.0 pcmcia public code bug?
- Next by thread: Re: WinCE 5.0 pcmcia public code bug?
- Index(es):
Relevant Pages
|