[ECOS] On RTC's isr!
Robert Cragie
rcc@jennic.com
Mon Jul 15 02:16:00 GMT 2002
Returning from the ISR with the Cyg_Interrupt::CALL_DSR flag set schedules
the DSR to be called. There is no need to explicitly call or schedule the
DSR.
I'm not sure about your second question, but there have been numerous posts
to this mailing list regarding real time clock ticks not working as expected
on certain platforms.
Robert Cragie, Design Engineer
________________________________________________________
Jennic Ltd, Furnival Street, Sheffield, S1 4QT, UK
www.jennic.com Tel: +44 (0) 114 281 2655
> -----Original Message-----
> From: ecos-discuss-owner@sources.redhat.com
> [mailto:ecos-discuss-owner@sources.redhat.com]On Behalf Of zhlg_shuhan
> Sent: 15 July 2002 04:14
> To: ecos-discuss@sources.redhat.com
> Subject: [ECOS] On RTC's isr!
>
>
> hi,all.
> why not RTC's isr call dsr_post()?
> then,how rtc's dsr() was called?
>
> cyg_uint32 Cyg_RealTimeClock::isr(cyg_vector vector, CYG_ADDRWORD data)
> {
> // CYG_REPORT_FUNCTION();
>
> #if defined(CYGVAR_KERNEL_COUNTERS_CLOCK_LATENCY) &&
> defined(HAL_CLOCK_LATENCY)
> if (measure_clock_latency) {
> cyg_int32 delta;
> HAL_CLOCK_LATENCY(&delta);
> // Note: Ignore a latency of 0 when finding min_clock_latency.
> if (delta > 0) {
> // Valid delta measured
> total_clock_latency += delta;
> total_clock_interrupts++;
> if (min_clock_latency > delta) min_clock_latency = delta;
> if (max_clock_latency < delta) max_clock_latency = delta;
> }
> }
> #endif
>
> CYG_INSTRUMENT_CLOCK( ISR, 0, 0);
>
> HAL_CLOCK_RESET( CYGNUM_HAL_INTERRUPT_RTC,
> CYGNUM_KERNEL_COUNTERS_RTC_PERIOD );
>
> Cyg_Interrupt::acknowledge_interrupt(CYGNUM_HAL_INTERRUPT_RTC);
>
> #if defined(CYGVAR_KERNEL_COUNTERS_CLOCK_DSR_LATENCY)
> HAL_CLOCK_READ(&clock_dsr_start);
> #endif
> return Cyg_Interrupt::CALL_DSR|Cyg_Interrupt::HANDLED;
> }
>
>
> and in rtc's dsr(),parameter count maybe >1,but when i check
> call_pending_DSRS(),i found count=1! why?
>
>
> zhlg
> ______________________________________
>
> ===================================================================
> ÃÃÃÃÃâ·ÃµçÃÃÃÃÃä (http://mail.sina.com.cn)
> ÃÃÃ÷ÃÃà ÃÃ
⣺¶þÃÃÃó¡ÃÃûÃ㬸óöÃÃñ¾Ã³öÃã¡
> (http://classad.sina.com.cn/2shou/)
>
> --
> Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> and search the list archive: http://sources.redhat.com/ml/ecos-discuss
>
>
--
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