forked from Imagelibrary/rtems
mips/clock/ckinit.c: Clean up (may be unused)
This commit is contained in:
@@ -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,31 +67,19 @@ 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
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
@@ -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;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user