This is the mail archive of the
ecos-patches@sources.redhat.com
mailing list for the eCos project.
AT91 hal_clock_reset fix
- From: daniel dot neri at sigicom dot se (Daniel Néri)
- To: ecos-patches at sources dot redhat dot com
- Date: Wed, 06 Aug 2003 15:17:48 +0200
- Subject: AT91 hal_clock_reset fix
- Cancel-lock: sha1:BVUnjc26Kk8sTCmwH6F7v35H4uY=
- Organization: Sigicom AB, Stockholm, Sweden
Performing an interrupt acknowledge in both hal_clock_reset and
Cyg_RealTimeClock::isr looks wrong to me.
Best wishes,
--Daniel
diff -u -5 -p -r1.1.1.5 -r1.11
--- hal/arm/at91/var/current/ChangeLog 2003/08/04 16:08:44 1.1.1.5
+++ hal/arm/at91/var/current/ChangeLog 2003/08/06 12:43:35 1.11
@@ -1,5 +1,11 @@
+2003-08-06 Daniel Néri <daniel.neri@sigicom.se>
+
+ * src/at91_misc.c (hal_clock_reset):
+ Don't acknowledge interrupt here (this is handled
+ in Cyg_RealTimeClock::isr).
+
2003-07-18 Nick Garnett <nickg@balti.calivar.com>
* cdl/hal_arm_at91.cdl:
Changed values for CYGNUM_HAL_RTC_NUMERATOR,
CYGNUM_HAL_RTC_DENOMINATOR and CYGNUM_HAL_RTC_PERIOD to
diff -u -5 -p -r1.1.1.5 -r1.8
--- hal/arm/at91/var/current/src/at91_misc.c 2003/08/04 16:08:44 1.1.1.5
+++ hal/arm/at91/var/current/src/at91_misc.c 2003/08/06 12:41:40 1.8
@@ -101,11 +101,10 @@ void hal_clock_reset(cyg_uint32 vector,
cyg_uint32 sr;
CYG_ASSERT(period < 0x10000, "Invalid clock period");
HAL_READ_UINT32(timer+AT91_TC_SR, sr); // Clear interrupt
- HAL_INTERRUPT_ACKNOWLEDGE(CYGNUM_HAL_INTERRUPT_RTC);
if (period != _period) {
hal_clock_initialize(period);
}
_period = period;