source: anotherchoice/tags/jsp-1.4.4-full-UTF8/config/ia32/pcat/hw_timer.h@ 26

Last change on this file since 26 was 26, checked in by ykominami, 12 years ago

initial

File size: 3.8 KB
RevLine 
[26]1/*
2 * TOPPERS/JSP Kernel
3 * Toyohashi Open Platform for Embedded Real-Time Systems/
4 * Just Standard Profile Kernel
5 *
6 * Copyright (C) 2000,2001 by Embedded and Real-Time Systems Laboratory
7 * Toyohashi Univ. of Technology, JAPAN
8 * Copyright (C) 2002 by Monami software, Limited Partners.
9 * Copyright (C) 2002 by MURANAKA Masaki
10 * Copyright (C) 2008- by Monami Software Limited Partnership, JAPAN
11 *
12 * 上記著作権者
13は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
14 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
15 * 変・再é…
16å¸ƒï¼ˆä»¥ä¸‹ï¼Œåˆ©ç”¨ã¨å‘¼ã¶ï¼‰ã™ã‚‹ã“とを無償で許諾する.
17 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
18 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
19 * スコード中に含まれていること.
20 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
21 * 用できる形で再é…
22å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œå†é…
23å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨
24 * 者
25マニュアルなど)に,上記の著作権表示,この利用条件および下記
26 * の無保証規定を掲載すること.
27 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
28 * 用できない形で再é…
29å¸ƒã™ã‚‹å ´åˆã«ã¯ï¼Œæ¬¡ã®ã„ずれかの条件を満たすこ
30 * と.
31 * (a) 再é…
32å¸ƒã«ä¼´ã†ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆï¼ˆåˆ©ç”¨è€…
33マニュアルなど)に,上記の著
34 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
35 * (b) 再é…
36å¸ƒã®å½¢æ…
37‹ã‚’,別に定める方法によって,TOPPERSプロジェクトに
38 * 報告すること.
39 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
40 * 害からも,上記著作権者
41およびTOPPERSプロジェクトをå…
42è²¬ã™ã‚‹ã“と.
43 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
44 * 由に基づく請求からも,上記著作権者
45およびTOPPERSプロジェクトを
46 * å…
47è²¬ã™ã‚‹ã“と.
48 *
49 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者
50お
51 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
52 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
53 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
54 * の責任を負わない.
55 *
56 * @(#) $Id: hw_timer.h,v 1.1 2004/07/21 02:49:36 monaka Exp $
57 */
58
59/*
60 * ターゲット依存タイマモジュール(PC/AT用)
61 */
62
63#ifndef _HW_TIMER_H_
64#define _HW_TIMER_H_
65
66#include <s_services.h>
67#include <irc.h>
68
69/*
70 * タイマ割込みハンドラのベクタ番号
71 */
72#define INHNO_TIMER PIT_INHNO
73
74#ifndef _MACRO_ONLY
75
76/*
77 * タイマの起動処理
78 *
79 * タイマを初期化し,周期的なタイマ割込み要求を発生させる.
80 */
81Inline void
82hw_timer_initialize()
83{
84 static const int count = (UD)14318180 * TIC_NUME / 12 / 1000 / TIC_DENO;
85 assert(2 <= count && count <= 0x10000);
86 sil_wrb_iop((VP)0x43, 0x34);
87 sil_wrb_iop((VP)0x40, count & 0xff);
88 sil_wrb_iop((VP)0x40, count >> 8);
89
90 irc_ena_irq(TO_INTNO(PIT_INHNO));
91}
92
93/*
94 * タイマ割込み要求のクリア
95 */
96Inline void
97hw_timer_int_clear()
98{
99}
100
101/*
102 * タイマの停止処理
103 *
104 * タイマの動作を停止させる.
105 */
106Inline void
107hw_timer_terminate()
108{
109 irc_dis_irq(TO_INTNO(PIT_INHNO));
110}
111
112#endif /* _MACRO_ONLY */
113
114#endif /* _HW_TIMER_H_ */
Note: See TracBrowser for help on using the repository browser.