source: rtems/c/src/lib/libbsp/powerpc/shared/ChangeLog @ ae1f243

4.104.114.84.95
Last change on this file since ae1f243 was ae1f243, checked in by Joel Sherrill <joel.sherrill@…>, on 10/22/03 at 16:24:05

2003-10-22 Joel Sherrill <joel@…>

PR 510/bsps

  • irq/irq.h: Add extern C wrapper.
  • Property mode set to 100644
File size: 17.0 KB
RevLine 
[ae1f243]12003-10-22      Joel Sherrill <joel@OARcorp.com>
2
3        PR 510/bsps
4        * irq/irq.h: Add extern C wrapper.
5
[b56a278]62003-09-29      Till Strauman <strauman@slac.stanford.edu>
7
8        PR 497/bsps
9        * bootloader/head.S: Disable code that returned to the firmware when
10        the loader starts.
11
[92b67b18]122003-09-26      Till Strauman <strauman@slac.stanford.edu>
13
14        PR 496/bsps
15        * startup/sbrk.c: New file.
16        * startup/bspstart.c: This patch implements 'sbrk'
17        for the powerpc-shared BSP to work around what's known as the
18        '32Mb problem' in combination with run-time loaded code.
19        GCC normally generates (PowerPC) code doing 'short jumps' which
20        requires all text segments being in the same 32Mb area of memory.
21        However, some run-time loaders use (e.g. heap-) memory violating the
22        stated limitation on hardware with more than 32Mb of memory.
23        (NOTE: portable loaders are probably not even aware of this
24        GCC/CPU specific problem.)
25
26        This patch implements a simple workaround: At boot time, the system is
27        only provided with 32Mb of memory. The user is supposed to load all
28        necessary modules prior to that limit being exhausted. Once that
29        happens, newlib/malloc end up trying to 'sbrk()' for more memory and
30        the implementation provided by this patch will then make the rest of
31        the physical memory available.
32
[732a3aee]332003-09-26  Till Straumann <strauman@slac.stanford.edu>
34
35        PR 497/bsps
36        * bootloader/head.S: Let the bootloader shut down the
37        network interface. NOTE: this involves a PPCBug system
38        call and will hence fail if other software is used
39        to boot. Need to #undef USE_PPCBUG in such cases!
40 
[e831de8]412003-09-04      Joel Sherrill <joel@OARcorp.com>
42
43        * bootloader/bootldr.h, bootloader/em86.c, bootloader/em86real.S,
44        bootloader/exception.S, bootloader/head.S, bootloader/lib.c,
45        bootloader/misc.c, bootloader/mm.c, bootloader/pci.c,
46        clock/p_clock.c, console/console.c, console/consoleIo.h,
47        console/inch.c, console/keyboard.h, console/polled_io.c,
48        include/bsp.h, irq/i8259.c, irq/irq.c, irq/irq.h, irq/irq_asm.S,
49        irq/irq_init.c, motorola/motorola.c, motorola/motorola.h,
50        openpic/openpic.c, openpic/openpic.h, pci/pci.c, residual/residual.c,
51        start/start.S, startup/bspstart.c, vectors/vectors.h,
52        vectors/vectors_init.c: URL for license changed.
53
[fe235a1e]542003-08-21      Till Strauman <strauman@slac.stanford.edu>
55
56        PR 456/bsps
57        * irq/irq.c: Fix race condition when installing an ISR.
58
[20ccd1f]592003-08-16      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
60
[c483a4e]61        * Makefile.am: Reflect having moved automake/.
62        * bootloader/Makefile.am: Reflect having moved automake/.
63        * clock/Makefile.am: Reflect having moved automake/.
64        * console/Makefile.am: Reflect having moved automake/.
65        * include/Makefile.am: Reflect having moved automake/.
66        * irq/Makefile.am: Reflect having moved automake/.
67        * motorola/Makefile.am: Reflect having moved automake/.
68        * openpic/Makefile.am: Reflect having moved automake/.
69        * pci/Makefile.am: Reflect having moved automake/.
70        * residual/Makefile.am: Reflect having moved automake/.
71        * start/Makefile.am: Reflect having moved automake/.
72        * startup/Makefile.am: Reflect having moved automake/.
73        * vectors/Makefile.am: Reflect having moved automake/.
74        * vme/Makefile.am: Reflect having moved automake/.
[20ccd1f]75
[d14ba48]762003-08-05      Till Strauman <strauman@slac.stanford.edu>
77
78        PR 437/bsps
79        * irq/irc.c: calls to bspIo/printk must not use '%i' format which is
80        apparently not supported
81        * pci/pci.c: calls to bspIo/printk must not use '%i' format which is
82        apparently not supported
83
[ec821af]842003-07-18      Till Straumann <strauman@slac.stanford.edu>
85
86        PR 288/rtems
87        * irq/irq_asm.S, startup/bspstart.c: _ISR_Nest_level is now properly
88        maintained and any BSP which does not do so will trip a panic in the
89        shared code.
90
[674b9497]912003-07-18      Till Straumann <strauman@slac.stanford.edu>
92
93        PR 415/bsps
94        * pci/detect_raven_bridge.c, startup/bspstart.c:
95        This patch reverts enabling MCP interrupts for the motorola_powerpc
96        BSPs. REASON: pci config space scanning (as e.g. done by the DEC
97        Ethernet driver) would raise machine check exceptions.
98
[35f93740]992003-07-16      Greg Menke <gregory.menke@gsfc.nasa.gov>
100
101        PR 428/bsps
102        PR 432/bsps
103        * bootloader/pci.c: Re-instated code that prevents remapping small
104        IO regions, which if remapped would cause i8259 registers to move
105        out from under the #define'd base addresses.
106        * startup/bspstart.c: Reduced BAT2 PCI memory allocation to 256
107        megs, I incorrectly had extended it which would cause problems with
108        PCI devices that defined prefetchable memory.
109
1102003-07-16      Greg Menke <gregory.menke@gsfc.nasa.gov>
111        PR 432/bsps
112        * bootloader/pci.c: Re-instated code that prevents remapping small
113        IO regions, which if remapped would cause i8259 registers to move
114        out from under the #define'd base addresses.
115        * startup/bspstart.c: Reduced BAT2 PCI memory allocation to 256
116        megs, I incorrectly had extended it which would cause problems with
117        PCI devices that defined prefetchable memory.
118       
[3a3e0b0e]1192003-06-13      Greg Menke <gregory.menke@gsfc.nasa.gov>
120
121        PR 405/bsps
122        * bootloader/pci.c: Added support for configuring devices for pci
123        busses > 0
124        * pci/pci.c, pci/pci.h: Added FixupPCI() to store vectors in the
125        INTERRUPT_LINE register of pci devices any # of hops away
126        from the host processor.
127        * motorola/motorola.c, motorola/motorola.h: Added interrupt
128        routing tables in support of FixupPCI.  This is board-specific,
129        each board will have to supply information for FixupPCI() to do
130        anything for it.
131        * startup/bspstart.c: Extended bat2 to cover entire PCI address space.
132        * irq/irq.c, irq/irq.h: Added support for shared interrupts.
133        Existing single hander vectors are undisturbed, a new function
134        added to allow adding/removing handlers from a vector.
135
[14ec2d4]1362003-06-13  Till Straumann <strauman@slac.stanford.edu>
137
138        PR 415/bsps
139        * include/bsp.h, pci/detect_raven_bridge.c, startup/bspstart.c:
140        Support enabling MCP exceptions on the host bridge. This can
141        be used for memory probing on the VME bus.
142
[046506c0]1432003-04-15      Joel Sherrill <joel@OARcorp.com>
144
145        PR 386/bsps
146        * vme/vmeconfig.c: Removed declaration of _BSP_vme_bridge_irq.
147
[0d6849e7]1482003-04-10  Till Straumann <strauman@slac.stanford.edu>
149
150        PR 379/bsps
151        * console/polled_io.c: libcpu provides 'printk' already.
152        Therefore, the implementation in this file was removed (still
153        used for the bootloader, though).  It now provides BSP_output_char()
154        for libcpu's printk().
155        * console/uart.c, console/uart.h: BSP_output_char_via_serial()
156        prototype changed to match the BSP_output_char_function_type.  Note
157        that the motorola BSPs use polled-io for the output_char routine, not
158        the uart.c version. The latter can be used be other BSPs however
159        (e.g. SVGM).
160        * console/console.c, console/consoleIo.h, console/polled_io.c,
161        irq/irq_init.c, openpic/openpic.c, pci/detect_raven_bridge.c:
162        Unfortunately, the supported 'printk' format string subset of the
163        polled-io and libcpu implementations are different - hence, a few
164        format strings in the ppc/shared BSP were changed.
165
[bbd88004]1662003-04-10      Joel Sherrill <joel@OARcorp.com>
167
168        PR 383/bsps
169        * irq/irq.c: Fix bug introduced by conflicts in previous patches.
170
[ec6422e]1712003-03-25  Till Straumann <strauman@slac.stanford.edu>
172
173        PR 360/bsps
174        * irq/irq.c, irq/irq_init.c, openpic/openpic.c, openpic/openpic.h:
175        BSP code had set the task priority register multiple times of
176        the OpenPIC instead of setting the individual source priorities.
177        This patch adds openpic_get_source_priority() and
178        openpic_set_source_priority() calls and lets IRQ management code
179        use them.
180
[de22321]1812003-03-25  Till Straumann <strauman@slac.stanford.edu>
182
183        PR 349/bsps
184        * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency
185        on the vmeUniverse driver. It is now possible to use the ppc/shared/irq
186        code on non-VME BSPs without triggering linkage of the vmeUniverse
187        driver.
188
1892003-03-25  Till Straumann <strauman@slac.stanford.edu>
190
191        PR 349/bsps
192        * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency
193        on the vmeUniverse driver. It is now possible to use the ppc/shared/irq
194        code on non-VME BSPs without triggering linkage of the vmeUniverse
195        driver.
196
[64f8ae4]1972003-03-18  Till Straumann <strauman@slac.stanford.edu>
198
199        PR 356/bsps
200        This patch makes RTEMS/powerpc/shared EABI compliant.
201        * irq/irq_init.c, start/Makefile.am, start/start.S, startup/bspstart.c,
202        startup/pgtbl_setup.c, vectors/vectors.h, vectors/vectors_init.c:
203        zero_bss() should clear not only bss but sbss and sbss2
204        also (this is probably a bugfix, as sbss/sbss2 are
205        probably used even if -msdata=eabi is not specified).
206        * start/rtems_crti.S: New file which must
207        be linked immediately after ecrti.o. rtems_crti.o contains
208        a code snippet who lets __init() return immediately. Also,
209        a new entry point '_init' to the C++ Ctors is generated
210        for use by the RTEMS Thread_Handler.
211
[6600424d]2122003-02-20      Till Straumann <strauman@slac.stanford.edu>
213
214        PR 349/bsps
215        * console/polled_io.c, console/reboot.c, irq/irq.c, irq/irq_asm.S,
216        irq/irq_init.c, openpic/Makefile.am, startup/linkcmds,
217        vectors/vectors.S, vectors/vectors_init.c:
218          - install the 'openpic.h' and 'pci.h' headers
219          - avoid a name clash by renaming 'vsprintf' & friends
220            to 'k_vsprintf' etc.
221          - let 'rtemsReboot' print a stack trace (in case an 'assert' failed)
222          - irq.c:
223             * fix: remove implicit assumption that ISA interrupt vectors start
224                    at 0
225             * add BSP hook to let a VME interrupt acknowledge the PCI/openpic
226               IRQ. (SEE ALSO THE ppc-sharedbsp-vme.diff patch)
227          - fix: EABI compliance; isr/exception lowlevel handlers must not
228                 clobber R2 or R13
229          - fix: openpic_init was called with the polarity/senses tables
230                 swapped (fixed wrong order of arguments)
231          - cosmetics: use new _read_SPRXX() _write_SPRXX() macros
232
[ea29ba6]2332003-02-20      Till Straumann <strauman@slac.stanford.edu>
234
235        PR 349/bsps
236        * startup/pgtbl_setup.c, startup/pgtbl_activate.c: New files
237        * startup/Makefile.am, startup/bspstart.c, startup/linkcmds:
238        Let the powerpc/shared (+derived) BSPs use pagetable support
239        from libcpu.
240
[b95aedf]2412003-02-20      Till Straumann <strauman@slac.stanford.edu>
242
243        PR 349/bsps
244        * vme/.cvsignore, vme/Makefile.am, vme/VME.h, vme/VMEConfig.h,
245        vme/vmeconfig.c: Add glue to the powerpc/shared BSP to use
246        the vmeUniverse VME-PCI bridge driver.
247
[4f3e4f33]2482003-02-20      Till Straumann <strauman@slac.stanford.edu>
249
250        PR 349/bsps
251        * console/console.c, console/uart.c, console/uart.h: implement
252        IOCTLs for the serial (UART) console to install/retrieve a BREAK-IRQ
253        callback.  The callback routine (if installed) is invoked from the
254        UART ISR when a BREAK interrupt is detected.  This can be used
255        e.g. to enforce a "hotkey" reboot a la vxWorks Ctrl-X (although we
256        use the serial line break condition) NOTE: The callback runs in
257        ISR context. 
258
[1d36d2af]2592003-01-20      Joel Sherrill <joel@OARcorp.com>
260
261        * startup/linkcmds*: Add FreeBSD sysctl() sections.
262
[9cd4a6e8]2632002-12-08      Greg Menke <gregory.menke@gsfc.nasa.gov>
264 
265        * bootloader/head.S: Added support for optional debug via PPCbug.
266        Also turn off mmu/caches for the bootstrap phase, which seems to
267        cause trouble with the 603.  The cpu init functions in the bsp
268        get all that stuff going properly.
269
[c4e9f68]2702002-12-19      Joel Sherrill <joel@OARcorp.com>
271
272        * console/console.c: Removed __assert() which conflicts with newlib.
273
[5d740bb]2742002-11-17      Greg Menke <gregory.menke@gsfc.nasa.gov>
275
276        * irq/irq_init.c, motorola/motorola.c: Support for MTX603e.
277
[7657233d]2782002-10-31      Joel Sherrill <joel@OARcorp.com>
279
280        * bootloader/em86.c, console/inch.c, console/polled_io.c, irq/irq.c,
281        motorola/motorola.c, pci/detect_raven_bridge.c,
282        vectors/vectors_init.c: Removed warnings.
283
[c654ac53]2842002-07-25      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
285
286        * bootloader/em86real.S: Fix syntax error in comment near line 1185.
287
[69ed59f]2882001-05-14      Till Straumann <strauman@slac.stanford.edu>
289
290        * bootloader/misc.c, console/Makefile.am, console/console.c,
291        console/consoleIo.h, console/inch.c, console/polled_io.c,
292        console/uart.c, console/uart.h, include/bsp.h, irq/Makefile.am,
293        irq/irq.c, irq/irq.h, irq/irq_init.c, openpic/openpic.c,
294        openpic/openpic.h, pci/Makefile.am, pci/pci.c, pci/pci.h,
295        residual/Makefile.am, start/start.S, startup/bspstart.c,
296        vectors/vectors.S, vectors/vectors.h, vectors/vectors_init.c:
297        Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably
298        with the goal to make it more flexible and reusable by other
299        BSPs. The main strategies were:
300            - eliminate hardcoded base addresses; devices use offsets
301              and a BSP defined base address.
302            - separate functionality into different files (e.g. reboot from
303              inch.c to reboot.c) which can be overridden by a 'derived' BSP.
304            - separate initialization code into separate files (e.g.  PCI
305              bridge detection/initialization was separated from the more
306              generic PCI access routines), also to make it easier for
307              'derived' BSPs to substitute their own initialization code.
308        There are also a couple of enhancements and fixes:
309            - IRQ handling code now has a hook for attaching a VME bridge.
310            - OpenPIC is now explicitely initialized (polarities, senses).
[85c92574]311              Eliminated the implicit assumption on the presence of an ISA PIC.
312            - UART and console driver now supports more than 1 port. The current
313              maximum of 2 can easily be extended by enlarging a table (it
314              would even be easier if the ISR API was not broken by design).
315            - fixed polled_io.c so it correctly supports console on COM2
316            - fixed TLB invalidation code (start.S).
317            - exception handler prints a stack backtrace.
318            - added BSP_pciFindDevice() to scan the pci bus for a particular
[cd35cf9]319              vendor/device/instance.
320
3212001-05-09      Joel Sherrill <joel@OARcorp.com>
322
323        * startup/linkcmds: In support of gcc 3.1, added one of more
324        of the sections .jcr, .rodata*, .data.*, .gnu.linkonce.s2.*,
325        .gnu.linkonce.sb2.*, and .gnu.linkonce.s.*.  Spacing corrections
326        and direction of segments to memory regions may also have been
327        addressed.  This was a sweep across all BSPs.
328 
3292002-04-18      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
330
[70f1268d]331        * bootloader/exception.S: Reflect changes to <rtems/score/cpu.h>.
332        * bootloader/head.S: Ditto.
333        * bootloader/misc.c: Ditto.
334        * console/polled_io.c: Ditto.
[238f450]335        * irq/irq.c: Ditto.
336        * irq/irq_asm.S: Ditto.
337        * irq/irq_init.c: Include <rtems/bspIo.h>.
338        * start/start.S: Reflect changes to <rtems/score/cpu.h>.
[20603d1]339        * vectors/vectors.S: Ditto.
340
3412002-04-16      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
342
343        * startup/bspstart.c: Include <libcpu/cpuIdent.h>.
344
3452001-04-08      Joel Sherrill <joel@OARcorp.com>
346
347        * startup/linkcmds: Per PR170, PR171, and PR172 add .eh_frame
[b23a1721]348 
3492002-04-02      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
350
351        * residual/residual.c: Include <string.h>.
352        * vectors/vectors_init.c: Include <rtems/bspIo.h> for printk.
353        * bootloader/mm.c: Ditto.
354        * bootloader/pci.c: Ditto.
355        * console/console.c: Ditto.
356        * openpic/openpic.c: Ditto.
357
3582002-03-27      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
359
360        * bootloader/Makefile.am: Remove AUTOMAKE_OPTIONS.
361        * Makefile.am: Remove AUTOMAKE_OPTIONS.
362        * clock/Makefile.am: Remove AUTOMAKE_OPTIONS.
363        * console/Makefile.am: Remove AUTOMAKE_OPTIONS.
[825b119]364        * include/Makefile.am: Remove AUTOMAKE_OPTIONS.
365        * irq/Makefile.am: Remove AUTOMAKE_OPTIONS.
366        * motorola/Makefile.am: Remove AUTOMAKE_OPTIONS.
367        * openpic/Makefile.am: Remove AUTOMAKE_OPTIONS.
368        * pci/Makefile.am: Remove AUTOMAKE_OPTIONS.
369        * residual/Makefile.am: Remove AUTOMAKE_OPTIONS.
370        * start/Makefile.am: Remove AUTOMAKE_OPTIONS.
[ac9253e]371        * startup/Makefile.am: Remove AUTOMAKE_OPTIONS.
372        * vectors/Makefile.am: Remove AUTOMAKE_OPTIONS.
373
3742001-11-28      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
[8807eac]375
376        * include/Makefile.am: Use _HEADER instead of H_FILES.
377        * irq/Makefile.am: Ditto.
378        * openpic/Makefile.am: Ditto.
[b0f80e1b]379        * include/bsp.h: Include <bspopts.h>.
380
3812001-10-25      Joel Sherrill <joel@OARcorp.com>
382
383        * startup/linkcmds: Added _init and _fini.
384
3852001-10-12      Joel Sherrill <joel@OARcorp.com>
386
387        * clock/p_clock.c, startup/bspstart.c: Fixed typo.
388
[9a23bf64]3892001-09-27      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
390
391        * console/Makefile.am: Use 'PREINSTALL_FILES ='.
392        * residual/Makefile.am: Use 'PREINSTALL_FILES ='.
393        * irq/Makefile.am: Use 'PREINSTALL_FILES ='.
394        * motorola/Makefile.am: Use 'PREINSTALL_FILES ='.
395        * vectors/Makefile.am: Use 'PREINSTALL_FILES ='.
396        * pci/Makefile.am: Use 'PREINSTALL_FILES ='.
397        * openpic/Makefile.am: Use 'PREINSTALL_FILES ='.
[bde9bb5]398
3992001-05-14      Tom Armistead <tom_armistead@phx.mcd.mot.com>
400
401        * start/start.S: Increased BAT0 mapping of RAM from 64 meg to
402        256 meg to allow operation on boards with larger RAM sizes.
403        * vectors/vectors_init.c: Modified to call 'generic' powerpc
[eba2e4f]404        vector function (mpc60x_vector_is_valid) instead of MPC750
405        specific function to allow operation on boards with CPUs other
406        than the MPC750.
407
4082001-03-30      Eric Valette <valette@crf.canon.fr>
409
410        * Makefile.am, console/consoleIo.h, include/bsp.h:
[4cb5d29]411        These modifications are part of the conversion of the
412        mpc8xx CPU to the "new exception processing model."
413
4142000-11-01      Joel Sherrill <joel@OARcorp.com>
415
416        * startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h,
[443c35c1]417        and libcsupport.h moved from libc to lib/include/rtems and
418        now must be referenced as <rtems/XXX.h>.   Header file order
419        was cleaned up while doing this.
420
[e94ad1fe]4212000-09-29      Charles-Antoine Gauthier <charles.gauthier@nrc.ca>
422
423        * startup/linkcmds: Added lines so DWARF debug information
424        would be available.  Otherwise gdb complains that the offsets
425        for the debug info are incorrect and doesn't load the files.
426
4272000-09-05      Joel Sherrill <joel@OARcorp.com>
428
429        * start/start.S: Include proper files to compile.
430
4312000-08-10      Joel Sherrill <joel@OARcorp.com>
432
433        * ChangeLog: New file.
Note: See TracBrowser for help on using the repository browser.