| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
Adjust build support files to new directory layout.
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A speciality of the RTEMS build system was the make preinstall step. It
copied header files from arbitrary locations into the build tree. The
header files were included via the -Bsome/build/tree/path GCC command
line option.
This has at least seven problems:
* The make preinstall step itself needs time and disk space.
* Errors in header files show up in the build tree copy. This makes it
hard for editors to open the right file to fix the error.
* There is no clear relationship between source and build tree header
files. This makes an audit of the build process difficult.
* The visibility of all header files in the build tree makes it
difficult to enforce API barriers. For example it is discouraged to
use BSP-specifics in the cpukit.
* An introduction of a new build system is difficult.
* Include paths specified by the -B option are system headers. This
may suppress warnings.
* The parallel build had sporadic failures on some hosts.
This patch removes the make preinstall step. All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.
The new cpukit include directories are:
* cpukit/include
* cpukit/score/cpu/@RTEMS_CPU@/include
* cpukit/libnetworking
The new BSP include directories are:
* bsps/include
* bsps/@RTEMS_CPU@/include
* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include
There are build tree include directories for generated files.
The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.
The "bootstrap -p" option was removed. The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.
Update #3254.
|
| |
|
|
|
|
|
| |
This section can be use to provide a cache coherent memory area via
rtems_cache_coherent_add_area().
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
CSB336 i.MX1/i.MXS memory map organization
- SDRAM starts at address 0x08000000 but 2 MB are reserved
for boot-block/loader (or other use) before RTEMS image
origin/load address (that is kept from previous setup)
- Caching of 30 MB of SDRAM used for RTEMS (start at 0x08200000)
is changed to writeback mode which provides higher throughput.
- The first 1 MB of RTEMS dedicated SDRAM is remapped to address 0
to provide area for ARM CPU exceptions table.
- Internal registers and rest of the Flash (above 1 MB) are mapped
one to one. Registers region is extended to 2 MB to cover
eSRAM found on i.MX1 chip variant.
- The first two megabytes of SDRAM unused by RTEMS are mapped
with attributes to allow specific purposes.
- the first MB (at address 0x08000000) is nocached to allow
directly set some values read by booot-block after warm reset
- the second MB (at address 0x08100000) is set for write-through
caching. That allows to use memory for LCD frame-buffer without
need to flush cache after each redraw.
Jump to start provided at address 0x08200000 allows
to load application image even as plain binary file
and start it by jump to image start address.
Signed-off-by: Pavel Pisa <ppisa@pikron.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The initial region (64 bytes) of SDRAM RTEMS image is remapped
to provide overlay of the initial/ROM exceptions table.
This area cannot be used for MMU mapping table. Different correctly
aligned block has to be used for MMU table. Remapping of SDRAM
(address 0x08200000) to address 0 is supported only on 1 MB block
granularity and that is why SDRAM_VEC area has to be 1 MB aligned too
but unused part of remapped region can be freely used for other
purposes (as MMU tables).
Signed-off-by: Pavel Pisa <ppisa@pikron.com>
|
| |
|
|
|
|
|
| |
Replace the "NIRVANA" region with the more verbose "UNEXPECTED_SECTIONS"
region. Move the region definition into the "linkcmds.base" files.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Many files had an extra blank line in the license text
found in the file header. This patch removes that line.
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
*
* http://www.rtems.com/license/LICENSE.
The script that did this also turned off execute permission
when it was turned on incorrectly.
|
| |
|
|
|
|
|
| |
* startup/bspstart.c:
Use "__asm__" instead of "asm" for improved c99-compliance.
|
|
|
|
|
| |
* bsp_specs, start/start.S, startup/linkcmds: Use linker command base
file.
|
|
|
|
|
|
|
| |
* Makefile.am, preinstall.am: Added generic interrupt support modules.
* include/bsp.h: Define BSP_FEATURE_IRQ_EXTENSION.
* startup/bspstart.c, console/uart.c, network/network.c: Interrupt
support changes.
|
| |
|
|
|
|
|
| |
* Makefile.am: Remove junk bsp_reset().
* startup/bspreset.c: Removed.
|
|
|
|
| |
* startup/bspclean.c: Removed.
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am, configure.ac, console/uart.c, startup/bspclean.c,
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.
|
|
|
|
|
| |
* Makefile.am, startup/linkcmds: Use top level shared
bsp_get_work_area() implementation.
|
|
|
|
|
| |
* startup/bspstart.c: Remove unnecessary includes of
rtems/libcsupport.h and rtems/libio.h.
|
|
|
|
|
|
|
| |
* Makefile.am, configure.ac, startup/bspstart.c: Split out
bsp_get_work_area() into its own file and user BSP Framework to
perform more initialization. Let edb7312 and csb336 shared the
implementation.
|
|
|
|
|
|
|
| |
* Makefile.am: No BSP should use exit.c as a file name. exit() is POSIX
routine.
* startup/bspclean.c: New file.
* startup/exit.c: Removed.
|
|
|
|
| |
* startup/exit.c: Add missing prototypes.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* csb336/startup/bspstart.c, csb337/startup/bspstart.c,
edb7312/startup/bspstart.c, gba/startup/bspstart.c,
gp32/startup/bspstart.c, rtl22xx/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.
|
|
|
|
|
| |
* startup/linkcmds: Add wildcard to gcc_except_table section so
programs compiled with gcc 4.3.x can link.
|
|
|
|
|
|
| |
* 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: Eliminate maximum_drivers configuration parameter
since it was used to configure a no longer used feature. Device names
are now part of the filesystem not in a table.
|
|
|
|
|
|
|
|
| |
* include/bsp.h, network/lan91c11x.c, network/lan91c11x.h,
network/network.c, start/start.S, startup/bspstart.c, startup/exit.c,
startup/linkcmds, startup/memmap.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.
|
|
|
|
|
|
| |
* startup/bspstart.c: Remove assignments of
Cpu_table.do_zero_of_workspace to TRUE since TRUE is the default
value in boot_card.c
|
|
|
|
|
| |
* startup/linkcmds: Removed unnecessary global definition of
bsp_vector_table.
|
|
|
|
| |
* startup/bspstart.c: Fixed PLL calculations.
|
|
|
|
|
| |
* Makefile.am, console/uart.c, startup/exit.c: Changed UART
driver to be interrupt driven, added support for both UARTs.
|
|
|
|
|
| |
* start/start.S, startup/linkcmds: Defined UNDEF exception
stack space.
|
|
|
|
| |
* startup/bspstart.c, startup/exit.c: Remove warnings.
|
|
|
|
|
| |
* startup/linkcmds: Add .gnu.linkonce.b section and account for memory
area being named sdram NOT RAM.
|
|
|
|
| |
* startup/bspstart.c: Use POSIX fixed size types.
|
|
|
|
|
| |
* console/.cvsignore, include/.cvsignore, network/.cvsignore,
start/.cvsignore, startup/.cvsignore: New files.
|
|
* ChangeLog, Makefile.am, README, bsp_specs, configure.ac, times,
console/uart.c, include/bsp.h, include/tm27.h, network/lan91c11x.c,
network/lan91c11x.h, network/network.c, start/start.S,
startup/bspstart.c, startup/exit.c, startup/linkcmds,
startup/memmap.c: New files.
|