| Commit message (Collapse) | Author | Files | Lines |
|
Adjust build support files to new directory layout.
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
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.
|
|
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.
|
|
|
|
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.
|
|
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.
|
|
It declares a symbol defined in the linker command file.
|
|
Delete ppc_exc_vector_base. Add and use
ppc_exc_initialize_with_vector_base().
|
|
Several GCC tests faild due to the outdated previous linker command
file.
|
|
|
|
Script does what is expected and tries to do it as
smartly as possible.
+ remove occurrences of two blank comment lines
next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
contain CVS Ids
+ If the processing left a blank line at the top of
a file, it was removed.
|
|
* include/bsp.h, include/tm27.h, startup/bspstart.c:
Use "__asm__" instead of "asm" for improved c99-compliance.
|
|
* startup/bspstart.c: use normal get_ppc_cpu_type()
for determining PPC flavor. This causes the appropriate
'feature' bits to be set and should work as long
as the PVR is set to 0xfffe0000 in the device tree.
* startup/linkcmds: increased RAM_SIZE to 32M.
|
|
|
|
* start/start.S, startup/bspstart.c: Fix warnings.
|
|
* Makefile.am, preinstall.am, irq/no_pic.c (REMOVED),
irq/irq.h, irq/irq_init.c:
use openpic from 'shared' area instead of no_pic.
* inlude/psim.h:
use openpic from 'shared' area instead of no_pic.
Added 'extern' declaration for (linker-script defined) RamBase
and RamSize symbols. Let CPP macros expand to these symbols
instead of static constants.
Added register definitions for OpenPIC in the register area.
Added register definitions for ethernet controller in the register
area.
* startup/linkcmds: Increased RamSize to 16M. Increased 'RAM'
memory region to 32M (there is really no disadvantage in making
this large). Added comment explaining the inter-relation between
RamSize, the size of the memory region, the device-tree property
"oea-memory-size" and the DBAT setting.
* tools/psim-shared: Try to determine RamSize from executable
and set 'oea-memory-size' accordingly. May be overridden if 'RAM_SIZE'
envvar is set.
Added openpic to device-tree.
Added ethernet controller to device-tree (commented because a PSIM
patch is currently required to use this device).
* startup/bspstart: Increase DBAT0 mapping to size of 32M.
|
|
* startup/bspstart.c: Spacing.
|
|
* startup/bspstart.c: Add bsp_clicks_per_usec variable which is used by
shared code.
|
|
* Makefile.am, include/bsp.h, startup/bspstart.c, startup/linkcmds: Use
PowerPC level shared bsp_get_work_area() implementation.
* startup/bspgetworkarea.c: Removed.
|
|
* Makefile.am, startup/bspstart.c: Add use of bsp_get_work_area() in
its own file and rely on BSP Framework to perform more
initialization. Remove unnecessary includes of rtems/libio.h and
rtems/libcsupport.h.
* startup/bspgetworkarea.c: New file.
|
|
added support for an optional separate heap area.
|
|
* startup/bspstart.c: This BSP is OK with SPRG0.
|
|
|
|
* Makefile.am, configure.ac, 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.
|
|
* 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.
|
|
* bsp_specs, include/bsp.h, startup/bspstart.c: Eliminate copies of the
Configuration Table. Use the RTEMS provided accessor macros to obtain
configuration fields.
|
|
* include/bsp.h, 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.
|
|
* Makefile.am, 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.
|
|
* startup/bspstart.c: removed bsp_exceptions_in_RAM
|
|
* startup/bspstart.c: BSP_DIRTY_MEMORY should be tested for zero not
just defined.
|
|
* startup/bspstart.c, Makefile.am: Initialize BATs and enable MMU
to come closer to what other BSPs do. This allows us to use the
shared irq_asm.S. No more individual assembly code :-)
|
|
* startup/bspstart.c: Eliminate PowerPC specific elements from the CPU
Table. They have been replaced with variables named bsp_XXX as
needed.
|
|
* configure.ac, startup/bspstart.c: Add BSP_DIRTY_MEMORY option.
|
|
|
|
* startup/bspstart.c: include <rtems/powerpc/powerpc.h>.
Use PPC_MINIMUM_STACK_FRAME_SIZE instead of
CPU_MINIMUM_STACK_FRAME_SIZE.
|
|
PR 581/bsps
* Makefile.am, bsp_specs, configure.ac, include/bsp.h, include/tm27.h,
start/start.S, startup/bspstart.c, startup/linkcmds,
tools/Makefile.am, tools/psim, vectors/vectors.S, wrapup/Makefile.am:
Convert PSIM to new exception model.
* irq/irq.c, irq/irq.h, irq/irq_asm.S, irq/irq_init.c: New files.
* startup/setvec.c, timer/timer.c: Removed.
|
|
|
|
* include/bsp.h, shmsupp/getcfg.c, startup/bspstart.c,
timer/timer.c: Convert to using c99 fixed size types.
|
|
* console/console-io.c, include/bsp.h, include/coverhd.h,
shmsupp/addrconv.c, shmsupp/getcfg.c, shmsupp/lock.c,
shmsupp/mpisr.c, startup/bspclean.c, startup/bspstart.c,
startup/linkcmds, startup/setvec.c, tools/psim, tools/runtest,
vectors/vectors.S: URL for license changed.
|
|
* startup/bspstart.c: Removed incorrect statement about copyright
assignment.
|
|
* startup/bspstart.c: Include <rtems/bspIo.h>.
* vectors/align_h.S: Use <> instead of "" for include files.
|
|
* clock/clock.c: Use shared clock driver shell.
* console/console.c: Removed. Now use shared polling shell.
* console/console-io.c: New file.
* console/Makefile.am: Correct to use shared polling shell.
* startup/bspstart.c: Remove all fast idle references.
|
|
* startup/bspstart.c: assoc.h, error.h, libio_.h, libio.h,
and libcsupport.h moved from libc to lib/include/rtems and
now must be referenced as <rtems/XXX.h>. Header file order
was cleaned up while doing this.
|
|
|
|
|
|
is now correct enough where this is not necessary. This was in to
cover up the deficiencies in figuring out how much memory a GNAT/RTEMS
application required. There is a good stab at this now.
|
|
|
|
code in each BSP's bspstart.c. These changes were:
+ confdefs.h now knows libio's semaphore requirements
+ shared/main.c now copies Configuration to BSP_Configuration
+ shared/main.c fills in the Cpu_table with default values
This removed the need for rtems_libio_config() and the constant
BSP_LIBIO_MAX_FDS in every BSP. Plus now the maximum number of open
files can now be set on the gcc command line.
|
|
|
|
to multiple. This lets the stack check extension be installed
at system initialization time and avoids the BSP having to
even know about its existence.
|