public inbox for sid@sourceware.org
 help / color / mirror / Atom feed
From: "Robert Cragie" <rcc@jennic.com>
To: "Partha Palit" <chessrook2001@yahoo.com>
Cc: "ECOS" <ecos-discuss@sources.redhat.com>, "SID" <sid@sources.redhat.com>
Subject: RE: [ECOS] generating interrupts in ARM-PID (SID simulator)
Date: Wed, 02 Jul 2003 10:10:00 -0000	[thread overview]
Message-ID: <NMEDLDELHPEFHOMFIJBHKENECMAA.rcc@jennic.com> (raw)
In-Reply-To: <20030701205014.61802.qmail@web12908.mail.yahoo.com>

> As recommened by Robert, I tried using the interrupt
> 11.It seemed to work, but it showed up as spurious
> interrupt which is not handled by the ARM Hal. I guess
> this is becuase ARM recognizes level triggered
> interrupts as pointed out by Robert.

A spurious interrupt is simply one which is not handled by the software
interrupt handling mechanism. It is nothing to do with level or
edge-triggered interrupts. All processors essentially work on
level-triggered interrupts. An edge-triggered interrupt is where an edge is
simply latched to assert a level, and then cleared in a defined way to
negate a level, usually by writing to some register.

So if you are getting a spurious interrupt, you are at least seeing the
interrupt, which is progress. Put a breakpoint on hal_IRQ_handler and see
what it's doing. I would guess you are not installing the interrupt handler
properly or the numbers are not corresponding or something - did you try the
sample source code I included?

You could also look at the Interrupt Controller registers on the PID
simulator to give you a clue as to what's going on, e.g. reading IRQStatus
will tell you active interrupts (i.e. where there is an interrupt and it is
also enabled) and reading IRQRawStatus will tell you actual interrupts (i.e.
where there is an interrupt even if it is disabled) (note I am assuming the
SID model matches this exactly):

Address    Read         Write

0x0A000000 IRQStatus    Reserved
0x0A000004 IRQRawStatus Reserved
0x0A000008 IRQEnable    IRQEnableSet
0x0A00000C Reserved     IRQEnableClear

0x0A000010 Reserved     IRQSoft(Programmed IRQ Interrupt)

0x0A000100 FIQStatus    Reserved
0x0A000104 FIQRawStatus Reserved
0x0A000108 FIQEnable    FIQEnableSet
0x0A00010C Reserved     FIQEnableClear

0x0A000110 Reserved     Reserved

0x0A000114 FIQSource    FIQSource

Note that these will normally be manipulated by the HAL when interrupts are
enabled/disabled/handled etc. and should not be tampered with unless you are
specifically trying to debug something.

> -->Q: Could anyone kindly tell how to generate pulses
> of definite time period using sid-sched? I guess a
> timer can be used, but in the SID configuration file I
> see that the timers have inputs from the cpu itself.
> Is there anything simpler?

Over to Frank and the SID guys, where you seem to have got a comprehensive
answer.

Robert Cragie, Design Engineer
_______________________________________________________________
Jennic Ltd, Furnival Street, Sheffield, S1 4QT,  UK
http://www.jennic.com  Tel: +44 (0) 114 281 2655
_______________________________________________________________


      parent reply	other threads:[~2003-07-02 10:10 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20030627094625.GN341@biferten.ma.tech.ascom.ch>
2003-06-27 13:40 ` Robert Cragie
2003-07-01 20:50   ` Partha Palit
2003-07-01 23:53     ` Frank Ch. Eigler
2003-07-02 10:10     ` Robert Cragie [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=NMEDLDELHPEFHOMFIJBHKENECMAA.rcc@jennic.com \
    --to=rcc@jennic.com \
    --cc=chessrook2001@yahoo.com \
    --cc=ecos-discuss@sources.redhat.com \
    --cc=sid@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).