Mercurial > pt1.oyama
annotate driver/pt1_tuner.h @ 18:84ff6ef710ea
- support stdout for output
- changed representation for indefinite recording to '-'
- handles EPIPE error
author | Yoshiki Yazawa <yaz@honeyplanet.jp> |
---|---|
date | Wed, 25 Feb 2009 17:22:31 +0900 |
parents | 07b2fc07ff48 |
children | 98a92ce5382e |
rev | line source |
---|---|
0 | 1 #ifndef __PT1_TUNER_H__ |
2 #define __PT1_TUNER_H__ | |
3 /***************************************************************************/ | |
4 /* チューナ状態定義 */ | |
5 /***************************************************************************/ | |
6 // SLEEPモード設定 | |
7 enum { | |
8 TYPE_SLEEP, | |
9 TYPE_WAKEUP | |
10 }; | |
11 | |
12 // チューナパワーモード設定 | |
13 enum { | |
14 BIT_TUNER, | |
15 BIT_LNB_UP, | |
16 BIT_LNB_DOWN, | |
17 BIT_RESET | |
18 }; | |
19 | |
20 // LNBパワー設定 | |
21 enum{ | |
22 LNB_OFF, // LNB OFF | |
23 LNB_11V, // +11 V | |
24 LNB_15V // +15 V | |
25 | |
26 }; | |
27 enum{ // 電源/ハードウェアリセット | |
28 TUNER_POWER_OFF, // オフ/イネーブル | |
29 TUNER_POWER_ON_RESET_ENABLE, // オン/イネーブル | |
30 TUNER_POWER_ON_RESET_DISABLE // オン/ディセーブル | |
31 }; | |
32 /***************************************************************************/ | |
33 /* チューナ状態定義 */ | |
34 /***************************************************************************/ | |
35 #define MAX_BS_TS_ID 8 // TS-ID取得最大値 | |
36 #define MAX_ISDB_T_INFO 3 // 地デジ階層情報数 | |
37 #define MAX_ISDB_T_INFO_LEN 2 // 地デジ階層情報数 | |
38 /***************************************************************************/ | |
39 /* ISDB-S状態定義 */ | |
40 /***************************************************************************/ | |
41 typedef struct _ISDB_S_CH_TABLE{ | |
42 int channel ; // 入力チャンネル番号 | |
43 int real_chno ; // 実際のテーブル番号 | |
44 int slotno ; // スロット番号 | |
45 }ISDB_S_CH_TABLE ; | |
46 | |
47 /***************************************************************************/ | |
48 /* ISDB-S状態定義 */ | |
49 /***************************************************************************/ | |
50 typedef struct _ISDB_S_TS_ID{ | |
51 __u16 ts_id ; // TS-ID | |
52 __u16 dmy ; // PAD | |
53 __u8 low_mode ; // 低階層 モード | |
54 __u8 low_slot ; // 低階層 スロット数 | |
55 __u8 high_mode ; // 高階層 モード | |
56 __u8 high_slot ; // 高階層 スロット数 | |
57 }ISDB_S_TS_ID; | |
58 typedef struct _ISDB_S_TMCC{ | |
59 ISDB_S_TS_ID ts_id[MAX_BS_TS_ID]; // 相対TS番号nに対するTS ID情報 | |
60 #if 0 | |
61 __u32 indicator; // 変更指示 (5ビット) | |
62 __u32 emergency; // 起動制御信号 (1ビット) | |
63 __u32 uplink; // アップリンク制御情報 (4ビット) | |
64 __u32 ext; // 拡張フラグ (1ビット) | |
65 __u32 extdata[2]; // 拡張領域 (61ビット) | |
66 #endif | |
67 __u32 agc ; // AGC | |
68 __u32 clockmargin ; // クロック周波数誤差 | |
69 __u32 carriermargin ; // キャリア周波数誤差 | |
70 }ISDB_S_TMCC; | |
71 | |
72 // 階層情報 | |
73 typedef struct _ISDB_T_INFO{ | |
74 __u32 mode; // キャリア変調方式 (3ビット) | |
75 __u32 rate; // 畳込み符号化率 (3ビット) | |
76 __u32 interleave; // インターリーブ長 (3ビット) | |
77 __u32 segment; // セグメント数 (4ビット) | |
78 }ISDB_T_INFO; | |
79 | |
80 typedef struct _ISDB_T_TMCC { | |
81 #if 0 | |
82 __u32 sysid; // システム識別 (2ビット) | |
83 __u32 indicator; // 伝送パラメータ切り替え指標 (4ビット) | |
84 __u32 emergency; // 緊急警報放送用起動フラグ (1ビット) | |
85 #endif | |
86 ISDB_T_INFO info[MAX_ISDB_T_INFO]; | |
87 #if 0 | |
88 // カレント情報 | |
89 __u32 partial; // 部分受信フラグ (1ビット) | |
90 __u32 Phase; // 連結送信位相補正量 (3ビット) | |
91 __u32 Reserved; // リザーブ (12ビット) | |
92 #endif | |
93 __u32 cn[2] ; // CN | |
94 __u32 agc ; // AGC | |
95 __u32 clockmargin ; // クロック周波数誤差 | |
96 __u32 carriermargin ; // キャリア周波数誤差 | |
97 }ISDB_T_TMCC; | |
98 /***************************************************************************/ | |
99 /* チューナ状態定義 */ | |
100 /***************************************************************************/ | |
101 extern void settuner_reset(void __iomem *, __u32, __u32); | |
102 extern int tuner_init(void __iomem *, struct mutex *, int); | |
103 extern void set_sleepmode(void __iomem *, struct mutex *, int, int, int); | |
104 | |
105 extern int bs_tune(void __iomem *, struct mutex *, int, int, ISDB_S_TMCC *); | |
106 extern int ts_lock(void __iomem *, struct mutex *, int, __u16); | |
107 | |
108 extern int isdb_t_tune(void __iomem *, struct mutex *, int, int, ISDB_T_TMCC *); | |
109 extern int isdb_t_frequency(void __iomem *, struct mutex *, int, int, int); | |
9
07b2fc07ff48
updated to current driver to support signal strength.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
110 extern int isdb_s_read_signal_strength(void __iomem *, struct mutex *, int); |
07b2fc07ff48
updated to current driver to support signal strength.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
111 extern int isdb_t_read_signal_strength(void __iomem *, struct mutex *, int); |
07b2fc07ff48
updated to current driver to support signal strength.
Yoshiki Yazawa <yaz@honeyplanet.jp>
parents:
0
diff
changeset
|
112 |
0 | 113 #endif |