| 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.
|
|
|
|
| |
Update #3339.
|
|
|
|
|
|
|
|
|
| |
Use only one timer driver variant based on the standard PowerPC time
base.
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The only consumer of this variable was the ppc403 clock driver used by
the
* haleakala,
* virtex, and
* virtex4
BSPs which set bsp_timer_internal_clock unconditionally to true.
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.
|
|
|
|
|
|
| |
Avoid name conflicts with shared linkcmds.base.
Update #3254.
|
|
|
|
|
|
|
|
|
|
| |
Simplify bsp_specs
These BSPs all use shared/startup/linkcmds.base and thus needed to be
modified at the same time. Variations in the arguments were reflected
into the BSP specific portions of the linkcmds.
Updates #3520.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
Fix broken RTEMS linker set description introduced by
b618d8cfc54f84d4ed03dc7b7fa510c872e6128a.
|
|
|
|
| |
Update #2408.
|
|
|
|
| |
close #2211
|
| |
|
| |
|
|
|
|
|
| |
The TLS section symbols had wrong values in case of an empty TLS data
section and a nonempty TLS BSS section.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The work areas (RTEMS work space and C program heap) will be initialized
now in a separate step and are no longer part of
rtems_initialize_data_structures(). Initialization is performed with
tables of Heap_Area entries. This allows usage of scattered memory
areas present on various small scale micro-controllers.
The sbrk() support API changes also. The bsp_sbrk_init() must now deal
with a minimum size for the first memory chunk to take the configured
work space size into account.
|
| |
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
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.
|
|
|
|
| |
* configure.ac, startup/bspstart.c: Use standard cache BSP options.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
PR 1435/bsps
* Makefile.am: Use shared implementation of bsp_idle_thread().
* startup/bspidle.c: Removed.
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
| |
* startup/bspgetworkarea.c: Switch from ssize_t to uintptr_t for
bsp_get_work_area() since the work area is larger than a single
allocatable object.
|
|
|
|
| |
* startup/start.S: Update for boot_card command line change.
|
|
|
|
|
| |
* startup/bspstart.c: Change prototype of IDLE thread to consistently
return void * and take a uintptr_t argument.
|
|
|
|
|
|
| |
* startup/bspgetworkarea.c: Change size_t to ssize_t on
bsp_get_work_area(). On 16-bit architectures, size_t can be 16-bits
which would limit the work area to 64K.
|
|
|
|
|
|
| |
* Makefile.am, startup/bspstart.c: Split out bsp_get_work_area() into
its own file and use BSP Framework to perform more initialization.
* startup/bspgetworkarea.c: New file.
|
|
|
|
|
| |
added port init, added phy support
init mmu
|
| |
|
|
|