summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/leon2 (follow)
Commit message (Collapse)AuthorAgeFilesLines
* score: Fix simple timecounter supportSebastian Huber2016-01-271-3/+10
| | | | Close #2502.
* Most bsp.h: Switch to LIBBSP_@CPU@_@BSP_FAMILY@_H for guardJoel Sherrill2015-07-161-2/+2
| | | | | | | | | | | | | | | | | This was done by the following script run from libbsp: find * -name bsp.h | xargs -e grep -l "#ifndef.*_BSP_H" | while read b do echo $b cpu=`echo $b | cut -d'/' -f1 | tr '[:lower:]' '[:upper:]' ` bsp=`echo $b | cut -d'/' -f2 | tr '[:lower:]' '[:upper:]' ` g="LIBBSP_${cpu}_${bsp}_BSP_H" # echo $g sed -e "s/ifndef _BSP_H/ifndef ${g}/" \ -e "s/define _BSP_H/define ${g}/" \ -i $b done
* bsps: Convert clock drivers to use a timecounterAlexander Krutwig2015-05-201-18/+34
| | | | Update #2271.
* DRVMGR: remove struct driver registration funcDaniel Hellstrom2015-04-171-2/+2
|
* DRVMGR: renamed RES_EMPTY to DRVMGR_RES_EMPTYDaniel Hellstrom2015-04-171-1/+1
|
* DRVMGR: KEY_TYPE now a enum drvmgr_ktDaniel Hellstrom2015-04-171-4/+4
|
* sparc bsps: updated license to rtems.orgDaniel Hellstrom2015-04-172-2/+2
|
* LEON: converted AT697,GRPCi,GRPCI2,PCIF to BSD headerDaniel Hellstrom2015-04-171-3/+0
|
* LEON: move driver headers to bsp/ directoryDaniel Hellstrom2015-04-173-162/+162
|
* MCTRL: fix build warnings in MCTRL driverDaniel Hellstrom2015-04-172-0/+5
|
* LEON: added get_resarray_count() helper routineDaniel Hellstrom2015-04-172-0/+6
|
* AT697PCI: fix build warningsDaniel Hellstrom2015-04-174-12/+43
|
* GPTIMER: fix build warningsDaniel Hellstrom2015-04-172-0/+5
|
* GR-RASTA-SPW-ROUTER: fix build warningsDaniel Hellstrom2015-04-172-0/+5
|
* PCIF: fixed build warningsDaniel Hellstrom2015-04-172-0/+5
|
* GRPCI: fixed build warningsDaniel Hellstrom2015-04-172-0/+5
|
* AT697PCI: fix PCI cfg writesDaniel Hellstrom2015-04-171-2/+2
|
* AT697 PCI: abort whhen a peripheral PCI system detectedDaniel Hellstrom2015-04-171-1/+8
|
* LEON PCI: host bridge driver support for probing dev0=AD16Daniel Hellstrom2015-04-171-6/+2
| | | | | | | | Before the LIBPCI didn't probe device0 (AD16), the host bridge drivers used bus=dev=func=0 to internally probe the host bridge's target interface. Now that LIBPCI uses bus=dev=func=0 to access device0, bus=0xff is introduced internally to identify the host bridge target configuration space.
* GR-CPCI-LEON4-N2X: added PCI peripheral driver for PCI deviceDaniel Hellstrom2015-04-172-0/+6
| | | | Interrupts have not been test yet
* LEON: added new drivers to the LEON2/LEON3 BSPsDaniel Hellstrom2015-04-173-0/+139
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most drivers use the Driver Manager for device probing, they work on AMBA-over-PCI systems if PCI is big-endian. New APIs: * GPIO Library, interfaced to GRGPIO * GENIRQ, Generic interrupt service implementation helper New GRLIB Drivers: * ACTEL 1553 RT, user interface is similar to 1553 BRM driver * GR1553 (1553 BC, RT and BM core) * AHBSTAT (AHB error status core) * GRADCDAC (Core interfacing to ADC/DAC hardware) * GRGPIO (GPIO port accessed from GPIO Library) * MCTRL (Memory controller settings configuration) * GRETH (10/100/1000 Ethernet driver using Driver manager) * GRPWM (Pulse Width Modulation core) * SPICTRL (SPI master interface) * GRSPW_ROUTER (SpaceWire Router AMBA configuration interface) * GRCTM (SpaceCraft on-board Time Management core) * SPWCUC (Time distribution over SpaceWire) * GRTC (SpaceCraft up-link Tele core) * GRTM (SpaceCraft down-link Tele Metry core) GR712RC ASIC specific interfaces: * GRASCS * CANMUX (select between OCCAN and SATCAN) * SATCAN * SLINK
* LEON: added network device configuration helper functionDaniel Hellstrom2015-04-172-0/+9
|
* LEON: updated and added PCI peripherals for LEON BSPsDaniel Hellstrom2015-04-176-1025/+65
| | | | | | | | | | | | | | | | | | | | The CCHIP driver is replaced with the GR_701 driver. The RASTA driver is replaced by the GR-RASTA-IO driver. All drivers are now compatible with both LEON2 and LEON3, drivers were initialized directly by the PCI-board drivers are now initialized by the driver manager and therefore does not require the double code created by including for example grcan.c into grcan_rasta.c. The other drivers needs to be updated to the driver manager framework however. Added support for: * GR-701 (only LEON2 before) * GR-RASTA-IO (only LEON2 before) * GR-RASTA-ADCDAC * GR-RASTA-TMTC * GR-RASTA-SPW-ROUTER * GR-TMTC-1553
* LEON2: added support for LEON2-GRLIB systemsDaniel Hellstrom2015-04-171-0/+1
| | | | | | | | | | | In some non-standard designs GRLIB peripherals are used together LEON2. This patch adds a GRLIB amba Plug&Play driver so that AMBA devices can be found from Plug&Play the same way as with the LEON3 BSP. The user is required to add an AMBA-PnP device entry into the LEON2 bus configuration, so that the driver manager unite this driver with the "fake" device and start scanning after AMBA PnP devices.
* LEON: replaced old BSP PCI layer with new generic libpci PCI layerDaniel Hellstrom2015-04-174-736/+663
| | | | | | | | | | | | | | | | | The old code used a limited PCI configuration library, which was duplicated into LEON2 and LEON3 BSP pci.c together with respective Host controller PCI interface. The LEON2 BSP had support for AT697 PCI, and LEON3 for GRPCI PCI Host controller. With this update new PCI Host drivers are added, and all support the new generic PCI Library: * AT697 PCI (LEON2 only) * GRPCI (LEON2-GRLIB and LEON3) * GRPCI2 (LEON2-GRLIB and LEON3) * Actel PCIF GRLIB Wrapper (LEON3 only) The LEON2 BSP is defined as big-endian PCI in bsp.h, since the AT697 supports only big-endian PCI.
* LEON: GPTIMER driver, Timer Library and System Clock for LEON3Daniel Hellstrom2015-04-173-0/+11
| | | | | | | | | | | | | | | | | | | | With this patch the LEON family can access the GRLIB GPTIMER using the Timer library (TLIB). A System Clock driver instead of BSP/clock/ck_init.c is provided using the TLIB. The classic clock driver is split in two parts, clock driver and timer driver. The BSPs need only to fullfill the timer interface instead of the clock interface. Currently only LEON3 uses it. The LEON2 Timer is not ported to TLIB. The GPTIMER driver is implemented using the Driver Manager, so the System Clock Driver is at this point only suitable for LEON3 when the driver manager is initialized during BSP startup. When the DrvMgr is not initialized during startup the standard BSP/clock dirver is used. LEON2 sometimes also needs to access GPTIMER when a off-chip GRLIB AMBA systems is connected, for example AMBA-over-PCI.
* LEON2: implemented AMBA Bus Driver for Driver ManagerDaniel Hellstrom2015-04-174-0/+97
|
* sparc BSPs: implemented libpci IRQ BSP supportDaniel Hellstrom2015-04-171-0/+10
|
* bsp/sparc: Move BSP_ISR_handler to a separate file and rename itDaniel Cederman2015-02-112-0/+4
| | | | | | | This allows it to be wrapped by another function at link-time and can be used to trace interrupts. If not placed in a separate file, the function pointer address used in BSP_shared_interrupt_init will be resolved at compile-time, and the function will not be wrappable.
* bsps/sparc: Fix trap table initializationSebastian Huber2014-12-051-4/+6
| | | | Fixes bug introduced with dff1803cfbec3775fff1b9c34cc707c05494dc3b.
* Update bug report URLSebastian Huber2014-12-051-1/+1
|
* libmisc: More useful default configurationSebastian Huber2014-12-051-1/+0
| | | | | | | | | | | The dummy.c was a de-facto default configuration. Rename it to default-configuration.c. Use unlimited objects and the stack checker. This makes it easier for new RTEMS users which will likely use this file if they just work with the usual main() function as the application entry point. Provide proper arguments for main() using the BSP command line. Add spare user extensions and drivers. Do not initialize the network by default. Delete bspinit.c.
* sparc/leon2: LEON_Is_interrupt_masked for Leon2 in leon.h wrongly definedJiri Gaisler2014-12-021-1/+1
| | | | | Condition needs to be inverted, as a 1 in the mask register means that the interrupt is enabled. Solves ticket #1959 in trac.
* leon2: include <rtems/ringbuf.h> not <ringbuf.h>Joel Sherrill2014-11-231-2/+2
| | | | close #2113
* bsps: Move extern "C" to not cover includesSebastian Huber2014-10-231-4/+4
| | | | Some includes may use C++ and this conflicts if surrounded extern "C".
* sparc/leon2/include/bsp.h: Fix warningsJoel Sherrill2014-10-191-1/+7
|
* sparc/leon2: Fix warningsJoel Sherrill2014-10-138-37/+48
|
* SPARC BSPs: added CPU aware interrupt ctrl operationsDaniel Hellstrom2014-10-091-0/+12
| | | | | | The LEON2 and ERC32 maps the new macros to CPU0 since they do not support SMP. With the LEON3 a specific CPU's interrupt controller registers can be modified using macros.
* erc32,leon2: replace bsp_reset with SPARC fatal handlerDaniel Hellstrom2014-10-061-1/+1
| | | | | Now that a SPARC fatal handler is defined, we no longer need the BSP specific reset routine.
* SPARC: Fatal_halt use source and exit codesDaniel Hellstrom2014-10-062-0/+6
| | | | | | | | | | | | | | | The Fatal_halt handler now have two options, either halt as before or enter system error state to return to debugger or simulator. The exit-code is now also propagated to the debugger which is very useful for testing. The CPU_Fatal_halt handler was split up into two, since the only the LEON3 support the CPU power down. The LEON3 halt now uses the power-down instruction to save CPU power. This doesn't stop a potential watch-dog timer from expiring.
* SPARC: add BSP specific error handlerDaniel Hellstrom2014-10-062-0/+3
| | | | | | | | Instead of calling the system call TA instruction directly it is better paractise to isolate the trap implementation to the system call functions. BSP_fatal_exit() is added.
* SPARC BSPs: remove BSP_fatal_return unreached codeDaniel Hellstrom2014-10-061-2/+0
|
* Use correct prototype of benchmark_timer_read()Joel Sherrill2014-09-161-1/+1
| | | | | | | | | | | | | | 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.
* score: Rename _BSP_Exception_frame_print()Sebastian Huber2014-09-111-1/+1
| | | | | Rename _BSP_Exception_frame_print() to _CPU_Exception_frame_print() to be in line with other CPU port functions.
* Regenerate all preinstall.am files.Joel Sherrill2014-08-281-6/+6
| | | | | Apparently, at some point automake output changed and these were not updated.
* LEON2: enable exception prinout by defaultDaniel Hellstrom2014-06-051-1/+1
|
* score/sparc: Add support for paravirtualizationChristian Mauderer2014-06-031-0/+1
| | | | | | | Guest systems in paravirtualization environments run usually in user mode. Thus it is not possible to directly access the PSR and TBR registers. Use functions instead of inline assembler to access these registers if RTEMS_PARAVIRT is defined.
* bsps/sparc: Change tabs to spaces.Daniel Cederman2014-05-278-279/+279
|
* bsps/sparc: Add copyright and license informationDaniel Cederman2014-05-2710-16/+71
|
* bsps/sparc: Make lines in SPARC BSPs adhere to 80 character limit.Daniel Cederman2014-05-278-90/+156
|