summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.h (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove make preinstallChris Johns2018-01-251-1045/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* shared vmeUniverse: Improve DoxygenSzkocsovszki Zsolt2014-01-081-4/+15
|
* Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill2012-05-111-1/+0
| | | | | | | | | | | | 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.
* Whitespace removal.Ralf Corsepius2009-11-301-28/+28
|
* PR 1302/bspsRalf Corsepius2008-09-021-14/+0
| | | | Remove _VME_UNIVERSE_DECLARE_SHOW_ROUTINES.
* 2007-01-30 Till Straumann <strauman@slac.stanford.edu>Till Straumann2007-01-311-13/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * vmeUniverse/README.porting, vmeUniverse/README.universe: updated, added more information for BSP implementors. * vmeUniverse/VMEDMA.h (added): VME DMA API definition. * vmeUniverse/bspVmeDmaList.h (added), vmeUniverse/bspVmeDmaListP.h (added), * vmeUniverse/bspVmeDmaList.c (added): Driver-independent code for linked-list DMA (public + private headers, implementation). * vmeUniverse/vmeUniverseDMA.h (added), vmeUniverse/vmeTsi148DMA.h (added): interface to new DMA features of drivers. * vmeUniverse/vme_amd_defs.h: Added definition for data-width hint bits (VME_MODE_DBWxx). * vmeUniverse/vmeTsi148.c: added DMA support. Added support for data-width hint/modifier bits. * vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h: Added support for data-width hint/modifier bits. Added support for xxx_BLT, xxx_MBLT address modifiers. Restrict DBW to 32 in non-MBLT modes (except single-beat; a comment is in README.universe). Updated DMA support to implement new VMEDMA.h API. Added support for non-incrementing VME addresses. Restrict data width to 32 for single-beat AMs when the universe would use MBLT for DMA.
* 2007-01-16 Till Straumann <strauman@slac.stanford.edu>Till Straumann2007-01-171-4/+46
| | | | | | | * vmeUniverse/vmeTsi148.c, vmeUniverse/vmeTsi148.h, * vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h, * vmeUniverse/vme_am_defs.h: Added SLAC/Stanford Authorship Note / Copyright + Liability Disclaimer.
* * vmeUniverse/vme_am_defs.h: Added address modifiers for 2eVME. AddedTill Straumann2006-12-131-136/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | flags for 2eSST and DBW16. * vmeUniverse/vmeUniverse.h: Removed AM definitions and include vme_am_defs.h instead. Declare new routine vmeUniverseMapCRG(). Export 'irq manager' API only if __INSIDE_RTEMS_BSP__ defined. Renamed 'shared' argument to vmeUniverseInstallIrqMgrAlt() to 'flags' since now more options are available. Added new flag to install 'posted-write' workaround. * vmeUniverse/vmeUniverse.c: Allow BSP to override BSP_PCI2LOCAL_ADDR() macro. Data width of outbound port can now be restricted to 16-bit (if new DBW16 flag set in address modifier). Added vmeUniverseMapCRG() for mapping local registers onto VME. Interrupt manager now implements a workaround (enabled at installation time) which flushes the write-fifo after user ISR returns. This requires the universe's registers to be accessible from VME (either CSR space or CRG mapped to A16/A24/A32), though. * vmeUniverse/vmeTsi148.h: vmeTsi148ClearVMEBusErrors() now returns the fault address as a 32-bit address (not ulonglong anymore). The driver only supports 32-bit addresses. Declare new routine vmeTsi148MapCRG(). Export 'irq manager' API only if __INSIDE_RTEMS_BSP__ defined. Renamed 'shared' argument to vmeTsi148InstallIrqMgrAlt() to 'flags' to allow more options to be supported. Added comments explaining the 'posted-write' workaround implemented by the interrupt manager. * vmeUniverse/vmeTsi148.c: Clear 'SYSFAIL' during initialization. Allow BSP to override BSP_PCI2LOCAL_ADDR() macro. Added support for 2eSST when configuring windows (untested - I have no 2eSST). Added vmeTsi148MapCRG() for mapping local registers onto VME. Implemented 'posted-write' workaround for interrupt manager (consult source for details).
* 2006-01-26 Till Straumann <strauman@slac.stanford.edu>Till Straumann2006-01-271-0/+3
| | | | | | * vmeUniverse/vmeTsi148.c, vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h, vmeUniverse/vme_amd_defs.h: Added 2F address modifier for VME64 CSR access.
* * vmeUniverse/vmeTsi148.c, vmeUniverse/vmeTsi148.h,Till Straumann2006-01-121-0/+10
| | | | | | | | | vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h, vmeUniverse/vme_amd_defs.h: No longer enable posted-writes on master windows (creates race-condition on memory-mapped devices). A new flag allows for signalling that a window maps 'ordinary memory'. Disable VME IRQ level if no handler is registered with interrupting vector.
* 2005-11-04 Till Straumann <strauman@slac.stanford.edu>Till Straumann2005-11-041-48/+316
| | | | | | | | | | | | | | | | | | | | | | | * shared/vmeUniverse/vmeTsi148.c, shared/vmeUniverse/vmeTsi148.h, shared/vmeUniverse/vme_am_defs.h: New files. * Makefile.am, shared/vmeUniverse/README.universe, shared/vmeUniverse/vmeUniverse.c, shared/vmeUniverse/vmeUniverse.h: Several VME related upgrades and fixes, hopefully addressing PR#835: vmeUniverse driver now supports shared interrupts. vmeUniverse now supports up to four wires between universe and PIC. A new irq mgr installation routine has been added allowing to use the new features. (old version is still present for bwd compatibility). Calls have been added to change interrupt routing (e.g., if wires have different priorities at the PIC this feature can be used to configure priorites). Routine for testing VME interrupts has been added (useful during BSP development). A new header defining standard VME address modes has been added so that the VME API doesn't have to #include a particular bridge driver header. For all driver entry points, a 'XX' variant has been added which allows to pass the chip's base address [in case a second universe is sitting on a VME card :-)]. Driver now uses interrupt line as read from PCI config. space (without offset) BSP needs to use PCI fixup if necessary. Added a driver for the tundra tsi148 VME bridge.
* Remove duplicate white lines.Ralf Corsepius2004-04-211-3/+0
|
* Remove stray white spaces.Ralf Corsepius2004-04-211-8/+8
|
* 2003-04-10 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2003-04-101-10/+10
| | | | | | | PR 380/bsps * vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h: make printk format strings compliant with libcpu/printk. minor fixes and lazy init bugfix.
* 2003-02-20 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2003-02-201-16/+76
| | | | | | | PR 349/bsps * shared/README.universe, shared/vmeUniverse/README.porting shared/vmeUniverse/README.universe, shared/vmeUniverse/vmeUniverse.c, shared/vmeUniverse/vmeUniverse.h: Update of the VME universe driver.
* 2001-05-14 Till Straumann <strauman@slac.stanford.edu>Joel Sherrill2002-05-141-0/+662
* vmeUniverse/README.universe, vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h: New files. * Makefile.am: Modified to reflect addition of files. * Per PR214, contributes a driver for the TUNDRA UNIVERSE VME-PCI bridge to libbsp/shared. NOTE: This driver is maintained _outside_ RTEMS by Till. Please forward future modifications to him.