This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: serial line ISR problem -- again:(


On Tue, Sep 09, 2003 at 02:01:24PM +0100, Robert Cragie wrote:
> 1) I don't see how you are 'living without any DSR' based on your posted
> code.

I just posted one from my 200 versions, which doesn't work:)

> 2) You're signalling a semaphore in the DSR to kick the thread to print 'c',
> so this won't work unless you do as Eric suggests.

I was trying without semaphore too.

> 3) Why are you reading 8 times into 'ier' (you will end up with the scratch
> register in 'ier')? To clear the pending modem interrupt, you only need to
> read the modem status register (base + 6).

Because I was trying, and reading (base + 6) doesn't work.
That's not the problem -- if it was, I would get my ISR to work only
once, but it doesn't run at all.

> 4) You should be looking at IIR to determine if there is a pending
> interrupt. Try something like the following for isr() and dsr():

But I would have to do it in ISR, which I can't make to work.

-- 
Piotr Trojanek

-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]