2 * Copyright (c) 2016 ITE Technologies, Inc. All rights reserved.
11 * ITE Linux API header file.
19 #include <sys/types.h>
21 #include <sys/ioctl.h>
24 #include <sys/times.h>
36 #include <linux/dvb/frontend.h>
37 #include <linux/dvb/dmx.h>
40 #include "iocontrol.h"
45 #define __DTVAPI_VERSION__ "1.0.0.0"
46 #define INVALID_HANDLE_VALUE 0
47 #define TRANSMITTER_BLOCK_SIZE 188*174
49 * The type defination of StreamType.
52 DTVStreamType_NONE
= 0, // Invalid (Null) StreamType
53 DTVStreamType_DVBH_DATAGRAM
,
54 DTVStreamType_DVBH_DATABURST
,
55 DTVStreamType_DVBT_DATAGRAM
,
56 DTVStreamType_DVBT_PARALLEL
,
57 DTVStreamType_DVBT_SERIAL
,
58 DTVStreamType_TDMB_DATAGRAM
,
59 DTVStreamType_FM_DATAGRAM
,
64 * Chip Type Information.
70 } CHIPTYPE_INFO
, *PCHIPTYPE_INFO
;
76 Byte DriverVerion
[16]; /** XX.XX.XX.XX Ex., 1.2.3.4 */
77 Byte APIVerion
[32]; /** XX.XX.XXXXXXXX.XX Ex., 1.2.3.4 */
78 Byte FWVerionLink
[16]; /** XX.XX.XX.XX Ex., 1.2.3.4 */
79 Byte FWVerionOFDM
[16]; /** XX.XX.XX.XX Ex., 1.2.3.4 */
80 Byte DateTime
[24]; /** Ex.,"2004-12-20 18:30:00" or "DEC 20 2004 10:22:10" with compiler __DATE__ and __TIME__ definitions */
81 Byte Company
[8]; /** Ex.,"ITEtech" */
82 Byte SupportHWInfo
[32]; /** Ex.," DVBT/ISDBT" */
84 } DEVICE_INFO
, *PDEVICE_INFO
;
87 * Driver and API information.
90 Byte DriverVerion
[16]; // XX.XX.XX.XX Ex., 1.2.3.4.
91 Byte APIVerion
[32]; // XX.XX.XXXXXXXX.XX Ex., 1.2.3.4.
92 Byte FWVerionLink
[16]; // XX.XX.XX.XX Ex., 1.2.3.4.
93 Byte FWVerionOFDM
[16]; // XX.XX.XX.XX Ex., 1.2.3.4.
94 Byte DateTime
[24]; // Ex.,"2004-12-20 18:30:00" or "DEC 20 2004 10:22:10" with compiler __DATE__ and __TIME__ definitions.
95 Byte Company
[8]; // Ex.,"Afatech".
96 Byte SupportHWInfo
[32]; // Ex.,"Jupiter DVBT/DVBH".
99 } DTVDriverInfo
, *PDTVDriverInfo
;
102 * The type defination of Priority.
105 DTVPriority_HIGH
= 0, // DVB-T and DVB-H - identifies high-priority stream.
106 DTVPriority_LOW
// DVB-T and DVB-H - identifies low-priority stream.
110 * The type defination of IpVersion.
113 DTVIpVersion_IPV4
= 0, // The IP version if IPv4.
114 DTVIpVersion_IPV6
= 1 // The IP version if IPv6.
119 * The type defination of Ip.
122 DTVIpVersion version
; // The version of IP. See the defination of IpVersion.
123 DTVPriority priority
; // The priority of IP. See the defination of Priority.
124 Bool cache
; // True: IP datagram will be cached in device's buffer. Fasle: IP datagram will be transfer to host.
125 Byte address
[16]; // The byte array to store IP address.
129 * The type defination of Platform.
130 * Mostly used is in DVB-H standard
133 Dword platformId
; // The ID of platform.
134 char iso639LanguageCode
[3]; // The ISO 639 language code for platform name.
135 Byte platformNameLength
; // The length of platform name.
136 char platformName
[32]; // The char array to store platform name.
137 Word bandwidth
; // The operating channel bandwith of this platform.
138 Dword frequency
; // The operating channel frequency of this platform.
139 Byte information
[4096]; // The extra information about this platform.
140 Word informationLength
; // The length of information.
141 Bool hasInformation
; // The flag to indicate if there exist extra information.
142 DTVIpVersion ipVersion
; // The IP version of this platform.
143 } DTVPlatform
, *PDTVPlatform
;
146 * The type defination of Target.
149 DTVSectionType_MPE
= 0, // Stands for MPE data.
150 DTVSectionType_SIPSI
, // Stands for SI/PSI table, but don't have to specify table ID.
151 DTVSectionType_TABLE
// Stands for SI/PSI table.
155 * The type defination of FrameRow.
158 DTVFrameRow_256
= 0, // There should be 256 rows for each column in MPE-FEC frame.
159 DTVFrameRow_512
, // There should be 512 rows for each column in MPE-FEC frame.
160 DTVFrameRow_768
, // There should be 768 rows for each column in MPE-FEC frame.
161 DTVFrameRow_1024
// There should be 1024 rows for each column in MPE-FEC frame.
165 * The type defination of Pid.
166 * as sectionType = SectionType_SIPSI: only value is valid.
167 * as sectionType = SectionType_TABLE: both value and table is valid.
168 * as sectionType = SectionType_MPE: except table all other fields is valid.
171 Byte table
; // The table ID. Which is used to filter specific SI/PSI table.
172 Byte duration
; // The maximum burst duration. It can be specify to 0xFF if user don't know the exact value.
173 DTVFrameRow frameRow
; // The frame row of MPE-FEC. It means the exact number of rows for each column in MPE-FEC frame.
174 DTVSectionType sectionType
; // The section type of pid. See the defination of SectionType.
175 DTVPriority priority
; // The priority of MPE data. Only valid when sectionType is set to SectionType_MPE.
176 DTVIpVersion version
; // The IP version of MPE data. Only valid when sectionType is set to SectionType_MPE.
177 Bool cache
; // True: MPE data will be cached in device's buffer. Fasle: MPE will be transfer to host.
178 Word value
; // The 13 bits Packet ID.
182 * The type defination of statistic
185 Dword postVitErrorCount
; // ErrorBitCount.
186 Dword postVitBitCount
; // TotalBitCount.
187 Word abortCount
; // Number of abort RSD packet.
188 Word signalQuality
; // Signal quality (0 - 100).
189 Word signalStrength
; // Signal strength (0 - 100).
190 Bool signalPresented
; // TPS lock.
191 Bool signalLocked
; // MPEG lock.
192 Byte frameErrorCount
; // Frame Error Ratio (error ratio before MPE-FEC) = frameErrorRate / 128.
193 Byte mpefecFrameErrorCount
; // MPE-FEC Frame Error Ratio (error ratio after MPE-FEC) = mpefecFrameErrorCount / 128.
194 } DTVStatistic
, *PDTVStatistic
;
197 * The type defination of TransmissionMode.
200 DTVTransmissionMode_2K
= 0, // OFDM frame consists of 2048 different carriers (2K FFT mode).
201 DTVTransmissionMode_8K
= 1, // OFDM frame consists of 8192 different carriers (8K FFT mode).
202 DTVTransmissionMode_4K
= 2 // OFDM frame consists of 4096 different carriers (4K FFT mode).
203 } DTVTransmissionMode
;
206 * The type defination of Constellation.
209 DTVConstellation_QPSK
= 0, // Signal uses QPSK constellation.
210 DTVConstellation_16QAM
, // Signal uses 16QAM constellation.
211 DTVConstellation_64QAM
// Signal uses 64QAM constellation.
215 * The type defination of Interval.
218 DTVInterval_1_OVER_32
= 0, // Guard interval is 1/32 of symbol length.
219 DTVInterval_1_OVER_16
, // Guard interval is 1/16 of symbol length.
220 DTVInterval_1_OVER_8
, // Guard interval is 1/8 of symbol length.
221 DTVInterval_1_OVER_4
// Guard interval is 1/4 of symbol length.
225 * The type defination of CodeRate.
228 DTVCodeRate_1_OVER_2
= 0, // Signal uses FEC coding ratio of 1/2.
229 DTVCodeRate_2_OVER_3
, // Signal uses FEC coding ratio of 2/3.
230 DTVCodeRate_3_OVER_4
, // Signal uses FEC coding ratio of 3/4.
231 DTVCodeRate_5_OVER_6
, // Signal uses FEC coding ratio of 5/6.
232 DTVCodeRate_7_OVER_8
, // Signal uses FEC coding ratio of 7/8.
233 DTVCodeRate_NONE
// None, NXT doesn't have this one.
237 * TPS Hierarchy and Alpha value.
240 DTVHierarchy_NONE
= 0, // Signal is non-hierarchical.
241 DTVHierarchy_ALPHA_1
, // Signalling format uses alpha of 1.
242 DTVHierarchy_ALPHA_2
, // Signalling format uses alpha of 2.
243 DTVHierarchy_ALPHA_4
// Signalling format uses alpha of 4.
247 * The type defination of Bandwidth.
250 DTVBandwidth_6M
= 0, // Signal bandwidth is 6MHz.
251 DTVBandwidth_7M
, // Signal bandwidth is 7MHz.
252 DTVBandwidth_8M
, // Signal bandwidth is 8MHz.
253 DTVBandwidth_5M
// Signal bandwidth is 5MHz.
257 * The defination of ChannelInformation.
260 Dword frequency
; // Channel frequency in KHz.
261 DTVTransmissionMode transmissionMode
; // Number of carriers used for OFDM signal.
262 DTVConstellation constellation
; // Constellation scheme (FFT mode) in use.
263 DTVInterval interval
; // Fraction of symbol length used as guard (Guard Interval).
264 DTVPriority priority
; // The priority of stream.
265 DTVCodeRate highCodeRate
; // FEC coding ratio of high-priority stream.
266 DTVCodeRate lowCodeRate
; // FEC coding ratio of low-priority stream.
267 DTVHierarchy hierarchy
; // Hierarchy levels of OFDM signal.
268 DTVBandwidth bandwidth
;
269 } DTVChannelTPSInfo
, *PDTVChannelTPSInfo
;
272 * Temp data structure of Gemini.
279 } DTVLabel
, *PDTVLabel
;
282 * Temp data structure of Gemini.
287 DTVLabel ensembleLabel
;
289 } DTVEnsemble
, *PDTVEnsemble
;
292 * The type defination of Service.
293 * Mostly used is in T-DMB standard
296 Byte serviceType
; // Service Type(P/D): 0x00: Program, 0x80: Data.
299 DTVLabel serviceLabel
;
300 Byte totalComponents
;
301 } DTVService
, *PDTVService
;
304 * The type defination of Service Component.
307 Byte serviceType
; // Service Type(P/D): 0x00: Program, 0x80: Data.
308 Dword serviceId
; // Service ID.
309 Word componentId
; // Stream audio/data is subchid, packet mode is SCId.
310 Byte componentIdService
; // Component ID within Service.
311 DTVLabel componentLabel
; // The label of component. See the defination of Label.
312 Byte language
; // Language code.
313 Byte primary
; // Primary/Secondary.
314 Byte conditionalAccess
; // Conditional Access flag.
315 Byte componentType
; // Component Type (A/D).
316 Byte transmissionId
; // Transmission Mechanism ID.
317 } DTVComponent
, *PDTVComponent
;
319 typedef struct _MODULATION_PARAM
{
322 Byte transmissionMode
;
325 } MODULATION_PARAM
, *PMODULATION_PARAM
;
328 * The type defination of handle type.
335 /*******************************************************************************
337 * Open handle, Power On and Check device information.
340 * handleType: typedef enum HandleType.
341 * DevNo: device number for multi deivce.
344 * 0 if no error, non-zero value otherwise.
345 ******************************************************************************/
346 DTVEXPORT Dword
g_ITEAPI_TxDeviceInit(IN HandleType handleType
, IN IN Byte DevNo
);
348 /*******************************************************************************
350 * Clean up & Power off device.
356 * 0 if no error, non-zero value otherwise.
357 *******************************************************************************/
358 DTVEXPORT Dword
g_ITEAPI_TxDeviceExit(IN Byte DevNo
);
360 /*******************************************************************************
362 * Set Channel Modulation to Tx.
365 * struct MODULATION_PARAM.
368 * 0 if no error, non-zero value otherwise.
369 *******************************************************************************/
370 DTVEXPORT Dword
g_ITEAPI_TxSetChannelModulation( IN MODULATION_PARAM ChannelModulation_Setting
, IN Byte DevNo
);
372 /*******************************************************************************
374 * Set Channel frequency and bandwidth to Tx.
381 * 0 if no error, non-zero value otherwise.
382 *******************************************************************************/
383 DTVEXPORT Dword
g_ITEAPI_TxSetChannel(IN Dword bfrequency
, IN Word bbandwidth
, IN Byte DevNo
);
385 /*******************************************************************************
387 * Set Channel frequency and bandwidth to Dual Tx.
395 * 0 if no error, non-zero value otherwise.
396 *******************************************************************************/
397 DTVEXPORT Dword
g_ITEAPI_TxSetChannelDual(IN Dword bfrequency1
, IN Dword bfrequency2
, IN Word bbandwidth
, IN Byte DevNo
);
399 /*******************************************************************************
407 * 0 if no error, non-zero value otherwise.
408 *******************************************************************************/
409 DTVEXPORT Dword
g_ITEAPI_TxSetModeEnable(IN Byte OnOff
, IN Byte DevNo
);
411 /*******************************************************************************
419 * 0 if no error, non-zero value otherwise.
420 *******************************************************************************/
421 DTVEXPORT Dword
g_ITEAPI_TxSetDeviceType(IN Byte DeviceType
, IN Byte DevNo
);
423 /*******************************************************************************
431 * 0: no error. Return current device type.
432 * non-zero: Using Default devicetype. return default type
433 * and return error message.
434 *******************************************************************************/
435 DTVEXPORT Dword
g_ITEAPI_TxGetDeviceType(OUT Byte
*DeviceType
, IN Byte DevNo
);
437 /*******************************************************************************
439 * Adjust Output Gain to Tx.
446 * 0 if no error, non-zero value otherwise.
447 *******************************************************************************/
448 DTVEXPORT Dword
g_ITEAPI_TxAdjustOutputGain(IN
int Gain_value
, OUT
int *Out_Gain_valu
, IN Byte DevNo
);
450 /*******************************************************************************
452 * Add Pid number, for DVB-T mode.
456 * wProgId - pid number.
459 * 0 if no error, non-zero value otherwise.
460 ******************************************************************************/
461 DTVEXPORT Dword
g_ITEAPI_TxAddPID(IN Byte byIndex
, IN Word wProgId
, IN Byte DevNo
);
463 /*******************************************************************************
465 * Clear all the PID's set previously by g_ITEAPI_AddPID(),
471 * 0 if no error, non-zero value otherwise.
472 ******************************************************************************/
473 DTVEXPORT Dword
g_ITEAPI_TxResetPidFilter(IN Byte DevNo
);
475 /*******************************************************************************
477 * Add Pid number with extension parameters, specifically for DVB-H.
480 * pid - pid structure data (Specify the PID number and relevant attributes in DVB-H mode).
483 * 0 if no error, non-zero value otherwise.
484 ******************************************************************************/
485 DTVEXPORT Dword
g_ITEAPI_TxAddPIDEx(IN DTVPid pid
, IN Byte DevNo
);
487 /*******************************************************************************
489 * Start to Transfer data from device, for DVB-T mode.
490 * The drievr starts to receive TS data and store it in the ring buffer.
496 * 0 if no error, non-zero value otherwise.
497 ******************************************************************************/
498 Dword
g_ITEAPI_StartTransfer(IN Byte DevNo
);
500 /*******************************************************************************
502 * For DTVCAM. Start to Transfer data from device, for DVB-T mode.
503 * The drievr starts to receive TS data and store it in the ring buffer.
509 * 0 if no error, non-zero value otherwise.
510 ******************************************************************************/
511 Dword
g_ITEAPI_StartTransfer_CMD(IN Byte DevNo
);
513 /*******************************************************************************
515 * Stop to Transfer data from device, for DVB-T mode.
521 * 0 if no error, non-zero value otherwise.
522 ******************************************************************************/
523 DTVEXPORT Dword
g_ITEAPI_StopTransfer(IN Byte DevNo
);
525 /*******************************************************************************
527 * For DTVCAM. Stop to Transfer data from device, for DVB-T mode.
533 * 0 if no error, non-zero value otherwise.
534 ******************************************************************************/
535 DTVEXPORT Dword
g_ITEAPI_StopTransfer_CMD(IN Byte DevNo
);
537 /*******************************************************************************
539 * Control Power Saving. The function can be called by application for power saving while idle mode.
542 * byCtrl - 1: Power Up, 0: Power Down.
543 * Power Up : Resume device to normal state.
544 * Power Down : Suspend device to hibernation state.
547 * 0 if no error, non-zero value otherwise.
548 ******************************************************************************/
549 DTVEXPORT Dword
g_ITEAPI_TxPowerCtl(IN Byte byCtrl
, IN Byte DevNo
);
551 /*******************************************************************************
553 * Get Driver & API Version.
557 * - Return driver information with PDEVICE_INFO structure.
560 * 0 if no error, non-zero value otherwise.
561 ******************************************************************************/
562 DTVEXPORT Dword
g_ITEAPI_TxGetDrvInfo(
563 OUT PDEVICE_INFO pDeviceInfo
,
566 /*******************************************************************************
568 * Read OFDM register.
571 * dwRegAddr - Register address.
572 * pbyData - Register value.
575 * 0 if no error, non-zero value otherwise.
576 ******************************************************************************/
577 DTVEXPORT Dword
g_ITEAPI_TxReadRegOFDM(
582 /*******************************************************************************
584 * Write OFDM register.
587 * dwRegAddr - Register address.
588 * byData - Register value.
591 * 0 if no error, non-zero value otherwise.
592 ******************************************************************************/
593 DTVEXPORT Dword
g_ITEAPI_TxWriteRegOFDM(
598 /*******************************************************************************
600 * Read LINK register.
603 * dwRegAddr - Register address.
604 * pbyData - Register value.
607 * 0 if no error, non-zero value otherwise.
608 ******************************************************************************/
609 DTVEXPORT Dword
g_ITEAPI_TxReadRegLINK(
614 /*******************************************************************************
616 * Write LINK register.
619 * dwRegAddr - Register address.
620 * byData - Register value.
623 * 0 if no error, non-zero value otherwise.
624 ******************************************************************************/
625 DTVEXPORT Dword
g_ITEAPI_TxWriteRegLINK(
630 /*******************************************************************************
635 * wRegAddr - Register address.
636 * pbyData - Register value.
639 * 0 if no error, non-zero value otherwise.
640 ******************************************************************************/
641 DTVEXPORT Dword
g_ITEAPI_TxWriteEEPROM(
646 /*******************************************************************************
651 * wRegAddr - Register address.
652 * pbyData - Register value.
655 * 0 if no error, non-zero value otherwise.
656 ******************************************************************************/
657 DTVEXPORT Dword
g_ITEAPI_TxReadEEPROM(
662 /*******************************************************************************
667 * frequency, bandwidth, MaxGain, MinGain
670 * 0 if no error, non-zero value otherwise.
671 ******************************************************************************/
672 DTVEXPORT Dword
g_ITEAPI_TxGetGainRange(
679 /*******************************************************************************
687 * 0 if no error, non-zero value otherwise.
688 ******************************************************************************/
689 DTVEXPORT Dword
g_ITEAPI_TxGetTPS(
693 /*******************************************************************************
701 * 0 if no error, non-zero value otherwise.
702 ******************************************************************************/
703 DTVEXPORT Dword
g_ITEAPI_TxSetTPS(
707 /*******************************************************************************
715 * 0 if no error, non-zero value otherwise.
716 ******************************************************************************/
717 DTVEXPORT Dword
g_ITEAPI_TxGetOutputGain(
721 /*******************************************************************************
723 * Get Number of Device.
726 * NumOfDev - Number of Device.
729 * 0 if no error, non-zero value otherwise.
730 ******************************************************************************/
731 DTVEXPORT Dword
g_ITEAPI_TxGetNumOfDevice(
735 /*******************************************************************************
737 * g_ITEAPI_TxSendHwPSITable: Send Hardware PSI Table.
740 * bufferSize - size of TableBuffer.
744 * 0 if no error, non-zero value otherwise.
745 ******************************************************************************/
746 DTVEXPORT Dword
g_ITEAPI_TxSendCustomPacketOnce(
748 IN Byte
*TableBuffer
,
751 /*******************************************************************************
753 * g_ITEAPI_TxAccessFwPSITable: Send Hardware PSI Table.
756 * bufferSize - size of TableBuffer.
758 * index - PSI Table Index.
761 * 0 if no error, non-zero value otherwise.
762 ******************************************************************************/
763 DTVEXPORT Dword
g_ITEAPI_TxSetPeridicCustomPacket(
765 IN Byte
*TableBuffer
,
769 /*******************************************************************************
771 * g_ITEAPI_TxSetFwPSITableTimer: Send Hardware PSI Table.
774 * index - PSI Table Index.
775 * timer_interval- timer.
778 * 0 if no error, non-zero value otherwise.
779 ******************************************************************************/
780 DTVEXPORT Dword
g_ITEAPI_TxSetPeridicCustomPacketTimer(
782 IN Word timer_interval
,
785 /*******************************************************************************
794 * 0: no error. write sucess.
795 * non-zero: write fail. buffer overflow or other error. maybe write again.
796 ******************************************************************************/
797 DTVEXPORT Dword
g_ITEAPI_TxSendTSData(
799 IN OUT Dword pdwBufferLength
,
802 /*******************************************************************************
804 * Set IQ Table From File.
807 * ptrIQtable - file content load from binary file.
808 * IQtableSize - file size.
811 * 0 if no error, non-zero value otherwise.
812 ******************************************************************************/
813 DTVEXPORT Dword
g_ITEAPI_TxSetIQTable(
818 /*******************************************************************************
820 * Get Chip Version ID.
826 * 0 if no error, non-zero value otherwise.
827 ******************************************************************************/
828 DTVEXPORT Dword
g_ITEAPI_TxGetChipType(
832 /*******************************************************************************
834 * Control Pid Filter.
842 * 0 if no error, non-zero value otherwise.
843 ******************************************************************************/
844 Dword
g_ITEAPI_TxControlPidFilter(
849 /*******************************************************************************
851 * Set DC Calibration Value.
858 * 0 if no error, non-zero value otherwise.
859 ******************************************************************************/
860 DTVEXPORT Dword
g_ITEAPI_TxSetDCCalibrationValue(
865 /*******************************************************************************
867 * Write Low Bit Rate Data.
873 * 0 if no error, non-zero value otherwise.
874 ******************************************************************************/
875 DTVEXPORT Dword
g_ITEAPI_TxWriteLowBitRateData(
877 IN Dword BufferLength
,
880 /*******************************************************************************
888 * 0 if no error, non-zero value otherwise.
889 ******************************************************************************/
890 Dword
g_ITEAPI_TxWriteCmd(
895 /*******************************************************************************
897 * Set ISDB-T Channel Modulation.
900 * ISDBTModulation isdbtModulation.
903 * 0 if no error, non-zero value otherwise.
904 ******************************************************************************/
905 DTVEXPORT Dword
g_ITEAPI_TxSetISDBTChannelModulation(
906 IN ISDBTModulation isdbtModulation
,
909 /*******************************************************************************
911 * Set TMCC Information.
918 * 0 if no error, non-zero value otherwise.
919 ******************************************************************************/
920 DTVEXPORT Dword
g_ITEAPI_TxSetTMCCInfo(
921 IN TMCCINFO TmccInfo
,
924 /*******************************************************************************
926 * Get TMCC Information.
929 * pTMCCINFO pTmccInfo.
932 * 0 if no error, non-zero value otherwise.
933 ******************************************************************************/
934 DTVEXPORT Dword
g_ITEAPI_TxGetTMCCInfo(
935 OUT pTMCCINFO pTmccInfo
,
938 /*******************************************************************************
940 * Get TMCC Information.
943 * Word* BitRate_Kbps.
946 * 0 if no error, non-zero value otherwise.
947 ******************************************************************************/
948 DTVEXPORT Dword
g_ITEAPI_TxGetTSinputBitRate(
949 OUT Word
* BitRate_Kbps
,
952 /*******************************************************************************
954 * Add Pid To ISDB-T Pid Filter.
957 * Word* BitRate_Kbps.
960 * 0 if no error, non-zero value otherwise.
961 ******************************************************************************/
962 DTVEXPORT Dword
g_ITEAPI_TxAddPidToISDBTPidFilter(
965 IN TransportLayer layer
,
968 /*******************************************************************************
976 * 0 if no error, non-zero value otherwise.
977 ******************************************************************************/
978 DTVEXPORT Dword
g_ITEAPI_TxSetPCRMode(
982 /*******************************************************************************
990 * 0 if no error, non-zero value otherwise.
991 ******************************************************************************/
992 DTVEXPORT Dword
g_ITEAPI_TxSetDCTable(
993 IN DCtable
* pDCtable
,
994 IN DCtable
* pOFStable
,
998 /*******************************************************************************
1000 * Get Frequency Index.
1006 * 0 if no error, non-zero value otherwise.
1007 ******************************************************************************/
1008 DTVEXPORT Dword
g_ITEAPI_TxGetFrequencyIndex(
1009 IN Byte
* frequencyindex
,
1012 /*******************************************************************************
1020 * 0 if no error, non-zero value otherwise.
1021 ******************************************************************************/
1022 DTVEXPORT Dword
g_ITEAPI_TxGetDTVMode(
1026 /*******************************************************************************
1028 * Enable TPS Encryption.
1034 * 0 if no error, non-zero value otherwise.
1035 ******************************************************************************/
1036 DTVEXPORT Dword
g_ITEAPI_TxEnableTPSEncryption(
1040 /*******************************************************************************
1042 * Disable TPS Encryption.
1048 * 0 if no error, non-zero value otherwise.
1049 ******************************************************************************/
1050 DTVEXPORT Dword
g_ITEAPI_TxDisableTPSEncryption(
1053 /*******************************************************************************
1055 * Get IT9560 Firmware info.
1061 * 0 if no error, non-zero value otherwise.
1062 ******************************************************************************/
1063 Dword
g_ITEAPI_IT9560GetStatistic(
1064 OUT Byte
*FwVersion
,
1067 /*******************************************************************************
1069 * Write IT9560 EEPROM.
1075 * 0 if no error, non-zero value otherwise.
1076 ******************************************************************************/
1077 Dword
g_ITEAPI_IT9560WriteEEPROM(
1078 IN Word slaveAddress
,
1079 IN Word startAddressOffset
,
1084 /*******************************************************************************
1086 * Read IT9560 EEPROM.
1092 * 0 if no error, non-zero value otherwise.
1093 ******************************************************************************/
1094 Dword
g_ITEAPI_IT9560ReadEEPROM(
1095 IN Word slaveAddress
,
1096 IN Word startAddressOffset
,
1101 /*******************************************************************************
1103 * Write IT9560 Registers.
1109 * 0 if no error, non-zero value otherwise.
1110 ******************************************************************************/
1111 Dword
g_ITEAPI_IT9560WriteRegisters(
1113 IN Processor processor
,
1114 IN Byte bufferLength
,
1118 /*******************************************************************************
1120 * Read IT9560 Registers.
1126 * 0 if no error, non-zero value otherwise.
1127 ******************************************************************************/
1128 Dword
g_ITEAPI_IT9560ReadRegisters(
1130 IN Processor processor
,
1131 IN Byte bufferLength
,