From 07b3693f175a0a601a53cba656940aaec8bd9949 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 28 Aug 1998 13:21:53 +0000 Subject: Base files --- doc/bsp_howto/clock.t | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 doc/bsp_howto/clock.t (limited to 'doc/bsp_howto/clock.t') diff --git a/doc/bsp_howto/clock.t b/doc/bsp_howto/clock.t new file mode 100644 index 0000000000..403192fd32 --- /dev/null +++ b/doc/bsp_howto/clock.t @@ -0,0 +1,38 @@ +@chapter = The Clock Driver + +@subsection = Introduction + +The clock driver aims at giving a steady time basis to the kernel, so that +the RTEMS primitives that need a clock tick work properly. + +The clock driver is located in the clock directory of the BSP. + +@subsection = Primitives + +@subsection = Initialization + +The major and minor numbers of the clock driver can be made available to +the others, such as the Shared Memory Driver. + +Then you have to program your integrated processor periodic interval timer +so that an interrupt is generated every m microseconds, where m = +BSP_Configuration.microseconds_per_tick. Sometimes the periodic interval +timer can use a prescaler so you have to look carefully at your user's +manual to determine the correct value. + +You must use the RTEMS primitive to put your clock interrupt routine in +the VBR: + +@example +rtems_interrupt_catch (InterruptHandler, CONSOLE_VECTOR, &old_handler); +@end example + +@subsection = The clock interrupt subroutine + +It only has to inform the kernel that a ticker has elapsed, so call : + +@example +rtems_clock_tick(); +@end example + -- cgit v1.2.3