You don’t. The ACPI hal will ignore whatever you try to do in the bios. But
that suggestion was all wrong anyhow. Your PCI device absolutely MUST be
able to share interrupts. You need to figure out what you are doing wrong,
either in your driver or perhaps on your hardware, rather than looking for
hack work arounds.
-----Original Message-----
From: M V [mailto:xxxxx@yahoo.com]
Sent: Wednesday, June 13, 2001 8:25 AM
To: NT Developers Interest List
Subject: [ntdev] RE: ISR gets called although device does not interrupt
My machine has ACPI installed on it, which I think is responsible for
interrupt sharing by PCI devices. When I call IoCOnnectInterrupt(), for the
ShareVector parameter, I just use the parameter
pPartialDescriptor->ShareDisposition, which is given
by the
PnPManager. How do I reserve an interrupt for myself
in the BIOS setting ?
Thanks
Madhu
— xxxxx@att.net wrote:
If you suspect that it’s PCI interrupt sharing, you
can
make your driver to use one interrupt that it’s not
used
by other PCI devices in your system and reserve thatInterrupt in BIOS settings and then when ur driver
comes
up it would be having exclusive access to that
Interrupt.
Otherway of achieveing this, not to share the
interrupt at all. Just check out the API that u use
to
register your ISR and rest with OS. But in principle
PCI
should be able to share interrupts with other PCI
peripherals.
Please let us know about these.
- What type of device is this?
- R u checking status register directly in your ISR
or
in a DPC?thanks
–
Girish H.
> Madhu,
>
> If this hang is narrowed down such that it only
appears exactly on the read
> of the status port, I’d recommend going to the
hardware folks or looking at
> what’s on the PCI bus with a logic analyzer.
Sounds like hardware/firmware
> to me given that information.
>
> -Tim
>
>
> Timothy A. Johns — xxxxx@driverdev.com
> Driver Development Corporation — 800.841.0092
> Bring Up Your Hardware — Fast. www.driverdev.com
>
>
> > -----Original Message-----
> > From: xxxxx@lists.osr.com
> > [mailto:xxxxx@lists.osr.com]On
Behalf Of M V
> > Sent: Tuesday, June 12, 2001 10:01 AM
> > To: NT Developers Interest List
> > Subject: [ntdev] RE: ISR gets called although
device does not interrupt
> >
> >
> > Hi Tim.
> >
> > My device is accessing an interrupt that seems
to be
> > shared by all PCI devices including a network
adapter.
> >
> > 1. When I boot the system, my ISR gets a lot of interrupts from
> > other devices as well, probably because it may be among the the
> > first ISRs
available
> > in that interrupt vector chain. When my device (
a
> > FIFO card which sends an interrupt every time it
is
> > half full) starts sending interrupts, in between
these
> > interrupts I get interrupts from other devices
as
> > well. After some time, the machine just freezes
> > although the device still is interrupting. It
freezes
> > at the point where I am trying to read a status
> > register of the device to determine whether it
is my
> > interrupt or not.
> >
> > 2. When I install the driver and then send
interrupts
> > from the device( without rebooting), my ISR gets
only
> > the interrupts that are meant for my device and
> > nothing else. Probably this is because my ISR is
the
> > last in the interrupt vector chain for that
particular
> > interrupt. In this case everything works fine.
> >
> > Is there any way to make sure that my ISR is the
last
> > ISR available in that interrupt vector chain ?
Or is
> > there any way to make sure that I use an
interrupt
> > which is not shared by other devices ?
> >
> > Thanks for all help
> >
> > Madhu
> > — “Timothy A. Johns”
> wrote:
> > > > Madhu,
> > > >
> > > > That ‘hang’ sounds like an unhandled PCI
> interrupt.
> > > > Is your ISR being
> > > > called repeatedly while this hang is occuring,
> and
> > > > if so, can you verify
> > > > 100% (using a logic analyzer or oscilliscope,
> if
> > > > you’re going to have to
> > > > take your evidence to the proverbial hardware
> > > > person) that your device is
> > > > not asserting the interrupt?
> > > >
> > > > Also, it could be a PCI bus access problem, or
> > > > either a master or target
> > > > abort. It’s also possible that it may be that
> your
> > > > driver is getting an
> > > > interrupt that a different device is already
> using,
> > > > and the ‘other’ device
> > > > is not sharing it properly, but I’d view that
> as a
> > > > last resort, since the
> > > > driver you added is new and changing the
> behavior.
> > > > You can move it to a
> > > > different slot and if the problem goes away or
> > > > changes, the problem is very
> > > > likely in either your driver’s ISR or some
> other
> > > > device’s ISR.
> > > >
> > > > In any case, the registry entries for Start
> and
> > > > LoadOrderGroup that you have
> > > > below are almost certainly correct for a PnP
> driver.
> > > >
> > > > -Tim
> > > >
> > > > Timothy A. Johns — xxxxx@driverdev.com
> > > > Driver Development Corporation —
> 800.841.0092
> > > > Bring Up Your Hardware — Fast.
> www.driverdev.com
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: xxxxx@lists.osr.com
> > > > > [mailto:xxxxx@lists.osr.com]On
> Behalf
> > > > Of M V
> > > > > Sent: Tuesday, June 12, 2001 5:50 AM
> > > > > To: NT Developers Interest List
> > > > > Subject: [ntdev] ISR gets called although
> device
> > > > does not interrupt
> > > > >
> > > > >
> > > > > In continuation with the last message, my
> ISR is
> > > > > working fine now. But I am facing a strange
> > > > problem. I
> > > > > install the WDM (without booting after installation)and send
> > > > > data to my FIFO device
> so
> > > > that
> > > > > it interrupts. I receive all the interrupts
> and
> > > > read
> > > > > all data. Everything is fine. But if I boot
> my
> > > > machine
> > > > > anytime after installation and then send
> data to
> > > > the
> > > > > device so that it interrupts, I receive some interrupts and
> > > > > after that the machine hangs.
> Why
> > > > would
> > > > > this be happening ? Is there any problem in
> my
> > > > > installation ? I have decared my service to
> be of
> > > > > SERVICE_DEMAND_START and have not specified
> > > > anything
> > > > > in the LoadOrderGroup.Can this be a problem
> ?
> > > > >
> > > > > Thanks for all help
> > > > > Madhu
> > > > >
>
=== message truncated ===
__________________________________________________
Do You Yahoo!?
Get personalized email addresses from Yahoo! Mail - only $35
a year! http://personal.mail.yahoo.com/
—
You are currently subscribed to ntdev as: xxxxx@stratus.com To
unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com
—
You are currently subscribed to ntdev as: $subst(‘Recip.EmailAddr’)
To unsubscribe send a blank email to leave-ntdev-$subst(‘Recip.MemberIDChar’)@lists.osr.com