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

4.104.114.84.95
Last change on this file since b56a278 was b56a278, checked in by Joel Sherrill <joel.sherrill@…>, on 09/29/03 at 21:42:57

2003-09-29 Till Strauman <strauman@…>

PR 497/bsps

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