mips/clock/ckinit.c: Clean up (may be unused)

This commit is contained in:
Joel Sherrill
2014-10-12 15:35:52 -05:00
parent a869b37aab
commit 8b6636f974

View File

@@ -1,7 +1,8 @@
/* ckinit.c /*
*
* This file contains the clock driver initialization for the IDT 4650. * This file contains the clock driver initialization for the IDT 4650.
* */
/*
* Author: Craig Lebakken <craigl@transition.com> * Author: Craig Lebakken <craigl@transition.com>
* *
* COPYRIGHT (c) 1996 by Transition Networks Inc. * COPYRIGHT (c) 1996 by Transition Networks Inc.
@@ -30,15 +31,12 @@
/* /*
* Rather than deleting this, it is commented out to (hopefully) help * Rather than deleting this, it is commented out to (hopefully) help
* the submitter send updates. * the submitter send updates.
*
* static char _sccsid[] = "@(#)ckinit.c 08/20/96 1.3\n";
*/ */
#include <stdlib.h> #include <stdlib.h>
#include <rtems.h> #include <rtems.h>
#include <rtems/libio.h> #include <rtems/clockdrv.h>
#define EXT_INT5 0x8000 /* external interrupt 5 */ #define EXT_INT5 0x8000 /* external interrupt 5 */
@@ -49,15 +47,10 @@ extern uint32_t bsp_clicks_per_microsecond;
/* to avoid including the bsp */ /* to avoid including the bsp */
mips_isr_entry set_vector( rtems_isr_entry, rtems_vector_number, int ); mips_isr_entry set_vector( rtems_isr_entry, rtems_vector_number, int );
void Clock_exit( void );
rtems_isr Clock_isr( rtems_vector_number vector );
/* /*
* The interrupt vector number associated with the clock tick device * The interrupt vector number associated with the clock tick device
* driver. * driver.
*/ */
#define CLOCK_VECTOR_MASK EXT_INT5 #define CLOCK_VECTOR_MASK EXT_INT5
#define CLOCK_VECTOR 0x7 #define CLOCK_VECTOR 0x7
@@ -65,7 +58,6 @@ rtems_isr Clock_isr( rtems_vector_number vector );
* Clock_driver_ticks is a monotonically increasing counter of the * Clock_driver_ticks is a monotonically increasing counter of the
* number of clock ticks since the driver was initialized. * number of clock ticks since the driver was initialized.
*/ */
volatile uint32_t Clock_driver_ticks; volatile uint32_t Clock_driver_ticks;
/* /*
@@ -75,42 +67,30 @@ volatile uint32_t Clock_driver_ticks;
* length of time between the user configured microseconds per tick * length of time between the user configured microseconds per tick
* has passed. * has passed.
*/ */
uint32_t Clock_isrs; /* ISRs until next tick */ uint32_t Clock_isrs; /* ISRs until next tick */
/*
* These are set by clock driver during its init
*/
rtems_device_major_number rtems_clock_major = ~0;
rtems_device_minor_number rtems_clock_minor;
/* /*
* The previous ISR on this clock tick interrupt vector. * The previous ISR on this clock tick interrupt vector.
*/ */
rtems_isr_entry Old_ticker; rtems_isr_entry Old_ticker;
void Clock_exit( void );
static uint32_t mips_timer_rate = 0; static uint32_t mips_timer_rate = 0;
/* /*
* Isr Handler * Isr Handler
*/ */
static rtems_isr Clock_isr(
rtems_isr Clock_isr(
rtems_vector_number vector rtems_vector_number vector
) )
{ {
/* /*
* bump the number of clock driver ticks since initialization * bump the number of clock driver ticks since initialization
* *
* determine if it is time to announce the passing of tick as configured * determine if it is time to announce the passing of tick as configured
* to RTEMS through the rtems_clock_tick directive * to RTEMS through the rtems_clock_tick directive
* *
* perform any timer dependent tasks * perform any timer dependent tasks
*/ */
/* refresh the internal CPU timer */ /* refresh the internal CPU timer */
mips_set_timer( mips_timer_rate ); mips_set_timer( mips_timer_rate );
@@ -140,8 +120,7 @@ rtems_isr User_Clock_isr(
* Install a clock tick handleR and reprograms the chip. This * Install a clock tick handleR and reprograms the chip. This
* is used to initially establish the clock tick. * is used to initially establish the clock tick.
*/ */
static void Install_clock(
void Install_clock(
rtems_isr_entry clock_isr rtems_isr_entry clock_isr
) )
{ {
@@ -153,10 +132,10 @@ void Install_clock(
Clock_isrs = rtems_configuration_get_milliseconds_per_tick(); Clock_isrs = rtems_configuration_get_milliseconds_per_tick();
Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 ); Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 );
/* /*
* Hardware specific initialize goes here * Hardware specific initialize goes here
*/ */
mips_timer_rate = rtems_configuration_get_microseconds_per_tick() * mips_timer_rate = rtems_configuration_get_microseconds_per_tick() *
bsp_clicks_per_microsecond; bsp_clicks_per_microsecond;
mips_set_timer( mips_timer_rate ); mips_set_timer( mips_timer_rate );
@@ -165,14 +144,12 @@ void Install_clock(
/* /*
* Schedule the clock cleanup routine to execute if the application exits. * Schedule the clock cleanup routine to execute if the application exits.
*/ */
atexit( Clock_exit ); atexit( Clock_exit );
} }
/* /*
* Clean up before the application exits * Clean up before the application exits
*/ */
void Clock_exit( void ) void Clock_exit( void )
{ {
/* mips: turn off the timer interrupts */ /* mips: turn off the timer interrupts */
@@ -184,7 +161,6 @@ void Clock_exit( void )
* *
* Device driver entry point for clock tick driver initialization. * Device driver entry point for clock tick driver initialization.
*/ */
rtems_device_driver Clock_initialize( rtems_device_driver Clock_initialize(
rtems_device_major_number major, rtems_device_major_number major,
rtems_device_minor_number minor, rtems_device_minor_number minor,
@@ -193,12 +169,5 @@ rtems_device_driver Clock_initialize(
{ {
Install_clock( Clock_isr ); Install_clock( Clock_isr );
/*
* make major/minor avail to others such as shared memory driver
*/
rtems_clock_major = major;
rtems_clock_minor = minor;
return RTEMS_SUCCESSFUL; return RTEMS_SUCCESSFUL;
} }