summaryrefslogtreecommitdiff
path: root/include/tuner_fc0013.h
diff options
context:
space:
mode:
authorDimitri Stolnikov <horiz0n@gmx.net>2012-03-27 20:53:49 +0200
committerDimitri Stolnikov <horiz0n@gmx.net>2012-03-27 20:53:49 +0200
commit001bfb96ef410c24927d04d6b294fe0a2aab4623 (patch)
tree1a920a5e775dbf3df37d77cbf56885491e4efe8c /include/tuner_fc0013.h
parent37bb5ca0693d1eff6772db8a9ac0e19d93523dc9 (diff)
add autotools based build system
Diffstat (limited to 'include/tuner_fc0013.h')
-rw-r--r--include/tuner_fc0013.h155
1 files changed, 155 insertions, 0 deletions
diff --git a/include/tuner_fc0013.h b/include/tuner_fc0013.h
new file mode 100644
index 0000000..b405808
--- /dev/null
+++ b/include/tuner_fc0013.h
@@ -0,0 +1,155 @@
+#ifndef __TUNER_FC0013_H
+#define __TUNER_FC0013_H
+
+/**
+
+@file
+
+@brief FC0013 tuner module declaration
+
+One can manipulate FC0013 tuner through FC0013 module.
+FC0013 module is derived from tuner module.
+
+
+// The following context is implemented for FC0013 source code.
+
+**/
+
+// Definitions
+enum FC0013_TRUE_FALSE_STATUS
+{
+ FC0013_FALSE,
+ FC0013_TRUE,
+};
+
+
+enum FC0013_I2C_STATUS
+{
+ FC0013_I2C_SUCCESS,
+ FC0013_I2C_ERROR,
+};
+
+
+enum FC0013_FUNCTION_STATUS
+{
+ FC0013_FUNCTION_SUCCESS,
+ FC0013_FUNCTION_ERROR,
+};
+
+
+
+// Functions
+int FC0013_Read(void *pTuner, unsigned char RegAddr, unsigned char *pByte);
+int FC0013_Write(void *pTuner, unsigned char RegAddr, unsigned char Byte);
+
+int
+fc0013_SetRegMaskBits(
+ void *pTuner,
+ unsigned char RegAddr,
+ unsigned char Msb,
+ unsigned char Lsb,
+ const unsigned char WritingValue
+ );
+
+int
+fc0013_GetRegMaskBits(
+ void *pTuner,
+ unsigned char RegAddr,
+ unsigned char Msb,
+ unsigned char Lsb,
+ unsigned char *pReadingValue
+ );
+
+int FC0013_Open(void *pTuner);
+int FC0013_SetFrequency(void *pTuner, unsigned long Frequency, unsigned short Bandwidth);
+
+// Set VHF Track depends on input frequency
+int FC0013_SetVhfTrack(void *pTuner, unsigned long Frequency);
+
+
+// The following context is FC0013 tuner API source code
+
+
+// Definitions
+
+// Bandwidth mode
+enum FC0013_BANDWIDTH_MODE
+{
+ FC0013_BANDWIDTH_6000000HZ = 6,
+ FC0013_BANDWIDTH_7000000HZ = 7,
+ FC0013_BANDWIDTH_8000000HZ = 8,
+};
+
+
+// Default for initialing
+#define FC0013_RF_FREQ_HZ_DEFAULT 50000000
+#define FC0013_BANDWIDTH_MODE_DEFAULT FC0013_BANDWIDTH_8000000HZ
+
+
+// Tuner LNA
+enum FC0013_LNA_GAIN_VALUE
+{
+ FC0013_LNA_GAIN_LOW = 0x00, // -6.3dB
+ FC0013_LNA_GAIN_MIDDLE = 0x08, // 7.1dB
+ FC0013_LNA_GAIN_HIGH_17 = 0x11, // 19.1dB
+ FC0013_LNA_GAIN_HIGH_19 = 0x10, // 19.7dB
+};
+
+// Manipulaing functions
+void
+fc0013_GetTunerType(
+ void *pTuner,
+ int *pTunerType
+ );
+
+void
+fc0013_GetDeviceAddr(
+ void *pTuner,
+ unsigned char *pDeviceAddr
+ );
+
+int
+fc0013_Initialize(
+ void *pTuner
+ );
+
+int
+fc0013_SetRfFreqHz(
+ void *pTuner,
+ unsigned long RfFreqHz
+ );
+
+int
+fc0013_GetRfFreqHz(
+ void *pTuner,
+ unsigned long *pRfFreqHz
+ );
+
+// Extra manipulaing functions
+int
+fc0013_SetBandwidthMode(
+ void *pTuner,
+ int BandwidthMode
+ );
+
+int
+fc0013_GetBandwidthMode(
+ void *pTuner,
+ int *pBandwidthMode
+ );
+
+int
+fc0013_RcCalReset(
+ void *pTuner
+ );
+
+int
+fc0013_RcCalAdd(
+ void *pTuner,
+ int RcValue
+ );
+
+
+
+
+#endif