This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: eCos interrupt programming (on SA1100)
- To: "Andreas Bürgel" <Andreas dot Buergel at web dot de>
- Subject: Re: [ECOS] eCos interrupt programming (on SA1100)
- From: Jesper Skov <jskov at cambridge dot redhat dot com>
- Date: 07 Jun 2001 08:57:50 +0200
- Cc: ecos-discuss at sources dot redhat dot com
- References: <200106061937.f56Jb0800442@mailgate3.cinetic.de>
>void dsrMethod ( cyg_vector_t anIntrVector,
> cyg_ucount32 aCounter,
> cyg_addrword_t aDataAddress) {
> gCounter++;
> printf ( ">");
>}
Don't call printf from the DSR. It's likely to cause a lockup or
overflow the interrupt stack.
> cyg_interrupt_create ( lIntrVector,
> lIntrPriority,
> (cyg_addrword_t) 0,
> isrMethod,
> dsrMethod,
> &lIntrHandle,
> &lIntr);
> cyg_interrupt_attach ( lIntrHandle);
I think this is what's missing:
cyg_drv_interrupt_acknowledge(lIntrVector);
cyg_drv_interrupt_unmask(lIntrVector);
Jesper