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

Last change on this file since 20c214e was 20c214e, checked in by Joel Sherrill <joel.sherrill@…>, on 09/29/03 at 21:43:26

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

PR 497/bsps

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