2 2005-05-30 Ezequiel Conde <ezeq@cc.isel.ipl.pt>
4 * src/at91_misc.c ( hal_delay_us ): Clear status before running
7 2004-11-12 Jani Monoses <jani@iv.ro>
9 * include/var_io.h: Added defines for some missing UART bits,
10 corrected a few timer capture mode register bits.
12 2004-11-12 Andrew Lunn <andrew.lunn@ascom.ch>
14 * src/hal_diag.c: Only support the third serial port if we have
15 the defines needed. Not all HAL do have.
17 2004-11-11 Sebastian Block <SebastianBlock@gmx.net>
19 * src/hal_diag.c: Added support for the third serial port
21 2004-10-06 Andrea Michelotti <amichelotti@atmel.com>
23 * include/var_io.h: protected PDC/SPI DMA registers from redefinition.
24 The HAL may of already defined them.
26 2004-10-05 Savin Zlobec <savin@elatec.si>
28 * include/var_io.h: Added definitions for AT91M55800A SPI and PIO
31 2004-09-17 Andrea Michelotti <amichelotti@atmel.com>
33 * cdl/hal_arm_at91.cdl:
36 * include/var_arch.h: added jtst target
38 2004-09-16 Andrea Michelotti <amichelotti@atmel.com>
40 * cdl/hal_arm_at91.cdl:
42 * include/var_io.h: Support FIQ as a high priority interrupt using
43 the normal mechanism. This is controlled by the CDL option
44 CYGHWR_HAL_ARM_AT91_FIQ and uses the interrupt number
45 CYGHWR_HAL_ARM_AT91_FIQ which is common to all platforms using
48 2004-08-30 Thomas Koeller <thomas.koeller@baslerweb.com>
50 * cdl/hal_arm_at91.cdl: Reversed change of 2004-02-12 that move
51 seemingly 'common' options from the platform to the variant. This
52 was breaking some platform HALs.
54 2004-08-12 Jani Monoses <jani@iv.ro>
56 * src/at91_misc.c: Mask all interrupts before calling
57 hal_if_init() not after, so if it creates interrupts
58 they do not get disabled.
60 2004-05-24 Gratian Crisan <nelu@iv.ro>
62 * include/var_io.h: Added waveform mode definitions for
65 2004-02-19 Daniel Néri <daniel.neri@sigicom.se>
67 * cdl/hal_arm_at91.cdl (CYGBLD_GLOBAL_CFLAGS): Honour CYGHWR_THUMB
68 and CYGBLD_ARM_ENABLE_THUMB_INTERWORK.
69 * cdl/hal_arm_at91.cdl (CYGBLD_GLOBAL_LDFLAGS): Ditto.
71 2004-02-18 Daniel Néri <daniel.neri@sigicom.se>
73 * cdl/hal_arm_at91.cdl: Define CYGNUM_HAL_ARM_AT91_CLOCK_SPEED with
74 a default_value so it can be overridden in the platform HAL.
75 * src/hal_diag.c (cyg_hal_plf_serial_control): Properly terminate
76 variable argument processing.
77 * include/hal_diag.h: prototype for hal_at91_set_leds() to avoid
80 2004-02-12 Jani Monoses <jani@iv.ro>
82 * cdl/hal_arm_at91.cdl: Put configuration options common to all
83 variants here. Replace
84 CYGNUM_HAL_VIRTUAL_VECTOR_CHANNELS_DEFAULT_BAUD with the two
85 separate options for console and debug channels as used by most
87 * src/hal_diag.c: Implement
88 CYGINT_HAL_VIRTUAL_VECTOR_COMM_BAUD_SUPPORT so baudrate is
89 changeable from RedBoot.
91 2003-12-05 Andrew Lunn <andrew.lunn@ascom.ch>
93 * include/hal_diag.h: hal_delay_us() is a C function.
95 2003-12-02 Thomas Koeller <thomas.koeller@baslerweb.com>
97 * include/var_io.h: Improved accuracy for baud rate divider
100 2003-10-23 Thomas Koeller <thomas.koeller@baslerweb.com>
102 * src/at91_misc.c: Fixed recognition of spurious
105 2003-08-21 Thomas Koeller <thomas.koeller@baslerweb.com>
110 2003-08-20 Daniel Néri <daniel.neri@sigicom.se>
112 * include/var_io.h: Fix typos (duplicates) from last change.
114 2003-08-18 Thomas Koeller <thomas.koeller@baslerweb.com>
117 Added bitmask definitions for PIO.
119 2003-08-06 Daniel Néri <daniel.neri@sigicom.se>
121 * src/at91_misc.c (hal_clock_reset):
122 Don't acknowledge interrupt here (this is handled
123 in Cyg_RealTimeClock::isr).
125 2003-07-18 Nick Garnett <nickg@balti.calivar.com>
127 * cdl/hal_arm_at91.cdl:
128 Changed values for CYGNUM_HAL_RTC_NUMERATOR,
129 CYGNUM_HAL_RTC_DENOMINATOR and CYGNUM_HAL_RTC_PERIOD to
130 "default_value" from "calculated". This makes it easier
131 to change these values globally.
133 2003-06-25 Daniel Néri <daniel.neri@sigicom.se>
135 * src/at91_misc.c (hal_interrupt_set_level): Fix assert condition;
136 AT91 interrupt priority levels are between 0 and 7.
138 2003-06-24 Jonathan Larmour <jifl@eCosCentric.com>
140 * include/var_io.h: Remove not seemingly useful AT91_PMC_SCER_CPU.
142 * cdl/hal_arm_at91.cdl: We have a var_arch.h so define
143 CYGBLD_HAL_ARM_VAR_ARCH_H.
145 * include/var_arch.h: New file containing
146 overrides for hal_arch.h.
147 (HAL_IDLE_THREAD_ACTION): override here by defining power saving modes
150 2003-06-04 Daniel Néri <daniel.neri@sigicom.se>
152 * src/at91_misc.c (hal_hardware_init): Make sure the AIC internal
153 priority level stack is flushed.
154 (hal_IRQ_handler): Calculate active interrupt by dummy read from
155 the IVR, which has the side-effect of updating ISR with the
156 current interrupt source number.
157 (hal_interrupt_acknowledge): Write to ICCR is not needed, as
158 interrupt deassertion is taken care of by read of IVR in
161 2003-05-27 Daniel Néri <daniel.neri@sigicom.se>
163 * include/var_io.h: Add missing USART register defines.
164 Fix cut'n'paste typos in AT91_PS defines.
166 2003-05-16 Daniel Néri <daniel.neri@sigicom.se>
168 * include/var_io.h: Add missing PIO register defines. Add
169 CPU clock disable command bit.
171 2003-05-15 Thomas Koeller <thomas.koeller@baslerweb.com>
173 * include/hal_diag.h:
174 * src/at91_misc.c: Added function to generate a hardware reset
177 2003-05-15 Nick Garnett <nickg@balti.calivar.com>
179 * src/at91_misc.c (hal_delay_us): Added calculation to better
180 approximate the number of timer ticks for a given number of
181 microseconds. This code also now adjust to the actual CPU clock
182 speed on different platforms.
184 2003-05-12 Nick Garnett <nickg@balti.calivar.com>
186 * src/at91_misc.c: Change definition of hal_IRQ_handler() to be
187 variant-indepenendent, and to use HAL_LSBIT_INDEX() rather than an
188 explicit scan of the ipr bits. Tidied up file a little to make
191 * include/var_io.h: Reorganized to allow platform HALs to define
192 base addresses of on-chip devices if they differ from the defaults
193 defined here. Added variant definitions of Power Management
194 devices for different parts.
196 * cdl/hal_arm_at91.cdl: Calculate CYGNUM_HAL_RTC_PERIOD from
197 CYGNUM_HAL_ARM_AT91_CLOCK_SPEED, which is defined by the platform.
198 Added CYGHWR_HAL_ARM_AT91 to define the specific Atmel AT91 part
199 being supported. This must be defined by the platform HAL.
200 Added define_proc to generate CYGBLD_HAL_ARM_VAR_IO_H.
202 * src/hal_diag.c (hal_diag_led): Now calls hal_at91_set_leds().
204 2002-07-14 Tim Drury <tdrury@siliconmotorsports.com>
206 * cdl/hal_arm_at91.cdl: moved clock speed parameter to platform specific cdl
207 * include/var_io.h: added PIO_PDSR register
208 * src/hal_diag.c: added hal_diag_led()
210 2002-05-28 Thomas Koeller <Thomas.Koeller@baslerweb.com>
212 * include/plf_io.h: Add watchdog definitions.
214 2002-05-08 Gary Thomas <gthomas@redhat.com>
216 * misc/redboot_ROMRAM.ecm:
217 * misc/redboot_ROM.ecm: Disable 'fconfig' since the FLASH is too small.
219 2001-08-17 George Hampton <george.hampton@intel.com>
220 2001-08-17 Gary Thomas <gthomas@redhat.com>
222 * include/hal_platform_ints.h (CYGNUM_HAL_ISR_COUNT): PR 22864
223 Don't adjust by "min" value if not doing translations.
225 2001-07-26 Gary Thomas <gthomas@redhat.com>
227 * src/at91_misc.c (hal_clock_initialize):
228 * cdl/hal_arm_at91.cdl: Increase system clock (RTC) to run at 1MHz for
229 better timing resolution. CAUTION! this means that the system clock tick
230 can never be more than 64ms.
232 2001-07-23 Gary Thomas <gthomas@redhat.com>
234 * include/pkgconf/mlt_arm_at91_eb40_romram.mlt:
235 * include/pkgconf/mlt_arm_at91_eb40_romram.ldi:
236 * include/pkgconf/mlt_arm_at91_eb40_romram.h:
237 * include/pkgconf/mlt_arm_at91_eb40_ram.mlt:
238 * include/pkgconf/mlt_arm_at91_eb40_ram.ldi:
239 * include/pkgconf/mlt_arm_at91_eb40_ram.h:
240 * cdl/hal_arm_at91.cdl: Fix MLT files (names, layout).
242 2001-07-20 Gary Thomas <gthomas@redhat.com>
244 * include/plf_io.h: Add UART interrupt definitions.
246 * src/hal_diag.c (cyg_hal_plf_serial_control): Enable ^C support.
248 * src/at91_misc.c (hal_clock_initialize): Add clock/rtc implementation.
250 * include/pkgconf/mlt_arm_at91_eb40_romram.ldi:
251 Replace missing 'fixed vectors'.
253 2001-07-19 Gary Thomas <gthomas@redhat.com>
255 * misc/redboot_ROMRAM.ecm: New exported config.
257 * include/pkgconf/mlt_arm_at91_eb40_romram.ldi:
258 * include/pkgconf/mlt_arm_at91_eb40_ram.mlt:
259 * include/pkgconf/mlt_arm_at91_eb40_ram.ldi:
260 * include/hal_platform_setup.h: Fix ROMRAM startup mode. Note: I
261 can't get the onboard SRAM at 0x00100000 to work, so for now, this
262 will just have to go in low external RAM. Thus the change for the
263 RAM base address in startup=RAM mode.
265 * src/hal_diag.c (cyg_hal_plf_serial_getc_timeout): Remove debug code.
267 * src/at91_misc.c (set_leds): LEDs are on D4/D2/D1.
269 * misc/redboot_ROM.ecm:
270 * misc/redboot_RAM.ecm: Exported configurations.
272 * include/pkgconf/mlt_arm_at91_eb40_romram.mlt:
273 * include/pkgconf/mlt_arm_at91_eb40_romram.ldi:
274 * include/pkgconf/mlt_arm_at91_eb40_romram.h: New startup type.
276 * include/pkgconf/mlt_arm_at91_eb40_rom.h: Fix heap layout.
278 * include/pkgconf/mlt_arm_at91_eb40_ram.mlt:
279 * include/pkgconf/mlt_arm_at91_eb40_ram.ldi:
280 * include/pkgconf/mlt_arm_at91_eb40_ram.h:
281 Fix heap layout. Move RAM load address to leave room for RedBoot/GDB.
283 * include/plf_io.h: Add definitions for PIO, EBI and PS.
285 * include/hal_platform_setup.h: ROM startup mode now works.
286 First attempt at ROMRAM startup - not yet working.
288 * cdl/hal_arm_at91.cdl: Add ROMRAM startup mode.
290 2001-07-18 Gary Thomas <gthomas@redhat.com>
292 * src/hal_diag.c: More complete initialization.
294 * src/at91_misc.c: Support interrupt controller, delay_us().
296 * include/plf_io.h: Add interrupt controller, timer definitions.
298 * cdl/hal_arm_at91.cdl: Fix clock speed, number I/O channels.
300 2001-07-16 Gary Thomas <gthomas@redhat.com>
304 * include/pkgconf/mlt_arm_at91_eb40_rom.mlt:
305 * include/pkgconf/mlt_arm_at91_eb40_rom.ldi:
306 * include/pkgconf/mlt_arm_at91_eb40_rom.h:
307 * include/pkgconf/mlt_arm_at91_eb40_ram.mlt:
308 * include/pkgconf/mlt_arm_at91_eb40_ram.ldi:
309 * include/pkgconf/mlt_arm_at91_eb40_ram.h:
310 * include/plf_stub.h:
312 * include/hal_platform_setup.h:
313 * include/hal_platform_ints.h:
314 * include/hal_diag.h:
315 * include/hal_cache.h:
316 * cdl/hal_arm_at91.cdl: New port - cloned from E7T.
318 //===========================================================================
319 //####ECOSGPLCOPYRIGHTBEGIN####
320 // -------------------------------------------
321 // This file is part of eCos, the Embedded Configurable Operating System.
322 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
324 // eCos is free software; you can redistribute it and/or modify it under
325 // the terms of the GNU General Public License as published by the Free
326 // Software Foundation; either version 2 or (at your option) any later version.
328 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
329 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
330 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
333 // You should have received a copy of the GNU General Public License along
334 // with eCos; if not, write to the Free Software Foundation, Inc.,
335 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
337 // As a special exception, if other files instantiate templates or use macros
338 // or inline functions from this file, or you compile this file and link it
339 // with other works to produce a work based on this file, this file does not
340 // by itself cause the resulting work to be covered by the GNU General Public
341 // License. However the source code for this file must still be made available
342 // in accordance with section (3) of the GNU General Public License.
344 // This exception does not invalidate any other reasons why a work based on
345 // this file might be covered by the GNU General Public License.
347 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
348 // at http://sources.redhat.com/ecos/ecos-license/
349 // -------------------------------------------
350 //####ECOSGPLCOPYRIGHTEND####
351 //===========================================================================