From 7632906fc290b652416ab59eb5fb49356c064ed6 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 19 Apr 2018 06:35:52 +0200 Subject: bsps: Move clock drivers to bsps This patch is a part of the BSP source reorganization. Update #3285. --- c/src/lib/libbsp/m68k/gen68340/Makefile.am | 2 +- c/src/lib/libbsp/m68k/gen68340/clock/ckinit.c | 104 -------------------------- 2 files changed, 1 insertion(+), 105 deletions(-) delete mode 100644 c/src/lib/libbsp/m68k/gen68340/clock/ckinit.c (limited to 'c/src/lib/libbsp/m68k/gen68340') diff --git a/c/src/lib/libbsp/m68k/gen68340/Makefile.am b/c/src/lib/libbsp/m68k/gen68340/Makefile.am index 5c72278819..c3df13693d 100644 --- a/c/src/lib/libbsp/m68k/gen68340/Makefile.am +++ b/c/src/lib/libbsp/m68k/gen68340/Makefile.am @@ -28,7 +28,7 @@ librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/setvec.c librtemsbsp_a_SOURCES += startup/dumpanic.c librtemsbsp_a_SOURCES += ../../../../../../bsps/shared/start/bspreset-empty.c # clock -librtemsbsp_a_SOURCES += clock/ckinit.c +librtemsbsp_a_SOURCES +=../../../../../../bsps/m68k/gen68340/clock/ckinit.c # console librtemsbsp_a_SOURCES += console/console.c librtemsbsp_a_SOURCES += console/m340uart.c diff --git a/c/src/lib/libbsp/m68k/gen68340/clock/ckinit.c b/c/src/lib/libbsp/m68k/gen68340/clock/ckinit.c deleted file mode 100644 index e099d91fb6..0000000000 --- a/c/src/lib/libbsp/m68k/gen68340/clock/ckinit.c +++ /dev/null @@ -1,104 +0,0 @@ -/* - * This routine initializes the MC68340/349 Periodic Interval Timer - */ - -/* - * Based on the `gen68360' board support package, and covered by the - * original distribution terms. - * - * Geoffroy Montel - * France Telecom - CNET/DSM/TAM/CAT - * 4, rue du Clos Courtel - * 35512 CESSON-SEVIGNE - * FRANCE - * - * e-mail: g_montel@yahoo.com - */ - -/* - * COPYRIGHT (c) 1989-2014. - * On-Line Applications Research Corporation (OAR). - * - * 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 /* for atexit() */ -#include -#include -#include - -#define CLOCK_VECTOR 120 /* clock isr routine vector in the vbr */ -#define CLOCK_IRQ_LEVEL 6 /* clock isr level */ - -/* - * Clock_driver_ticks is a monotonically increasing counter of the - * number of clock ticks since the driver was initialized. - */ -volatile uint32_t Clock_driver_ticks; - -/* - * Periodic interval timer interrupt handler - */ -static rtems_isr -Clock_isr (rtems_vector_number vector) -{ - /* - * Announce the clock tick - */ - Clock_driver_ticks++; - rtems_clock_tick(); -} - -void -Clock_exit (void) -{ - /* - * Turn off periodic interval timer - */ - SIMPITR = 0; -} - -static void -Install_clock (rtems_isr_entry clock_isr) -{ - uint32_t pitr_tmp; - uint32_t usecs_per_tick; - - Clock_driver_ticks = 0; - - set_vector (clock_isr, CLOCK_VECTOR, 1); - - /* sets the Periodic Interrupt Control Register PICR */ - SIMPICR = ( CLOCK_IRQ_LEVEL << 8 ) | ( CLOCK_VECTOR ); - - /* sets the PITR count value */ - /* this assumes a 32.765 kHz crystal */ - - usecs_per_tick = rtems_configuration_get_microseconds_per_tick(); - /* find out whether prescaler should be enabled or not */ - if ( usecs_per_tick <= 31128 ) { - pitr_tmp = ( usecs_per_tick * 8192 ) / 1000000 ; - } else { - pitr_tmp = ( usecs_per_tick / 1000000 ) * 16; - /* enable it */ - pitr_tmp |= 0x100; - } - - SIMPITR = (unsigned char) pitr_tmp; - - atexit (Clock_exit); -} - -rtems_device_driver -Clock_initialize( - rtems_device_major_number major, - rtems_device_minor_number minor, - void *pargp -) -{ - Install_clock (Clock_isr); - - return RTEMS_SUCCESSFUL; -} -- cgit v1.2.3