From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4217 invoked by alias); 12 Sep 2012 20:11:51 -0000 Received: (qmail 4203 invoked by uid 22791); 12 Sep 2012 20:11:50 -0000 X-SWARE-Spam-Status: No, hits=-4.6 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE X-Spam-Check-By: sourceware.org Received: from mail-lb0-f177.google.com (HELO mail-lb0-f177.google.com) (209.85.217.177) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 12 Sep 2012 20:11:34 +0000 Received: by lbbgf7 with SMTP id gf7so1426845lbb.36 for ; Wed, 12 Sep 2012 13:11:32 -0700 (PDT) MIME-Version: 1.0 Received: by 10.152.106.81 with SMTP id gs17mr8747567lab.2.1347480692735; Wed, 12 Sep 2012 13:11:32 -0700 (PDT) Received: by 10.112.45.226 with HTTP; Wed, 12 Sep 2012 13:11:32 -0700 (PDT) In-Reply-To: References: <504B6AA5.9080908@gmail.com> Date: Wed, 12 Sep 2012 20:11:00 -0000 Message-ID: From: Michael Bergandi To: Bob Brusa Cc: ecos discuss Content-Type: text/plain; charset=ISO-8859-1 X-IsSubscribed: yes Mailing-List: contact ecos-discuss-help@ecos.sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: ecos-discuss-owner@ecos.sourceware.org Subject: Re: [ECOS] contents of the table " hal_interrupt_handlers" arm7 processor X-SW-Source: 2012-09/txt/msg00007.txt.bz2 Bob, > I find, that the jump bne 10f is always executed and subsequently, the > correct handler is fetched from the table hal_interrupt_handlers. But hellas > - when I get my "spurious interrupt" I find that the interrupt source is > correct (10 for pwm), the datapointer however is zero und all entries in the > hal_interrupt_handlers table are filled with the address of the > hal_default_isr. This sounds like it is working correctly. An interrupt occurred, it found the handler and called it. > I would expect the table hal_interrupt_handlers to be initialized during > system startup. But obviously, this assumption is wrong. Which part of eCOS > (dynamically) modifies this table and why?? > Thanks for help and advice....Bob hal_interrupt_handers is initialized at startup with hal_default_isr (which does nothing). A driver using interrupts would create an ISR and DSR (if required) and call cyg_drv_interrupt_create(). The handle returned by cyg_drv_interrupt_create() would then be used in the call to cyg_drv_interrupt_attach() to attach the interrupt to the hardware vector which places it in the hal_interrupt_handers table. -- Mike -- Mike -- Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss