[ECOS] interrupt handling -- basic problem?

Piotr Trojanek ptroja@elproma.com.pl
Tue Aug 26 12:39:00 GMT 2003


On Tue, Aug 26, 2003 at 06:14:39AM -0600, Gary Thomas wrote:
> If you've found errors or "bugs" in the documentation, then tell us 
> about them!  Contributing your findings (or better yet, patches) helps
> everyone.

Here's first one...

There are also unnecessary '&' mark before ISR function names in
call to cyg_intterrupt_attach() in "developing embedded systems with
ecos".

Examples, which I have found via google didn't help much for me.

Serious problem for me was finding 'the ecos way' to do some really
trivial task like capturing IRQ. If I compare time, which this took to
me with the same thing on QNX, then QNX wins -- there is very clear
explanation in thier docs, with example for clock interrupt, which
was running out-of-the box. Modifing it to meet my needs was few
minutes.

Things, which make most difficulties:
- use "CYGNUM_HAL_ISR_MIN + 3" insted of "3" as IRQ number,
- why I need threads to make it work,
- why HAL_READ_XXX doesn't have HAL_READ_XXX (port) prototype,
- why second argument isn't a pointer.
Thats weird for me...:(

-- 
Piotr Trojanek
-------------- next part --------------
*** kernel.sgml	Tue Aug 26 14:25:08 2003
--- kernel.sgml.orig	Tue Aug 26 14:25:00 2003
***************
*** 1178,1184 ****
  static unsigned char producer_stack[PRODUCER_STACKSIZE];
  static unsigned char worker_stacks[NUMBER_OF_WORKERS][WORKER_STACKSIZE];
  static cyg_handle_t producer_handle, worker_handles[NUMBER_OF_WORKERS];
! static cyg_thread producer_thread, worker_threads[NUMBER_OF_WORKERS];
  
  static void
  producer(cyg_addrword_t data)
--- 1178,1184 ----
  static unsigned char producer_stack[PRODUCER_STACKSIZE];
  static unsigned char worker_stacks[NUMBER_OF_WORKERS][WORKER_STACKSIZE];
  static cyg_handle_t producer_handle, worker_handles[NUMBER_OF_WORKERS];
! static cyg_thread_t producer_thread, worker_threads[NUMBER_OF_WORKERS];
  
  static void
  producer(cyg_addrword_t data)

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


More information about the Ecos-discuss mailing list