Re: Synchronization between ISR and IST - I2C Based device
- From: "Remi de Gravelaine" <gravelaine at aton dash sys dot fr>
- Date: Sun, 24 Dec 2006 19:53:54 +0100
The problem in this (the OP) case is that the code to determine which
shared device caused the interrupt needs to use a shared bus (the SMBus)
to get to the interrupt source to read information about which of 2
channels caused the interrupt. Since this is a kind of serial bus with
various states also used by the upper level drivers there is no way to
deal with the ISR trying to access the bus without screwing up the state
of the bus on the drivers. It MUST be done in an IST
Agreed.
and in this case that MUST be a single instance driver for the dual
channel device.
No. That is what I am trying to point. It is possible and not very difficult
to have a driver instance for each device, provided the driver is prepared
to this situation.
Also keep in mind that while the OP uses the term UART it was specified as
an I2C bus controller and NOT an actual RS232 style UART as we normally
think of such a thing.
Thank you. I read the whole thread before posting and I know what is I2C.
In the scenario you describe it's actually possible to support what you
define with a properly written PDD and the existing MSD MDD unmodified
using shared interrupts and in installable ISR. As the ISR CAN make the
determination of which actual device caused the interrupt without concern
for altering the state of the device or the bus. Ultimately it's the bus
that is at the heart of the problem described by the OP.
Agreed. However, this is not the choice I did at the time I had to make it:
I wanted the user to change as minimum things as possible in it's Serial
configuration an keep the external view as standard (from a CEPC point of
view) as possible. Another thing I wanted to avoid was to poll my 12 UARTs
in an ISR.
Remi
.
- Follow-Ups:
- Re: Synchronization between ISR and IST - I2C Based device
- From: Steve Maillet \(eMVP\)
- Re: Synchronization between ISR and IST - I2C Based device
- References:
- Synchronization between ISR and IST - I2C Based device
- From: Mams
- Re: Synchronization between ISR and IST - I2C Based device
- From: Geoff
- Re: Synchronization between ISR and IST - I2C Based device
- From: Srivathsan
- Re: Synchronization between ISR and IST - I2C Based device
- From: Steve Maillet \(eMVP\)
- Re: Synchronization between ISR and IST - I2C Based device
- From: Srivathsan
- Re: Synchronization between ISR and IST - I2C Based device
- From: Steve Maillet \(eMVP\)
- Re: Synchronization between ISR and IST - I2C Based device
- From: Remi de Gravelaine
- Re: Synchronization between ISR and IST - I2C Based device
- From: Steve Maillet \(eMVP\)
- Synchronization between ISR and IST - I2C Based device
- Prev by Date: Re: Can you recommend a Windows embedded trade show / conference / exhibition?
- Next by Date: Re: Synchronization between ISR and IST - I2C Based device
- Previous by thread: Re: Synchronization between ISR and IST - I2C Based device
- Next by thread: Re: Synchronization between ISR and IST - I2C Based device
- Index(es):
Relevant Pages
|