| Commit message (Collapse) | Author | Files | Lines |
|
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
This patch is a part of the BSP source reorganization.
Update #3285.
|
|
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.
|
|
Adding modified FreeBSD headers to synchronize RTEMS termios with
FreeBSD. Modify termios to support dedicated input and output baud for
termios structure. Updated BSPs to use dedicated input and output baud
in termios structure. Updated tools to use dedicated input and output
baud in termios structure. Updated termios testsuites to use dedicated
input and output baud in termios structure.
Close #2897.
|
|
This type is not relevant for the code since only a pointer is passed
around.
Update #2809.
|
|
close 1405
|
|
|
|
|
|
This change starts with removing the effectively empty file
timerdrv.h. The prototypes for benchmark_timer_XXX() were in
btimer.h which was not universally used. Thus every use of
timerdrv.h had to be changed to btimer.h. Then the prototypes
for benchmark_timer_read() had to be adjusted to return
benchmark_timer_t rather than int or uint32_t.
I took this opportunity to also correct the file headers to
separate the copyright from the file description comments which
is needed to ensure the copyright isn't propagated into Doxygen
output.
|
|
|
|
Termios notifies now the driver about an inactive transmit with the
length argument set to zero.
|
|
|
|
This file was originally modified by me to support the PPC440 of the virtex5
BSP. I have since discovered that the clock driver built with the MVME3100
BSP works out of the box for the virtex5 and so have switched to using that.
This file is reverted to the way it was before I touched it, modulo whitespace,
making some functions static (to avoid compiler warnings) and changes by others.
|
|
|
|
These modifications were required by hand after running the script.
In some cases, the file names did not match patterns. In others,
the format of the file did not match any common patterns.
|
|
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.
|
|
This commit covers at least PR2020, 2022, and 2023. This
patch adds all of the code for both BSPs, modifications
to libcpu/powerpc for the ppc440, and some updates to the
BSPs from follow up review and testing.
These BSPs should be good baselines for future development.
The configurations used by Ric are custom and have a non-standard
NIC. They also do not have a UART. Thus the current console
driver just prints to a RAM buffer.
The NIC and UART support are left for future work. When the UART
support is added, moving the existing "to RAM" console driver to
a shared location is likely desirable because boards with no debug
UART port are commonly deployed. This would let printk() go to RAM.
|
|
* ppc403/clock/clock.c (ClockOn): Define pvr only for "ifndef ppc405".
|
|
* ppc403/clock/clock.c (Install_clock): Remove unused var "pvr".
|
|
* e500/mmu/mmu.c, mpc505/ictrl/ictrl.c, mpc505/timer/timer.c,
mpc5xx/ictrl/ictrl.c, mpc5xx/timer/timer.c,
mpc6xx/altivec/vec_sup.c, mpc6xx/clock/c_clock.c,
mpc6xx/mmu/bat.c, mpc6xx/mmu/bat.h, mpc6xx/mmu/pte121.c,
mpc8260/timer/timer.c, mpc8xx/timer/timer.c, new-exceptions/cpu.c,
new-exceptions/bspsupport/ppc_exc_initialize.c,
ppc403/clock/clock.c, ppc403/console/console.c,
ppc403/console/console.c.polled, ppc403/console/console405.c,
ppc403/irq/ictrl.c, ppc403/tty_drv/tty_drv.c,
rtems/powerpc/cache.h, shared/include/powerpc-utility.h, shared/src/cache.c:
Use "__asm__" instead of "asm" for improved c99-compliance.
|
|
* ppc403/clock/clock.c, ppc403/console/console405.c,
ppc403/tty_drv/tty_drv.c: Remove warnings and simple vectored
interrupt support.
|
|
|
|
|
|
|
|
|
|
* mpc5xx/clock/clock.c, mpc6xx/clock/c_clock.c, mpc8260/clock/clock.c,
mpc8xx/clock/clock.c, ppc403/clock/clock.c, ppc403/clock/clock_4xx.c:
The Shared Memory Driver no longer requires the special IOCTL in
Clock_control. This was a hack which has existed since before the
Classic API Timer Manager was implemented. All implementations of and
references to Clock_control were removed.
|
|
|
|
|
|
* mpc505/timer/timer.c, mpc5xx/timer/timer.c, mpc6xx/timer/timer.c,
mpc8260/timer/timer.c, mpc8xx/timer/timer.c, ppc403/timer/timer.c:
Rename timer driver methods to follow RTEMS programming conventions.
|
|
|
|
* ppc403/clock/clock.c: Added (conditionally compiled)
code so that a BSP can choose to hook the timer exception
directly rather than going through the interrupt dispatcher.
|
|
|
|
* ChangeLog, mpc8xx/clock/clock.c, ppc403/clock/clock.c,
ppc403/irq/ictrl.h, rtems/powerpc/powerpc.h:
Removed all macro definitions which depended on
the compiler defining a PPC CPU-model dependent
symbol from files in cpukit.
Macros which were not used by cpukit have been
moved to libcpu/powerpc/rtems/powerpc/powerpc.h.
|
|
* ppc403/tty_drv/tty_drv.c, ppc403/console/console405.c:
../ictrl/ictrl.h has gone; include ../irq/ictrl.h
|
|
* ppc403/console/console.c: Correct include path.
|
|
|
|
* ppc403/clock/clock.c: Now compiles and links.
|
|
* mpc5xx/clock/clock.c, mpc5xx/timer/timer.c, mpc8260/clock/clock.c,
mpc8260/cpm/brg.c, mpc8260/timer/timer.c, mpc8xx/clock/clock.c,
mpc8xx/console-generic/console-generic.c, mpc8xx/timer/timer.c,
new-exceptions/raw_exception.c, old-exceptions/cpu.c,
ppc403/clock/clock.c, ppc403/console/console.c,
ppc403/console/console.c.polled, ppc403/console/console405.c,
ppc403/ictrl/ictrl.c, ppc403/irq/ictrl.c, ppc403/timer/timer.c,
ppc403/tty_drv/tty_drv.c: Eliminate PowerPC specific elements from
the CPU Table. They have been replaced with variables named bsp_XXX
as needed.
|
|
PR 1257/bsps
* mpc5xx/exceptions/raw_exception.c, mpc5xx/irq/irq.c,
mpc6xx/exceptions/raw_exception.c,
mpc8260/exceptions/raw_exception.c,
mpc8xx/exceptions/raw_exception.c, new-exceptions/raw_exception.c,
ppc403/ictrl/ictrl.c, ppc403/irq/ictrl.c: Code outside of cpukit
should use the public API for
rtems_interrupt_disable/rtems_interrupt_enable. By bypassing the
public API and directly accessing _CPU_ISR_Disable and
_CPU_ISR_Enable, they were bypassing the compiler memory barrier
directive which could lead to problems. This patch also changes the
type of the variable passed into these routines and addresses minor
style issues.
|
|
exception handling
|
|
|
|
|
|
* ppc403/console/console405.c: Rename round to spiBaudRound
(Conflict with C99). Make spiBaudRound static.
|
|
|
|
* mpc505/vectors/vectors.S, ppc403/vectors/vectors.S:
Remove PPC_ABI_POWEROPEN.
|
|
* mpc505/vectors/vectors.S, ppc403/vectors/vectors.S:
Remove PPC_ABI_GCC27.
|
|
* ppc403/vectors/vectors.S: Remove XCOFF support.
|
|
* mpc505/Makefile.am, mpc5xx/Makefile.am, mpc6xx/Makefile.am,
mpc8260/Makefile.am, mpc8xx/Makefile.am, ppc403/Makefile.am,
shared/Makefile.am: Eliminate CFLAGS_OPTIMIZE_V.
|