comp.lang.ada
 help / color / mirror / Atom feed
  • * Re: Interrupt Handler Problems
           [not found] <1999Jul7.160434.10447@nosc.mil>
           [not found] ` <7m1787$9k$1@nnrp1.deja.com>
    @ 1999-07-08  0:00 ` Ted Dennison
      1999-07-09  0:00   ` Charles H. Sampson
      1999-07-08  0:00 ` Robert Dewar
                       ` (3 subsequent siblings)
      5 siblings, 1 reply; 10+ messages in thread
    From: Ted Dennison @ 1999-07-08  0:00 UTC (permalink / raw)
    
    
    In article <1999Jul7.160434.10447@nosc.mil>,
      claveman@cod.nosc.mil (Charles H. Sampson) wrote:
    >      I'm working on a project that uses a Motorola MVME2700 board
    > (PowerPC CPU), VxWorks, the Green Hills Ada 95 compiler, and a lot of
    > military boards in the rack (NTDS cards, GPS interfaces, etc.).  This
    is
    > a porting effort, of Ada 83 code that is currently using a different
    CPU
    > and a different operating system.
    >
    >      We're having a terrible time getting our code running in the new
    > environment.  The killer problem of the moment is interrupt handlers.
    > (We have a lot of them.)  Our handlers have been modified into
    protected
    > procedures, as required by Green Hills, but they don't seem to be
    seeing
    > the interrupts.  Green Hills assures us that interrupts are enabled
    when
    > the main program begins executing.  However, when we enable them our-
    > selves in a little test program, its interrupt handler begins working.
    > When we enable them in our "real" code, VxWorks blows up with a
    > workQPanic.  The three vendors are now in a finger-pointing contest
    (the
    > Navy term is ruder), each claiming that it's not their fault, it must
    be
    > caused by one of the others.
    >
    >      This is clearly not a general Ada issue; discussing it in this
    fo-
    > rum appears inappropriate.  If there's anybody who has worked with the
    > same or a similar environment and would be willing to exchange email
    on
    > lessons learned and suggestions, I'd be happy to hear from them.
    Please
    > note that my email address in this post has been anti-spammed.
    >
    > 			    Charlie
    > --
    > ******
    >
    >      For an email response, my user name is "sampson" and my host
    > is "spawar.navy.mil".
    >
    
    (crosspoted to comp.os.vxworks since it is relevant there too)
    
    Well, my suggestions would be to try to get one simple Ada interrupt
    handler working. Then try to get a simple C interrupt handler for your
    device working. Then try to get an Ada interrupt handler for your device
    working.
    
    I gather that you have done at least some of that. Right?
    
    --
    T.E.D.
    
    
    Sent via Deja.com http://www.deja.com/
    Share what you know. Learn what you don't.
    
    
    
    
    ^ permalink raw reply	[flat|nested] 10+ messages in thread
  • * Re: Interrupt Handler Problems
           [not found] <1999Jul7.160434.10447@nosc.mil>
           [not found] ` <7m1787$9k$1@nnrp1.deja.com>
      1999-07-08  0:00 ` Ted Dennison
    @ 1999-07-08  0:00 ` Robert Dewar
      1999-07-08  0:00 ` Marin David Condic
                       ` (2 subsequent siblings)
      5 siblings, 0 replies; 10+ messages in thread
    From: Robert Dewar @ 1999-07-08  0:00 UTC (permalink / raw)
    
    
    In article <1999Jul7.160434.10447@nosc.mil>,
      claveman@cod.nosc.mil (Charles H. Sampson) wrote:
    >      We're having a terrible time getting our code running in
    the new
    > environment.  The killer problem of the moment is interrupt
    handlers.
    > (We have a lot of them.)  Our handlers have been modified into
    protected
    > procedures, as required by Green Hills
    
    
    Why not use a technology that provides compatible handling
    of interrupts, avoiding the need for these modifications?
    
    
    Sent via Deja.com http://www.deja.com/
    Share what you know. Learn what you don't.
    
    
    
    
    ^ permalink raw reply	[flat|nested] 10+ messages in thread
  • * Re: Interrupt Handler Problems
           [not found] <1999Jul7.160434.10447@nosc.mil>
                       ` (2 preceding siblings ...)
      1999-07-08  0:00 ` Robert Dewar
    @ 1999-07-08  0:00 ` Marin David Condic
      1999-07-09  0:00   ` Charles H. Sampson
           [not found] ` <7m177r$9e$1@nnrp1.deja.com>
      1999-07-09  0:00 ` Charles H. Sampson
      5 siblings, 1 reply; 10+ messages in thread
    From: Marin David Condic @ 1999-07-08  0:00 UTC (permalink / raw)
    
    
    Charles H. Sampson wrote:
    > 
    >      We're having a terrible time getting our code running in the new
    > environment.  The killer problem of the moment is interrupt handlers.
    > (We have a lot of them.)  Our handlers have been modified into protected
    > procedures, as required by Green Hills, but they don't seem to be seeing
    > the interrupts.  Green Hills assures us that interrupts are enabled when
    > the main program begins executing.  However, when we enable them our-
    > selves in a little test program, its interrupt handler begins working.
    > When we enable them in our "real" code, VxWorks blows up with a
    > workQPanic.  The three vendors are now in a finger-pointing contest (the
    > Navy term is ruder), each claiming that it's not their fault, it must be
    > caused by one of the others.
    > 
    
    I've had similar problems with connecting to interrupts with other
    compilers. Here's a couple of things to check: The interrupt handling
    routines are generally considered to be a kind of "task", if you will,
    in that compilers often create some sort of memory heap for them. If you
    have a lot of handlers and the memory reserved for each is by default
    large, you can blow the available memory and be standing there doing
    nothing with an unhandled exception. This could be why your little test
    program works fine, but the same thing scaled up to the "real" system
    won't run.
    
    Also, it would help to know exactly how the RTK connects your ISRs to
    the interrupts. Do you get a "hard" connection where the address of your
    ISR is directly placed in the interrupt service vector? Or does the RTK
    step into the middle of it so that first the RTK is called, then
    (eventually) your ISR? The former is easier to deal with usually because
    you don't have to guess about what might be going on between the
    interrupt and you.
    
    Can you post a sample of the code that demonstrates how the ISR is coded
    & how you are connecting to the interrupts?
    
    MDC
    -- 
    Marin David Condic
    Real Time & Embedded Systems, Propulsion Systems Analysis
    United Technologies, Pratt & Whitney, Large Military Engines
    M/S 731-95, P.O.B. 109600, West Palm Beach, FL, 33410-9600
    ***To reply, remove "bogon" from the domain name.***
    
    Visit my web page at: http://www.mcondic.com/
    
    
    
    
    ^ permalink raw reply	[flat|nested] 10+ messages in thread
  • [parent not found: <7m177r$9e$1@nnrp1.deja.com>]
  • * Re: Interrupt Handler Problems
           [not found] <1999Jul7.160434.10447@nosc.mil>
                       ` (4 preceding siblings ...)
           [not found] ` <7m177r$9e$1@nnrp1.deja.com>
    @ 1999-07-09  0:00 ` Charles H. Sampson
      1999-08-19  0:00   ` Charles H. Sampson
      5 siblings, 1 reply; 10+ messages in thread
    From: Charles H. Sampson @ 1999-07-09  0:00 UTC (permalink / raw)
    
    
         A private email response appears to have solved the problem.  It's 
    very specific to our environment but, since my query has generated a bit 
    of public interest, I'll post the solution if it holds up after some
    more testing.
    
    				Charlie
    --
    ******
    
         For an email response, my user name is "sampson" and my host
    is "spawar.navy.mil".
    
    
    
    
    ^ permalink raw reply	[flat|nested] 10+ messages in thread

  • end of thread, other threads:[~1999-08-19  0:00 UTC | newest]
    
    Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
    -- links below jump to the message on this page --
         [not found] <1999Jul7.160434.10447@nosc.mil>
         [not found] ` <7m1787$9k$1@nnrp1.deja.com>
    1999-07-08  0:00   ` Interrupt Handler Problems John Duncan
    1999-07-08  0:00 ` Ted Dennison
    1999-07-09  0:00   ` Charles H. Sampson
    1999-07-12  0:00     ` Ted Dennison
    1999-07-08  0:00 ` Robert Dewar
    1999-07-08  0:00 ` Marin David Condic
    1999-07-09  0:00   ` Charles H. Sampson
         [not found] ` <7m177r$9e$1@nnrp1.deja.com>
    1999-07-09  0:00   ` Charles H. Sampson
    1999-07-09  0:00 ` Charles H. Sampson
    1999-08-19  0:00   ` Charles H. Sampson
    

    This is a public inbox, see mirroring instructions
    for how to clone and mirror all data and code used for this inbox