00001
00002
00003
00004
00005
00006
00007 #ifndef _EDT_OCM_H
00008 #define _EDT_OCM_H
00009
00010
00011
00012
00013
00014 #define OCM_CH0_CONFIG0 0x01010020
00015 #define OCM_CH0_CONFIG1 0x01010021
00016 #define OCM_CH0_STATUS 0x01010022
00017 #define OCM_CH0_TRANSCEIVER 0x01010023
00018 #define OCM_CH0_ENABLE 0x01010024
00019 #define OCM_CH1_CONFIG0 0x01010030
00020 #define OCM_CH1_CONFIG1 0x01010031
00021 #define OCM_CH1_STATUS 0x01010032
00022 #define OCM_CH1_TRANSCEIVER 0x01010033
00023 #define OCM_CH1_ENABLE 0x01010034
00024 #define OCM_FPGA0_LOAD 0x01010040
00025 #define OCM_FPGA1_LOAD 0x01010041
00026 #define OCM_FPGA2_LOAD 0x01010042
00027 #define OCM_FPGA3_LOAD 0x01010043
00028 #define OCM_CH0_RCV_FRAMING 0x01010080
00029 #define OCM_CH0_XMT_FRAMING 0x01010081
00030 #define OCM_CH0_XMT_NATIONAL 0x01010082
00031 #define OCM_CH0_RCV_FILTER 0x01010083
00032 #define OCM_CH0_XMT_TEST_DATA 0x04010084
00033 #define OCM_CH0_RCV_STATUS 0x01010094
00034 #define OCM_CH0_RCV_FRAME_STATUS 0x01010095
00035 #define OCM_CH0_DEMUX_BITMAP 0x01010097
00036 #define OCM_CH0_DEMUX_BITMAP_READ 0x01010098
00037 #define OCM_CH0_TX_STATUS 0x01010099
00038 #define OCM_CH0_BITFILE_VER 0x010100A0
00039 #define OCM_CH1_RCV_FRAMING 0x010100C0
00040 #define OCM_CH1_XMT_FRAMING 0x010100C1
00041 #define OCM_CH1_XMT_NATIONAL 0x010100C2
00042 #define OCM_CH1_RCV_FILTER 0x010100C3
00043 #define OCM_CH1_XMT_TEST_DATA 0x040100C4
00044 #define OCM_CH1_RCV_STATUS 0x010100D4
00045 #define OCM_CH1_RCV_FRAME_STATUS 0x010100D5
00046 #define OCM_CH1_DEMUX_BITMAP 0x010100D7
00047 #define OCM_CH1_DEMUX_BITMAP_READ 0x010100D8
00048 #define OCM_CH1_TX_STATUS 0x010100D9
00049 #define OCM_CH1_BITFILE_VER 0x010100E0
00050
00051
00052
00053
00054
00055 #define OC192_REF_CLOCK 0x0101002F
00056 #define OC192_XCVR_COM_PORT 0x01010031
00057 #define OC192_XCVR_CTL_STAT 0x01010032
00058 #define OC192_LIU_MDIO_BUS 0x01010033
00059 #define OC192_ENABLE 0x01010034
00060 #define OC192_LIU_STATUS 0x01010035
00061 #define OC192_FRAMING 0x01010037
00062 #define OC192_OUTPUT_DATA_SEL 0x0101003A
00063 #define OC192_CHAN_SELECT 0x0101004A
00064 #define OC192_RCV_FILTER 0x02010095
00065 #define OC192_DEMUX_BITMASK 0x02010097
00066
00067 #define OC192_TAG_CTRL 0x010100A8
00068
00069
00070
00071 #define OC192_DEMUX_BITMASK_LO 0x01010097
00072 #define OC192_DEMUX_BITMASK_HI 0x01010098
00073
00074 #define OC192_DEMUX_MASK_ADDR 0x01010099
00075
00076 #define OC192_DEMUX_BITMASK_RD 0x0201009A
00077
00078 #define OC192_DEMUX_BITMASK_RD_LO 0x0101009A
00079 #define OC192_DEMUX_BITMASK_RD_HI 0x0101009B
00080
00081 #define OC192_MEZZ_VERSION_STR 0x020100A0
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092 #define OCM_STAT_SYS_LOCKED 0x1
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108 #define OCM_CH0_CONFIGL 0x01010020
00109 #define OCM_CH0_CONFIGH 0x01010021
00110 #define OCM_CH0_STATUS 0x01010022
00111 #define OCM_CH0_XCVR 0x01010023
00112 #define OCM_CH0_ENABLE 0x01010024
00113 #define OCM_CH1_OFFSET 0x10
00114
00115
00116
00117 #define OCM_CH0_RX_ENABLE 0x1
00118 #define OCM_CH1_RX_ENABLE 0x2
00119 #define OCM_CH0_TX_ENABLE 0x4
00120 #define OCM_CH1_TX_ENABLE 0x8
00121
00122
00123
00124
00125
00126 #define OCM_FRAME_EN 0x1
00127 #define OCM_LCKREF_L 0x2
00128 #define OCM_RSEL_MSK 0xC
00129 #define OCM_48 0x0
00130 #define OCM_24 0x4
00131 #define OCM_12 0x8
00132 #define OCM_3 0xC
00133 #define OCM_AUTODETECT 0x10
00134 #define OCM_RLOOP 0x20
00135 #define OCM_LLOOP 0x40
00136 #define OCM_PRBS_EN 0x80
00137
00138
00139
00140 #define OCM_MODE_MSK 0x3
00141 #define OCM_MODE_FULL 0x0
00142 #define OCM_MODE_TX 0x1
00143 #define OCM_MODE_RX 0x2
00144 #define OCM_MODE_REP 0x3
00145 #define OCM_PRE_MSK 0xc
00146 #define OCM_PRE_DIS 0x0
00147 #define OCM_PRE_10 0x4
00148 #define OCM_PRE_20 0x8
00149 #define OCM_PRE_30 0xc
00150 #define OCM_LOOPTIME 0x10
00151
00152
00153
00154
00155
00156 #define OCM_PLL_INC 0x20
00157 #define OCM_PLL_ONE 0x40
00158 #define OCM_SPARE 0x80
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169
00170 #define OCM_X_DATA 0x01010040
00171 #define OCM_X_CONT 0x01010041
00172 #define OCM_X_STAT 0x01010042
00173 #define OCM_X_CONST 0x01010043
00174
00175
00176 #define OCM_CONT_CH0_INIT 0x1
00177 #define OCM_CONT_CH0_PROG 0x2
00178 #define OCM_CONT_CH1_INIT 0x4
00179 #define OCM_CONT_CH1_PROG 0x8
00180 #define OCM_CONT_PRG_CH1 0x10
00181 #define OCM_CONT_ENABLE 0x20
00182 #define OCM_CONT_EN_FIFO 0x40
00183
00184
00185 #define OCM_STAT_CH0_INIT 0x1
00186 #define OCM_STAT_CH0_DONE 0x2
00187 #define OCM_STAT_CH1_INIT 0x4
00188 #define OCM_STAT_CH1_DONE 0x8
00189 #define OCM_FCNT_MSK 0xf0
00190 #define OCM_FCNT_SHFT 4
00191
00192 #define OCM_CONSTANT 0x0c
00193
00194
00195
00196
00197
00198 #define OCM_CH0_CONFIG0 0x01010020
00199 #define OCM_CH1_CONFIG0 0x01010030
00200 #define OFFSET_CH1_BASE 0x10
00201 #define NOT_USED 0x01
00202 #define LOCK_REF 0x02
00203 #define RX_SEL_MSK 0x0c
00204 #define OC48_STM16 0x00
00205 #define OC24 0x04
00206 #define OC12_STM4 0x08
00207 #define OC3_STM1 0x0c
00208 #define AUTO_DETECT 0x10
00209 #define REMOTE_LOOP 0x20
00210 #define LOCAL_LOOP 0x40
00211 #define PRBS_EN 0x80
00212
00213
00214
00215 #define OCM_CH0_CONFIG1 0x01010021
00216 #define OCM_CH1_CONFIG1 0x01010031
00217 #define CONFIG2511_MSK 0x03
00218 #define PRE2511_MSK 0x0c
00219 #define LOOPTIME 0x10
00220
00221
00222
00223 #define OCM_CH0_STATUS 0x01010022
00224 #define OCM_CH1_STATUS 0x01010032
00225 #define SPILL2511 0x01
00226 #define PRBSPASS 0x02
00227 #define RATE_DET_MSK 0x0c
00228
00229 #define LOS 0x10
00230 #define LOL 0x20
00231 #define SIG_DET 0x80
00232
00233
00234
00235 #define OCM_CH0_XCVR 0x01010023
00236 #define OCM_CH1_XCVR 0x01010033
00237 #define DISABLE_TX 0x01
00238 #define XCVR_SCL 0x02
00239 #define XCVR_WDATA 0x04
00240 #define XCVR_TS 0x08
00241 #define XCVR_RDATA 0x10
00242 #define XCVR_PRES 0x20
00243 #define XCVR_FLT 0x40
00244
00245
00246
00247 #define OCM_CH0_ENABLE 0x01010024
00248 #define OCM_CH1_ENABLE 0x01010034
00249 #define SLK_EN 0x01
00250 #define PLL_EN 0x02
00251 #define SYS_EN 0x04
00252 #define RAM_EN 0x08
00253
00254 #define SYS_LOCK 0x20
00255 #define RX_LOCK 0x40
00256
00257
00258
00259
00260
00261 #define LOCAL_SYS_LOCK 0x01
00262
00263
00264
00265 #define OCM_ID_STR 0x0101007d
00266
00267
00268
00269 #define OCM_CH0_ID_STR 0x010100a0
00270
00271
00272
00273 #define OCM_ID_SIZE 16
00274
00275
00276
00277
00278 #define OFFSET_CH1_MEZ 0x40
00279 #define OCM_RX_CTRL 0x01010080
00280 #define RESET_FRM 0x01
00281 #define FRAME_EN 0x02
00282 #define RX_DATA_SRC_2G 0x04
00283 #define DISABLE_SCRAM 0x10
00284 #define SUSPEND_AQ 0x20
00285 #define EN_PAR_CNT 0x40
00286 #define EN_ERR_CNT 0x80
00287
00288
00289
00290 #define OCM_TX_CONFIG 0x01010081
00291 #define RESET_PTR 0x01
00292 #define TEST_DATA 0x02
00293 #define EN_TX_FRAME 0x04
00294 #define EN_IDLE 0x04
00295 #define CLOCK_SEL_MSK 0xC0
00296 #define CLK_125MHZ 0x00
00297 #define CLOCK_SEL_MSK 0xC0
00298 #define CLK_SONET_SDH 0x40
00299 #define CLK_GE 0x80
00300 #define CLK_FEC 0xC0
00301
00302
00303
00304 #define OCM_NAT_BYTE 0x01010082
00305
00306
00307
00308 #define OCM_RX_FILTER 0x01010083
00309 #define OVERHEAD_ONLY 0x01
00310
00311
00312
00313 #define TEST_DATA_REG 0x03010084
00314
00315
00316
00317 #define OCM_RX_STATUS 0x01010094
00318 #define FRAMED 0x01
00319 #define RX_LOCKED 0x01
00320 #define RATE12 0x02
00321
00322
00323
00324 #define FRAME_STATUS 0x01010095
00325 #define BIT_SYNC 0x01
00326 #define BYTE_SYNC 0x02
00327 #define MATCH_CNT_MSK 0x0c
00328 #define MATCH_CNT_SHFT 2
00329 #define DROP_CNT_MSK 0x30
00330 #define DROP_CNT_SHFT 4
00331 #define FOUND 0x40
00332 #define LOCKED 0x80
00333
00334
00335 #define OCM_REG_CH0_MASK 0x01010097
00336 #define OCM_REG_CH0_MASK_READBACK 0x01010098
00337
00338
00339
00340 #define OCM_CH0_B1_ERROR_CNT 0x03010088
00341 #define OCM_CH0_B1_ERROR_MASK 0x0101008b
00342 #define OCM_CH1_B1_ERROR_CNT 0x030100c8
00343 #define OCM_CH1_B1_ERROR_MASK 0x010100cb
00344
00345 #define OCM_CH0_B2_ERROR_CNT 0x0401008c
00346 #define OCM_CH1_B2_ERROR_CNT 0x040100cc
00347
00348 #define OCM_CH0_M1_ERROR_CNT 0x03010090
00349 #define OCM_CH1_M2_ERROR_CNT 0x030100d0
00350
00351 #define OCM_CH0_CNT_CTRL 0x01010093
00352 #define OCM_CH1_CNT_CTRL 0x010100D3
00353
00354 #define OCM_CH0_LOF_CNT 0x0201009C
00355 #define OCM_CH1_LOF_CNT 0x020100DC
00356
00357 #define OCM_CH0_FRM_PAT_CNT 0x0201009E
00358 #define OCM_CH1_FRM_PAT_CNT 0x020100DE
00359
00360 #define OCM_CH0_FALSE_FRM_CNT 0x020100A4
00361 #define OCM_CH1_FALSE_FRM_CNT 0x020100E4
00362
00363
00364
00365
00366 #define OCM_EN_ERROR_COUNT 0x80
00367 #define OCM_ERROR_COUNT_HOLD 0x1
00368
00377 typedef enum {
00378
00379 STM0_RATE = 0,
00380 GIGE_RATE = 10,
00381 STM1_RATE = 1,
00382 STM4_RATE = 4,
00383 STM16_RATE = 16,
00384 STM64_RATE = 64,
00385 STM256_RATE = 256,
00386 OC3_RATE = 3,
00387 OC12_RATE = 12,
00388 OC48_RATE = 48,
00389 OC192_RATE = 192,
00390 OC768_RATE = 768
00391
00392 } EdtLineRate;
00393
00394
00396
00397
00398 #define EDT_OCX_BYTE_SWAP 0x1
00399 #define EDT_OCX_SHORT_SWAP 0x2
00400 #define EDT_OCX_LSB_FIRST 0x4
00401
00403 #define EDT_OCX_SWAP (EDT_OCX_BYTE_SWAP | EDT_OCX_SHORT_SWAP)
00404
00405 #define EDT_OCX_ORDER_MASK 0x7
00406
00408 #define EDT_OCX_FRAMED 0x8
00409
00410 #define EDT_OCX_DESCRAMBLE 0x10
00411
00412 #define EDT_OCX_ENABLE_MEM 0x20
00413
00414 #define EDT_OCX_OVHD_ONLY 0x40
00415
00416 #define EDT_OCX_PRBS_EN 0x200
00417
00418 #define EDT_OCX_SKIP_LOAD 0x400
00419
00420 #define EDT_OCX_FULL_INIT 0x800
00421
00422 #define EDT_OCX_LOOPBACK 0x2000
00423
00424 #define EDT_OCX_REMOTE_LPBK 0x10000
00425
00426 #define EDT_OCX_SCRAMBLE 0x1000
00427
00428 #define EDT_OCX_INVERT 0x4000
00429
00430 #define EDT_OCX_SET_DEMUX 0x8000
00431
00432 #define EDT_OCX_RESYNCH 0x10000
00433
00434 #define EDT_OCX_FORCE_LOAD 0x20000
00435
00436 #define EDT_OCX_NO_SIG_DET 0x40000
00437
00439 #define EDT_OCX_TAGGED_DATA 0x80000
00440
00441
00452 typedef struct {
00453 EdtLineRate line_rate;
00454 int timeout;
00455 u_int flags;
00477 edt_bitpath intfc;
00478 edt_bitpath mezz_0;
00479 edt_bitpath mezz_1;
00480 char tributary[6];
00481 u_char demux_mask[192];
00482 int tagid;
00483
00484 } EdtOCConfig;
00485
00497 typedef struct {
00498 u_int b1_errors;
00499 u_char b1_error_mask;
00500 u_int b2_errors;
00501 u_int m1_errors;
00502 u_int lof_errors;
00503 u_int frame_pattern_errors;
00504 u_int false_frame_errors;
00505 } EdtOCXFrameErrors;
00506
00507
00508
00513
00514 #define EDT_OC192_LIU_NORMAL 0
00515 #define EDT_OC192_LIU_LOOPBACK 1
00516 #define EDT_OC192_LIU_BIST_RX 2
00517 #define EDT_OC192_LIU_BIST_TX 3
00518 #define EDT_OC192_LIU_BIST_TX_EXT 4
00519 #define EDT_OC192_LIU_RESET 5
00520 #define EDT_OC192_LIU_REMOTE_LPBK 6
00521
00522 #define OC192_FRAME_EN 0x2
00523 #define OC192_DISABLE_SCRAM 0x10
00524 #define OC192_FRAME_LOCK 0x80
00525
00526 #define SDATA_IN 0x10
00527 #define SDATA_OUT 0x1
00528 #define SCLK 0x2
00529 #define SDATA_TRI 0x8
00530 #define SCLK_TRI 0x4
00531
00532 #define AMCC_RST 0x1
00533
00534 #define OC192_TAG_ON 0x80
00535 #define OC192_TAGS_ONLY 0x40
00536 #define OC192_TAGS_XMIT 0x20
00537
00538 #define OC192_TAG_MASK 0x3
00539
00540
00545 EDTAPI unsigned char
00546 edt_oc192_mdio_read(EdtDev *edt_p, unsigned char address);
00547
00548 EDTAPI void
00549 edt_oc192_mdio_write(EdtDev *edt_p,
00550 unsigned char address,
00551 unsigned char value);
00552 EDTAPI void
00553 edt_oc192_mdio_init(EdtDev *edt_p);
00554
00555 EDTAPI void
00556 edt_oc192_reset_liu(EdtDev *edt_p);
00557
00558 EDTAPI void
00559 edt_oc192_mdio_dump(EdtDev *edt_p);
00560
00561 EDTAPI void
00562 edt_oc192_mdio_loopback(EdtDev *edt_p, int on);
00563
00564 EDTAPI void
00565 edt_oc192_mdio_set_prbs23(EdtDev *edt_p, int on);
00566
00567 EDTAPI void
00568 edt_oc192_mdio_set_prbs31(EdtDev *edt_p, int on);
00569
00570 EDTAPI void
00571 edt_oc192_mdio_standard(EdtDev *edt_p);
00572
00573 EDTAPI int
00574 edt_oc192_set_liu(EdtDev *edt_p, int mode);
00575
00576
00577
00586
00587
00588
00589
00590 EDTAPI int
00591 edt_ocm_lock_clocks(EdtDev *edt_p, int timeout);
00592
00593 EDTAPI char *
00594 edt_ocm_mezz_filename(EdtDev *edt_p, EdtLineRate line_rate);
00595
00596 EDTAPI int
00597 edt_ocm_load_default_mezzanine(EdtDev *edt_p,
00598 EdtLineRate line_rate,
00599 char *mezz_0,
00600 char *mezz_1);
00601
00602 EDTAPI int
00603 edt_ocm_speed_capable(EdtDev *edt_p, EdtLineRate line_rate);
00604
00605 EDTAPI int
00606 edt_ocm_has_mezz_bitfile(EdtDev *edt_p, char *bitfile_name);
00607
00608 EDTAPI int
00609 edt_ocm_set_clock_select(EdtDev *edt_p, EdtLineRate line_rate);
00610
00611 EDTAPI int
00612 edt_ocm_channel_lock_frontend_pll(EdtDev *edt_p, EdtOCConfig *cfg);
00613
00614 EDTAPI int
00615 edt_ocm_channel_setup_read(EdtDev *edt_p, EdtOCConfig *cfg);
00616
00617 EDTAPI int
00618 edt_ocm_wait_for_frame(EdtDev *edt_p, int timeout);
00619
00620
00621
00622 EDTAPI int
00623 edt_ocm_demux_set(EdtDev *edt_p, EdtLineRate line_rate, u_char *onoff);
00624
00625 EDTAPI int
00626 edt_ocm_demux_get(EdtDev *edt_p, EdtLineRate line_rate, u_char *onoff);
00627
00628 EDTAPI int
00629 edt_ocm_demux_chan_enable(EdtDev *edt_p, int channel, int enable);
00630
00631 EDTAPI int
00632 edt_ocm_demux_get_chan_enabled(EdtDev *edt_p, int channel);
00633
00634
00643
00644
00645
00646
00647
00648
00649
00650
00651 EDTAPI int
00652 edt_oc192_lock_clocks(EdtDev *edt_p, int timeout);
00653
00654 EDTAPI char *
00655 edt_oc192_mezz_filename(EdtDev *edt_p, EdtLineRate line_rate);
00656
00657 EDTAPI int
00658 edt_oc192_load_default_mezzanine(EdtDev *edt_p, EdtLineRate line_rate,
00659 char *mezz_0, char *mezz_1);
00660
00661 EDTAPI int
00662 edt_oc192_speed_capable(EdtDev *edt_p, EdtLineRate line_rate);
00663
00664 EDTAPI int
00665 edt_oc192_has_mezz_bitfile(EdtDev *edt_p, char *bitfile_name);
00666
00667 EDTAPI int
00668 edt_oc192_set_clock_select(EdtDev *edt_p, EdtLineRate line_rate);
00669
00670 EDTAPI int
00671 edt_oc192_clear_demux(EdtDev *edt_p);
00672
00673 EDTAPI void
00674 edt_oc192_set_framer(EdtDev *edt_p, int flags);
00675
00676 EDTAPI int
00677 edt_oc192_channel_setup_read(EdtDev *edt_p,
00678 EdtOCConfig *cfg);
00679
00680 EDTAPI int
00681 edt_oc192_wait_for_frame(EdtDev *edt_p, int timeout);
00682
00683 EDTAPI int
00684 edt_oc192_demux_set(EdtDev *edt_p, EdtLineRate line_rate, u_char *onoff);
00685
00686 EDTAPI int
00687 edt_oc192_demux_get(EdtDev *edt_p, EdtLineRate line_rate, u_char *onoff);
00688
00689 EDTAPI int
00690 edt_oc192_demux_chan_enable(EdtDev *edt_p, int channel, int enable);
00691
00692 EDTAPI int
00693 edt_oc192_demux_get_chan_enabled(EdtDev *edt_p, int channel);
00694
00695 EDTAPI int
00696 edt_oc192_set_tagging(EdtDev *edt_p, int state, int tagid);
00697
00705
00706
00707
00708
00709
00710 EDTAPI int
00711 edt_ocx_lock_local_clock(EdtDev *edt_p, int timeout);
00712
00713 EDTAPI void
00714 edt_ocx_enable_framing_errors(EdtDev *edt_p, int state);
00715
00716 EDTAPI int
00717 edt_ocx_get_framing_errors(EdtDev *edt_p, EdtOCXFrameErrors *err_p);
00718
00719 EDTAPI int
00720 edt_ocx_lock_channel_clock(EdtDev *edt_p, int channel, int timeout);
00721
00722 EDTAPI char *
00723 edt_ocx_default_bitfile(int mezz_id);
00724
00725 EDTAPI int
00726 edt_ocx_check_interface(EdtDev *edt_p, char *target_file, int force_load);
00727
00728
00729
00730 EDTAPI int
00731 edt_ocx_lock_clocks(EdtDev *edt_p, int timeout);
00732
00733 EDTAPI int
00734 edt_ocx_load_default_mezzanine(EdtDev *edt_p,
00735 EdtLineRate line_rate,
00736 char *mezz_0,
00737 char *mezz_1);
00738
00739 EDTAPI int
00740 edt_ocx_base_init(EdtDev *edt_p,
00741 EdtOCConfig *cfg);
00742
00743 EDTAPI int
00744 edt_ocx_speed_capable(EdtDev *edt_p, EdtLineRate line_rate);
00745
00746 EDTAPI int
00747 edt_ocx_has_mezz_bitfile(EdtDev *edt_p, char *bitfile_name);
00748
00749 EDTAPI char *
00750 edt_ocx_mezz_filename(EdtDev *edt_p, EdtLineRate line_rate);
00751
00752 EDTAPI int
00753 edt_ocx_check_mezz_bitfile(EdtDev *edt_p,
00754 EdtOCConfig *cfg);
00755
00756 EDTAPI int
00757 edt_ocx_set_clock_select(EdtDev *edt_p, EdtLineRate line_rate);
00758
00759 EDTAPI void
00760 edt_ocx_set_channel_enable(EdtDev *edt_p, int channel, int state);
00761
00762 EDTAPI void
00763 edt_ocx_set_lsbfirst(EdtDev *edt_p, int channel, int state);
00764
00765 EDTAPI void
00766 edt_ocx_reset_sys_en(EdtDev *edt_p, int channel);
00767
00768 EDTAPI int
00769 edt_ocx_channel_set_rate(EdtDev *edt_p, EdtOCConfig *cfg);
00770
00771 EDTAPI int
00772 edt_ocx_channel_setup(EdtDev *edt_p,
00773 EdtOCConfig *cfg);
00774
00775 EDTAPI int
00776 edt_ocm_channel_lock_frontend_pll(EdtDev *edt_p, EdtOCConfig *cfg);
00777
00778 EDTAPI int
00779 edt_ocx_configure(EdtDev *edt_p,
00780 EdtOCConfig *cfg);
00781
00782 EDTAPI int
00783 edt_ocx_wait_for_frame(EdtDev *edt_p, int timeout);
00784
00785 EDTAPI int
00786 edt_ocx_channel_start(EdtDev *edt_p);
00787
00788 EDTAPI int
00789 edt_ocx_channel_signal_detect(EdtDev *edt_p);
00790
00791
00792
00793 EDTAPI int
00794 edt_ocx_demux_set(EdtDev *edt_p, EdtLineRate line_rate, u_char *onoff);
00795
00796 EDTAPI int
00797 edt_ocx_demux_get(EdtDev *edt_p, EdtLineRate line_rate, u_char *onoff);
00798
00799 EDTAPI int
00800 edt_ocx_demux_chan_enable(EdtDev *edt_p, int channel, u_char state);
00801
00802 EDTAPI int
00803 edt_ocx_demux_get_chan_enabled(EdtDev *edt_p, int channel);
00804
00805 EDTAPI int
00806 edt_reg_set_bitmask(EdtDev *edt_p, u_int reg, u_int mask, int state);
00807
00808
00809 EDTAPI void
00810 edt_ocx_set_channel_direction(EdtDev *edt_p, int channel, int do_write);
00811
00816 #endif