summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/i386 (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsps: Move bspclean.c to bspsSebastian Huber2018-04-201-1/+1
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Move tod.c to bsps and renameSebastian Huber2018-04-161-1/+1
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* build: Remove subdir-objects from BSP configure.acSebastian Huber2018-04-121-1/+1
| | | | | | | The subdir-objects do not work currently due to BSP sources in bsps and c and the existing build tree layout. Update #3387.
* bsps: Remove empty gnatinstallhandler.cSebastian Huber2018-04-121-1/+0
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Move bootcard.c to bspsSebastian Huber2018-04-121-1/+0
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Simplify source file path in Makefile.amSebastian Huber2018-04-121-15/+15
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Remove headers from librtemsbsp_a_SOURCESSebastian Huber2018-04-121-3/+0
| | | | | | | | This was used by the not supported "make dist". This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Avoid line continuation in Makefile.amSebastian Huber2018-04-121-1/+2
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Move legacy console driver to bspsSebastian Huber2018-04-1211-13/+11
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* configure: Add subdir-objects to all automake flags.Chris Johns2018-04-113-3/+3
| | | | | | | | | | | This option silences warning with automake-1.16.1 allowing us to upgrade to that version. This change has been tested with automake-1.12.6 and automake-1.16.1. It seems version 1.16.1 configures slower than 1.12.6 for the same source and BSP. The newer versions is 6 second slower. Close #3387.
* build: Remove DISTCLEANFILESSebastian Huber2018-04-091-1/+0
| | | | | A "make distclean" is not supported. So, it makes no sense to have pure "make distclean" related stuff in the Makefile.am.
* bsps: Move generic IRQ support to bspsSebastian Huber2018-04-091-6/+2
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Remove librtemsbsp.a wrapupSebastian Huber2018-04-091-83/+83
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Move config macros to RTEMS_BSP_CONFIGURESebastian Huber2018-04-041-7/+0
| | | | | | | | Provide HAS_NETWORKING and HAS_SMP Automake conditionals for all BSPs. This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Add shared-sources.amSebastian Huber2018-04-041-0/+1
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* build: Remove EXTRA_DISTSebastian Huber2018-04-043-23/+0
| | | | | A "make dist" is not supported. So, it makes no sense to have pure "make dist" related stuff in the Makefile.am.
* bsp/pc386: Remove unused RTEMS_CPU_MODELSebastian Huber2018-03-266-13/+0
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsp/pc386: Fix buildSebastian Huber2018-03-261-4/+1
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* bsp/pc386: Move libcpu content to bspsSebastian Huber2018-03-221-0/+4
| | | | | | This patch is a part of the BSP source reorganization. Update #3285.
* i386/smp: Export _CPU_SMP_Prepare_start_multitasking as a functionAmaan Cheval2018-03-161-0/+5
| | | | | | | | | | When it's a macro, a function declaration causes a compiler error due to the macro being expanded. Partial log showing error: https://gist.github.com/AmaanC/ab3521141479aa6f61ea25f5d74ebb4d Closes #3331
* i386/smp: Have ld use incremental build for appstart.oAmaan Cheval2018-03-161-1/+1
| | | | | | | | | | | | | | | | | | With HAS_SMP set, we have: libbsp_a_LIBADD += appstart.$(OBJEXT) When trying to build appstart.o, however, we link start.o with appcpustart.o through the linkcmds script, which leaves several symbols unresolved, and without the "-r" (or -i) flag, this throws undefined reference errors. This change requires us to re-run the ./bootstrap script to regenerate Makefile.in, and therefore the Makefile for the particular BSP as well. Complete log of errors available here: https://gist.github.com/AmaanC/d40bd7393dca1f82965938275845b7f9 Updates #3331
* bsps: Rework cache manager implementationSebastian Huber2018-01-311-2/+3
| | | | | | | | | | | | | | | | | | The previous cache manager support used a single souce file (cache_manager.c) which included an implementation header (cache_.h). This required the use of specialized include paths to find the right header file. Change this to include a generic implementation header (cacheimpl.h) in specialized source files. Use the following directories and files: * bsps/shared/cache * bsps/@RTEMS_CPU@/shared/cache * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILY/start/cache.c Update #3285.
* bsps: Move network define to source filesSebastian Huber2018-01-315-36/+14
| | | | | Define __INSIDE_RTEMS_BSD_TCPIP_STACK__ in the network interface driver source files to avoid some build system magic.
* Remove make preinstallChris Johns2018-01-2530-3927/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* bsps: Move wd80x3.h to libchip/wd80x3.hSebastian Huber2018-01-225-151/+2
| | | | | | This header is used also by the motorola_powerpc BSP. Update #3254.
* bsp/pc386: Use public include pathChris Johns2018-01-046-6/+6
| | | | Update #3254.
* bsp/pc386: Do not install console_private.hSebastian Huber2018-01-043-6/+1
| | | | | | The name suggests that this is a private implementation header file. Update #3254.
* bsps: Use CPPASCOMPILE for startfileSebastian Huber2018-01-021-3/+4
| | | | Update #3254.
* bsps: Add EXTRA_DIST to all BSP Makefile.amSebastian Huber2018-01-021-1/+2
| | | | | | | | | | This makes it possible to easily use EXTRA_DIST += foobar in fragments. Update #3254.
* bsps: Include bsp.am in all BSP Makefile.amSebastian Huber2018-01-021-0/+1
| | | | Update #3254.
* pc386: Simplify bsp_specsJoel Sherrill2017-12-193-7/+4
| | | | | | | | If this has any issues, check that the change in linking the 16-bit startup code in Makefile.am generates the same code. This was odd code and didn't need the RTEMS linkcmds anyway. Updates #3520.
* pc386/bsp_specs: Reorder and improve consistencyJoel Sherrill2017-11-291-3/+3
| | | | Updates #3520.
* REVERT */*/bsp_specs: Increase similarity to ease futureJoel Sherrill2017-11-271-3/+3
| | | | | | Patch was not intended to be pushed yet. Updates #3520.
* */*/bsp_specs: Increase similarity to ease future analysisJoel Sherrill2017-11-271-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Done: arm bfin epiphany i386 lm32 m32c mips moxie nios2 or1k powerpc riscv sh sparc sparc64 v850 To do: m68k Differences noted: + endfile was sometimes before startfile + endfile sometimes was hard-coded and did not have -qrtems version + Should -e XXX (e.g. entry point) be in linkcmds? + Should -u XXX (e.g. undefined symbols) be in linkcmds? + Typos: Odd spacing, "old_endfiles" typo, and *(old_endfiles) (not %) + nios2: Referenced crtnn.o not crtn.o (error) Need to revisit: + m32c, moxie, sparc64 includes !nostdlib which is not used elsewhere + sh has -EL/-EB mapping. Why needed? + sparc64 didn't include crti.o/crtn.o but it is part of toolset + v850 uses something like this for link and end_file: "%{qrtems: %(old_link)}" This means that these are unnecessary. Try this on all. + mips uses old_link all the time also. + arm/tms750 adds -EB. + powerpc: Why do we have rtems_crt* and not use something from GCC? Updates #3520.
* libbsp/*/*/configure.ac: Remove references to bsp_specs in AC_CONFIG_SRCDIRJoel Sherrill2017-11-271-1/+1
| | | | Updates #3250.
* Remove coverhd.hSebastian Huber2017-11-242-5/+0
| | | | | | | This header file contained timing overhead values which are hard to maintain. Update #3254.
* bsps: Simplify RTEMS_BSP_CLEANUP_OPTIONSSebastian Huber2017-11-221-1/+1
| | | | | | | | | Remove BSP-specific defaults for RTEMS_BSP_CLEANUP_OPTIONS to simplify the BSP configuration and documentation. Change defaults to: BSP_PRESS_KEY_FOR_RESET=0 BSP_RESET_BOARD_AT_EXIT=1 BSP_PRINT_EXCEPTION_CONTEXT=1
* getentropy: Add cpu counter based implementation.Christian Mauderer2017-11-171-0/+1
| | | | Update #3239.
* pc386/.../bspreset.c: Readd proper reset code.Joel Sherrill2017-10-081-2/+2
| | | | | | | The removal of the Edison code removed the wrong part of the conditional. Closes #3172.
* bsps: Clock_driver_support_install_isr()Sebastian Huber2017-09-181-5/+0
| | | | | | | Remove old ISR parameter since is not used by the clock driver shell. Make an implementation optional. Update #3139.
* Simplify and unify BSP_output_charSebastian Huber2017-09-122-6/+0
| | | | | | | | The BSP_output_char should output a char and not mingle with high level processing, e.g. '\n' to '\r\n' translation. Move this translation to rtems_putc(). Remove it from all the BSP_output_char implementations. Close #3122.
* Include missing <limits.h>Sebastian Huber2017-08-252-0/+2
| | | | Update #2132.
* Remove Edison BSP.Joel Sherrill2017-07-2810-189/+3
| | | | | | Intel has obsoleted this hardware and the BSP was never completed. closes #3086.
* bsp/i386: Fix warningSebastian Huber2017-07-281-3/+3
|
* i386/shared/comm/i386-stub-glue.c: Fix duplicate const warningJoel Sherrill2017-06-211-1/+1
|
* bsps: Improve interrupt vector enable/disable APISebastian Huber2017-06-203-20/+7
| | | | | | Change bsp_interrupt_vector_enable() and bsp_interrupt_vector_disable() to not return a status code. Add bsp_interrupt_assert() and use it to validate the vector number in the vector enable/disable implementations.
* i386: Support thread-local storage (TLS)Sebastian Huber2017-06-123-5/+11
| | | | Update #2468.
* build-system: Parallel build all subdirs.Chris Johns2017-05-242-2/+3
|
* termios: Synchronize with latest FreeBSD headersKevin Kirspel2017-03-221-1/+1
| | | | | | | | | | | 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.
* bsps/i386: use Pentimum instructions for pc586 and pc686 builds.Pavel Pisa2016-10-172-2/+2
| | | | | | | | | | | | | | | | | | When GCC option -march is not specifies i386-rtems toolchain defaults to i386 architecture instruction set. It does not provide atomic instructions which results in really inefficient atomic_fetch_or even on UP build. SMP build is broken with i386 set because libatomic and GCC generate infinite loop for __atomic_fetch_add_4 used in rtems_interrupt_lock_acquire __atomic_fetch_add_4: push %ebp mov %esp,%ebp movl $0x5,0x10(%ebp) pop %ebp jmp __atomic_fetch_add_4