diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-04-19 06:35:52 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2018-04-20 09:57:01 +0200 |
commit | 7632906fc290b652416ab59eb5fb49356c064ed6 (patch) | |
tree | ac036b1f95637e044e10138ceea8d2b56d80ec97 /c/src/lib/libbsp/sparc/leon2 | |
parent | bsps: Move bspsmpgetcurrentprocessor.c to bsps (diff) | |
download | rtems-7632906fc290b652416ab59eb5fb49356c064ed6.tar.bz2 |
bsps: Move clock drivers to bsps
This patch is a part of the BSP source reorganization.
Update #3285.
Diffstat (limited to 'c/src/lib/libbsp/sparc/leon2')
-rw-r--r-- | c/src/lib/libbsp/sparc/leon2/Makefile.am | 2 | ||||
-rw-r--r-- | c/src/lib/libbsp/sparc/leon2/clock/ckinit.c | 104 |
2 files changed, 1 insertions, 105 deletions
diff --git a/c/src/lib/libbsp/sparc/leon2/Makefile.am b/c/src/lib/libbsp/sparc/leon2/Makefile.am index 109201561d..4df4cd917f 100644 --- a/c/src/lib/libbsp/sparc/leon2/Makefile.am +++ b/c/src/lib/libbsp/sparc/leon2/Makefile.am @@ -45,7 +45,7 @@ librtemsbsp_a_SOURCES += ../shared/gnatcommon.c librtemsbsp_a_SOURCES += console/console.c librtemsbsp_a_SOURCES += console/debugputs.c # clock -librtemsbsp_a_SOURCES += clock/ckinit.c +librtemsbsp_a_SOURCES +=../../../../../../bsps/sparc/leon2/clock/ckinit.c # IRQ librtemsbsp_a_SOURCES += ../shared/irq/genirq.c librtemsbsp_a_SOURCES += ../shared/irq/irq-shared.c diff --git a/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c b/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c deleted file mode 100644 index 84577d4b57..0000000000 --- a/c/src/lib/libbsp/sparc/leon2/clock/ckinit.c +++ /dev/null @@ -1,104 +0,0 @@ -/** - * @file - * @ingroup sparc_leon2 - * @brief Clock Tick Device Driver - * - * This routine initializes LEON timer 1 which used for the clock tick. - * - * The tick frequency is directly programmed to the configured number of - * microseconds per tick. - */ - -/* - * COPYRIGHT (c) 1989-2008. - * On-Line Applications Research Corporation (OAR). - * - * Modified for LEON BSP - * COPYRIGHT (c) 2004. - * Gaisler Research. - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.rtems.org/license/LICENSE. - */ - -#include <bsp.h> -#include <bspopts.h> -#include <rtems/timecounter.h> -#include <rtems/score/sparcimpl.h> - -static rtems_timecounter_simple leon2_tc; - -static uint32_t leon2_tc_get( rtems_timecounter_simple *tc ) -{ - return LEON_REG.Timer_Counter_1; -} - -static bool leon2_tc_is_pending( rtems_timecounter_simple *tc ) -{ - return LEON_Is_interrupt_pending( LEON_INTERRUPT_TIMER1 ); -} - -static uint32_t leon2_tc_get_timecount( struct timecounter *tc ) -{ - return rtems_timecounter_simple_downcounter_get( - tc, - leon2_tc_get, - leon2_tc_is_pending - ); -} - -static void leon2_tc_at_tick( rtems_timecounter_simple *tc ) -{ - /* Nothing to do */ -} - -static void leon2_tc_tick( void ) -{ - rtems_timecounter_simple_downcounter_tick( - &leon2_tc, - leon2_tc_get, - leon2_tc_at_tick - ); -} - -/* - * The Real Time Clock Counter Timer uses this trap type. - */ - -#define CLOCK_VECTOR LEON_TRAP_TYPE( LEON_INTERRUPT_TIMER1 ) - -#define Clock_driver_support_install_isr( _new ) \ - set_vector( _new, CLOCK_VECTOR, 1 ) - -extern int CLOCK_SPEED; - -#define Clock_driver_support_initialize_hardware() \ - do { \ - LEON_REG.Timer_Reload_1 = \ - rtems_configuration_get_microseconds_per_tick() - 1; \ - \ - LEON_REG.Timer_Control_1 = ( \ - LEON_REG_TIMER_COUNTER_ENABLE_COUNTING | \ - LEON_REG_TIMER_COUNTER_RELOAD_AT_ZERO | \ - LEON_REG_TIMER_COUNTER_LOAD_COUNTER \ - ); \ - rtems_timecounter_simple_install( \ - &leon2_tc, \ - 1000000, \ - rtems_configuration_get_microseconds_per_tick(), \ - leon2_tc_get_timecount \ - ); \ - } while (0) - -#define Clock_driver_support_shutdown_hardware() \ - do { \ - LEON_Mask_interrupt( LEON_INTERRUPT_TIMER1 ); \ - LEON_REG.Timer_Control_1 = 0; \ - } while (0) - -#define Clock_driver_timecounter_tick() leon2_tc_tick() - -#include "../../../shared/clockdrv_shell.h" - -SPARC_COUNTER_DEFINITION; |