summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/powerpc/gen5200/startup/bspstart.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsps: Move startup files to bspsSebastian Huber2018-04-201-172/+0
| | | | | | | | Adjust build support files to new directory layout. This patch is a part of the BSP source reorganization. Update #3285.
* powerpc: Remove _BSP_Fatal_error()Sebastian Huber2017-11-221-6/+0
| | | | | | | BSPs can use the bsp_fatal_extension() to provide BSP-specific fatal error handling. There is no need for a _BSP_Fatal_error(). Close #3246.
* powerpc: Replace BSP_panic() with rtems_panic()Sebastian Huber2017-11-221-6/+0
| | | | | | | | Due to a new rtems_panic() implementation, it is possible to replace the PowerPC-specific BSP_panic() with rtems_panic(). Remove BSP_panic() implementations. Close #3245.
* bsp/gen5200: Fix warningsSebastian Huber2014-10-101-5/+2
|
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-211-2/+2
|
* score: Add RTEMS_FATAL_SOURCE_BSPSebastian Huber2014-02-191-5/+0
| | | | | | Merge RTEMS_FATAL_SOURCE_BSP_GENERIC and RTEMS_FATAL_SOURCE_BSP_SPECIFIC into new fatal source RTEMS_FATAL_SOURCE_BSP. This makes it easier to figure out the code position given a fatal source and code.
* powerpc: Change interrupt disable implemetationSebastian Huber2014-02-191-1/+0
| | | | | | | | | | | | Instead of SPRG0 (= special purpose register 272) use the new global symbol _PPC_INTERRUPT_DISABLE_MASK to store the interrupt disable mask. The benefit is that it is now possible to disable interrupts without further run-time initialization in boot_card(). At least on Freescale e500 cores this leads also to a faster execution since the mfmsr and mfspr instruction require four cycles to complete. The instructions to load the mask value can execute while the mfmsr is in progress.
* score: Add CPU counter supportSebastian Huber2014-02-141-0/+2
| | | | | | | | | Add a CPU counter interface to allow access to a free-running counter. It is useful to measure short time intervals. This can be used for example to enable profiling of critical low-level functions. Add two busy wait functions rtems_counter_delay_ticks() and rtems_counter_delay_nanoseconds() implemented via the CPU counter.
* bsp/mpc5200: Fix cache handlingSebastian Huber2013-04-231-10/+0
|
* bsp/gen5200: Add and use mpc5200_fatal()Sebastian Huber2013-02-201-0/+5
|
* bsps/powerpc: Exception initialization error is fatalSebastian Huber2012-11-151-5/+1
|
* bsps: Interrupt initialization error is fatalSebastian Huber2012-11-151-4/+1
|
* bsps: More accurate PowerPC clock driverSebastian Huber2012-04-021-4/+6
| | | | | | The clock driver used previously the bsp_clicks_per_usec value. For a 33333333Hz time base frequency this leads to a relative error of one per cent for example due to integer truncation.
* 2011-06-17 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-06-171-0/+14
| | | | | | | | | | | | | | | | | | | | | * Makefile.am: Added custom memcpy(). Update for network sources. * configure.ac: Enable interrupt driven Termios for all BSPs. * ide/pcmcia_ide.c: Disable broken DMA support. * include/bsp.h: Fixed NEED_LOW_LEVEL_INIT define. Set default console baud to 115200. * include/irq.h, irq/irq.c: Fixed interrupt handling to avoid the following problems: 1. multiple invokation of peripheral interrupt handlers, 2. missing synchronization after mask write and enabling of external exceptions, and 3. logic overhead. * network_5200/network.c: Added MII interface. Fixed controller restart after FIFO errors. Performance improvements. * start/start.S: Fixed ROM startup. Initialize XLB arbiter for all BSPs. * startup/bspstart.c: Special intialization for MPC5200B (B variant). Install standard alignment handler. * startup/cpuinit.c, startup/linkcmds.brs5l, startup/linkcmds.dp2, startup/linkcmds.icecube, startup/linkcmds.pm520_cr825, startup/linkcmds.pm520_ze30: Avoid accesses outside the RAM area.
* 2011-06-07 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2011-06-071-2/+2
| | | | * configure.ac, startup/bspstart.c: Use standard cache BSP options.
* 2011-01-28 Joel Sherrill <joel.sherrilL@OARcorp.com>Joel Sherrill2011-01-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | * beatnik/include/bsp.h, beatnik/irq/irq.h, beatnik/pci/gt_pci_init.c, ep1a/console/polled_io.c, ep1a/irq/openpic_xxx_irq.c, gen5200/include/irq.h, gen5200/irq/irq.c, gen5200/startup/bspstart.c, haleakala/irq/irq.c, mbx8xx/irq/irq.c, mbx8xx/irq/irq.h, motorola_powerpc/include/bsp.h, mpc8260ads/irq/irq.c, mpc8260ads/irq/irq.h, mvme3100/include/bsp.h, mvme3100/irq/irq.h, mvme3100/start/start.S, mvme5500/include/bsp.h, mvme5500/irq/irq.h, psim/include/bsp.h, psim/include/coverhd.h, psim/irq/irq.h, psim/shmsupp/addrconv.c, psim/shmsupp/getcfg.c, psim/startup/linkcmds, psim/tools/psim-gdb-top.in, psim/tools/psim-top.in, psim/tools/runtest-top.in, qemuppc/irq/irq.h, score603e/irq/irq.c, shared/bootloader/bootldr.h, shared/bootloader/em86.c, shared/bootloader/em86real.S, shared/bootloader/exception.S, shared/bootloader/head.S, shared/bootloader/lib.c, shared/bootloader/misc.c, shared/bootloader/mm.c, shared/bootloader/pci.c, shared/console/console.c, shared/console/consoleIo.h, shared/console/inch.c, shared/console/keyboard.h, shared/console/polled_io.c, shared/irq/i8259.c, shared/irq/irq.h, shared/irq/openpic_i8259_irq.c, shared/motorola/motorola.c, shared/motorola/motorola.h, shared/openpic/openpic.c, shared/openpic/openpic.h, shared/pci/pci.c, shared/residual/residual.c, shared/start/start.S, ss555/irq/irq.h: Fix typo where license said found in found in.
* 2010-12-30 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2010-12-301-12/+1
| | | | | | | | * include/u-boot.h: Removed file. * include/u-boot-config.h: New file. * include/bsp.h, start/start.S, startup/bspstart.c: Use new U-Boot support. * Makefile.am, preinstall.am: Reflect changes above.
* change this BSP to use the decrementer as clock sourceThomas Doerfler2010-03-221-1/+1
|
* Whitespace removal.Ralf Corsepius2009-11-291-1/+1
|
* Update for exception support changes.Thomas Doerfler2009-10-231-10/+13
|
* 2009-08-26 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-08-261-19/+0
| | | | | | * Makefile.am, startup/bspstart.c: Rename BSP specific idle thread to bsp_idle_thread and split into its own file. * startup/bspidle.c: New file.
* 2009-08-24 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-08-241-2/+2
| | | | | * include/bsp.h, startup/bspstart.c: Rename _Thread_Idle_body to bsp_idle_thread.
* 2009-02-12 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-02-121-1/+1
| | | | | * include/bsp.h, startup/bspstart.c: Change prototype of IDLE thread to consistently return void * and take a uintptr_t argument.
* 2008-09-22 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-09-221-3/+1
| | | | | | | | | | | * Makefile.am, configure.ac, console/console.c, include/bsp.h, startup/bspstart.c: Use standardized bsp_cleanup() which can optionally print a message, poll for user to press key, and call bsp_reset(). Using this eliminates the various bsp_cleanup() implementations which had their own implementation and variety of string constants. * startup/bspreset.c: New file. * startup/bspclean.c: Removed.
* 2008-09-20 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-09-201-5/+6
| | | | | | | * Makefile.am, include/bsp.h, network_5200/network.c, start/start.S, startup/bspstart.c, startup/cpuinit.c: Use top level shared bsp_get_work_area() implementation. Augment it to know about U-Boot. * startup/bspgetworkarea.c: Removed.
* 2008-09-16 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-09-161-6/+1
| | | | | * clock/clock.c, startup/bspstart.c: Remove unnecessary includes of rtems/libcsupport.h and rtems/libio.h.
* 2008-09-15 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-09-151-51/+3
| | | | | | | * Makefile.am, startup/bspstart.c: Use shared bsp_get_work_area() in its own file and rely on BSP Framework to perform more initialization. * startup/bspgetworkarea.c: New file.
* Converted to use sharedThomas Doerfler2008-09-031-91/+36
| | | | exception and interrupt code.
* adapted powerpc BSPs to new exception codeThomas Doerfler2008-07-111-4/+2
|
* 2008-06-06 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-06-061-32/+34
| | | | | | * include/bsp.h, irq/irq.c, irq/irq_init.c, startup/bspclean.c, startup/bspstart.c: Slightly better names for IRQ benchmarking. Make sure the routines are present all the time.
* 2008-05-15 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-05-151-20/+0
| | | | | | | | | | | | | | * startup/bspstart.c: Add capability for bootcard.c BSP Initialization Framework to ask the BSP where it has memory for the RTEMS Workspace and C Program Heap. These collectively are referred to as work area. If the BSP supports this, then it does not have to include code to split the available memory between the two areas. This reduces the amount of code in the BSP specific bspstart.c file. Additionally, the shared framework can initialize the C Library, call rtems_debug_enable(), and dirty the work area memory. Until most/all BSPs support this new capability, if the BSP supports this, it should call RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION from its configure.ac. When the transition is complete, this autoconf macro can be removed.
* 2008-05-12 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-05-121-3/+1
| | | | | | | | | | | | * startup/bspstart.c: Refactored and renamed initialization routines to rtems_initialize_data_structures, rtems_initialize_before_drivers, rtems_initialize_device_drivers, and rtems_initialize_start_multitasking. This opened the sequence up so that bootcard() could provide a more robust and flexible framework which is easier to explain and understand. This also lays the groundwork for sharing the division of available memory between the RTEMS workspace and heap and the C library initialization across all BSPs.
* 2008-01-11 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-01-111-3/+7
| | | | | | | | | | | * configure.ac, irq/irq.c, startup/bspclean.c, startup/bspstart.c: Add ALLOW_IRQ_NESTING option. The MPC5200 has a settle time after acknowledging the IRQs and currently the BSP does not account for that. After acknowledging an interrupt, it currently gets a second spurious IRQ a significant percentage of the time. Rename to BENCHMARK_IRQ_PROCESSING and get it working again. Under one test load, not nesting interrupts resulted in a 50% reduction in the number of IRQs and an ~30% reduction in time spent in IRQs.
* 2007-12-14 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2007-12-141-0/+2
| | | | | | * irq/irq.c, startup/bspclean.c, startup/bspstart.c: I give. The code is now in conditionally so I can avoid putting it in accidently again.
* 2007-12-11 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-12-111-35/+14
| | | | | | | * bsp_specs, clock/clock.c, include/bsp.h, irq/irq.c, startup/bspclean.c, startup/bspstart.c: Eliminate copies of the Configuration Table. Use the RTEMS provided accessor macros to obtain configuration fields.
* 2007-12-04 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-12-041-8/+0
| | | | | | * startup/bspstart.c: Move interrupt_stack_size field from CPU Table to Configuration Table. Eliminate CPU Table from all ports. Delete references to CPU Table in all forms.
* 2007-12-03 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-12-031-5/+1
| | | | | | | | | * startup/bspstart.c: Moved most of the remaining CPU Table fields to the Configuration Table. This included pretasking_hook, predriver_hook, postdriver_hook, idle_task, do_zero_of_workspace, extra_mpci_receive_server_stack, stack_allocate_hook, and stack_free_hook. As a side-effect of this effort some multiprocessing code was made conditional and some style clean up occurred.
* 2007-11-30 Till Straumann <strauman@slac.stanford.edu>Till Straumann2007-12-011-1/+0
| | | | * startup/bspstart: removed _Cpu_table.exceptions_in_RAM.
* 2007-11-28 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-11-281-2/+7
| | | | | | * clock/clock.c, startup/bspstart.c: Eliminate PowerPC specific elements from the CPU Table. They have been replaced with variables named bsp_XXX as needed.
* 2007-06-20 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2007-06-201-3/+9
| | | | | | | | | | | | | | | | | | | | | Add Embedded Planets EP5200 which is the same as the Freescale 5200Lite (a.k.a. IceCube) evaluation board. * Makefile.am: Add linkcmds.ep5200. Add -DMPC5200_BAPI_LIBC_HEADERS to remove some warnings in bestcomm. * preinstall.am: Add linkcmds.ep5200. * clock/clock.c: Correct math for prescaler/counter when bus speed is high enough to require multiple passes of loop. * console/console.c: Use same math for initial baud rate as when it is changed via ioctl. When HAS_UBOOT is defined, initialize console to the same baud as it was with U-Boot. * include/bsp.h: Add EP5200 and console boot baud support. * include/mpc5200.h: Spacing. * startup/bspstart.c: If HAS_UBOOT and SHOW_MORE_INIT_SETTINGS are both defined, dump the U-Boot BD info structure. * vectors/vectors.S: ep5200 cannot use vectors segment. When loading it, U-Boot freezes. Besides, U-Boot can automatically start the BSP so we do not have to run from board reset. * startup/linkcmds.ep5200: New file.
* 2007-03-12 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2007-03-121-1/+1
| | | | | | | | | * clock/clock.c, console/console.c, ide/pcmcia_ide.c, irq/irq.c, irq/irq.h, irq/irq_asm.S, irq/irq_init.c, nvram/nvram.c, nvram/nvram.h, slicetimer/slicetimer.c, startup/bspstart.c, vectors/vectors.h, vectors/vectors_init.c: Correct license URL and/or fix mistake in copyright notice. Both of these mistakes appear to be from code submitted after these changes were made previously.
* 2007-03-11 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2007-03-111-1/+0
| | | | | | * startup/bspstart.c: Remove assignments of Cpu_table.do_zero_of_workspace to TRUE since TRUE is the default value in boot_card.c
* Convert to utf-8.Ralf Corsepius2006-10-171-1/+1
|
* Cleanup CVS data.Ralf Corsepius2006-01-011-24/+0
|
* Misc include file fixes.Ralf Corsepius2005-12-311-2/+5
|
* New (CVS import Thomas Doerfler <Thomas.Doerfler@embedded-brains.de>'sRalf Corsepius2005-12-311-0/+384
submission).