⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 smscoreapi.h

📁 trident tm5600的linux驱动
💻 H
📖 第 1 页 / 共 2 页
字号:
	u32 NumOfRows; /* Number of rows in MPE table */	u32 NumOfPaddCols; /* Number of padding columns in MPE table */	u32 NumOfPunctCols; /* Number of puncturing columns in MPE table */	/* Burst parameters */	u32 ErrorTSPackets; /* Number of erroneous transport-stream packets */	u32 TotalTSPackets; /* Total number of transport-stream packets */	u32 NumOfValidMpeTlbs; /* Number of MPE tables which do not include				* errors after MPE RS decoding */	u32 NumOfInvalidMpeTlbs; /* Number of MPE tables which include errors				  * after MPE RS decoding */	u32 NumOfCorrectedMpeTlbs; /* Number of MPE tables which were corrected				    * by MPE RS decoding */	/* Common params */	u32 BERErrorCount; /* Number of errornous SYNC bits. */	u32 BERBitCount; /* Total number of SYNC bits. */	/* Interface information */	u32 SmsToHostTxErrors; /* Total number of transmission errors. */	/* DAB/T-DMB */	u32 PreBER; /* DAB/T-DMB only: Pre Viterbi BER [1E-5] */	/* DVB-H TPS parameters */	u32 CellId; /* TPS Cell ID in bits 15..0, bits 31..16 zero;		     * if set to 0xFFFFFFFF cell_id not yet recovered */};struct SmsMsgStatisticsInfo_ST {	u32 RequestResult;	struct SMSHOSTLIB_STATISTICS_ST Stat;	/* Split the calc of the SNR in DAB */	u32 Signal; /* dB */	u32 Noise; /* dB */};#if 0struct SMSHOSTLIB_ISDBT_LAYER_STAT_ST {	/* Per-layer information */	u32 CodeRate; /* Code Rate from SMSHOSTLIB_CODE_RATE_ET,		       * 255 means layer does not exist */	u32 Constellation; /* Constellation from SMSHOSTLIB_CONSTELLATION_ET,			    * 255 means layer does not exist */	u32 BER; /* Post Viterbi BER [1E-5], 0xFFFFFFFF indicate N/A */	u32 BERErrorCount; /* Post Viterbi Error Bits Count */	u32 BERBitCount; /* Post Viterbi Total Bits Count */	u32 PreBER; /* Pre Viterbi BER [1E-5], 0xFFFFFFFF indicate N/A */	u32 TS_PER; /* Transport stream PER [%], 0xFFFFFFFF indicate N/A */	u32 ErrorTSPackets; /* Number of erroneous transport-stream packets */	u32 TotalTSPackets; /* Total number of transport-stream packets */	u32 TILdepthI; /* Time interleaver depth I parameter,			* 255 means layer does not exist */	u32 NumberOfSegments; /* Number of segments in layer A,			       * 255 means layer does not exist */	u32 TMCCErrors; /* TMCC errors */};struct SMSHOSTLIB_STATISTICS_ISDBT_ST {	u32 StatisticsType; /* Enumerator identifying the type of the				* structure.  Values are the same as				* SMSHOSTLIB_DEVICE_MODES_E				*				* This field MUST always be first in any				* statistics structure */	u32 FullSize; /* Total size of the structure returned by the modem.		       * If the size requested by the host is smaller than		       * FullSize, the struct will be truncated */	/* Common parameters */	u32 IsRfLocked; /* 0 - not locked, 1 - locked */	u32 IsDemodLocked; /* 0 - not locked, 1 - locked */	u32 IsExternalLNAOn; /* 0 - external LNA off, 1 - external LNA on */	/* Reception quality */	s32  SNR; /* dB */	s32  RSSI; /* dBm */	s32  InBandPwr; /* In band power in dBM */	s32  CarrierOffset; /* Carrier Offset in Hz */	/* Transmission parameters */	u32 Frequency; /* Frequency in Hz */	u32 Bandwidth; /* Bandwidth in MHz */	u32 TransmissionMode; /* ISDB-T transmission mode */	u32 ModemState; /* 0 - Acquisition, 1 - Locked */	u32 GuardInterval; /* Guard Interval, 1 divided by value */	u32 SystemType; /* ISDB-T system type (ISDB-T / ISDB-Tsb) */	u32 PartialReception; /* TRUE - partial reception, FALSE otherwise */	u32 NumOfLayers; /* Number of ISDB-T layers in the network */	/* Per-layer information */	/* Layers A, B and C */	struct SMSHOSTLIB_ISDBT_LAYER_STAT_ST	LayerInfo[3];	/* Per-layer statistics, see SMSHOSTLIB_ISDBT_LAYER_STAT_ST */	/* Interface information */	u32 SmsToHostTxErrors; /* Total number of transmission errors. */};struct SMSHOSTLIB_STATISTICS_DVB_ST {	u32 StatisticsType; /* Enumerator identifying the type of the			     * structure.  Values are the same as			     * SMSHOSTLIB_DEVICE_MODES_E			     * This field MUST always first in any			     * statistics structure */	u32 FullSize; /* Total size of the structure returned by the modem.		       * If the size requested by the host is smaller than		       * FullSize, the struct will be truncated */	/* Common parameters */	u32 IsRfLocked; /* 0 - not locked, 1 - locked */	u32 IsDemodLocked; /* 0 - not locked, 1 - locked */	u32 IsExternalLNAOn; /* 0 - external LNA off, 1 - external LNA on */	/* Reception quality */	s32  SNR; /* dB */	u32 BER; /* Post Viterbi BER [1E-5] */	u32 BERErrorCount; /* Number of errornous SYNC bits. */	u32 BERBitCount; /* Total number of SYNC bits. */	u32 TS_PER; /* Transport stream PER, 0xFFFFFFFF indicate N/A */	u32 MFER; /* DVB-H frame error rate in percentage,		   * 0xFFFFFFFF indicate N/A, valid only for DVB-H */	s32  RSSI; /* dBm */	s32  InBandPwr; /* In band power in dBM */	s32  CarrierOffset; /* Carrier Offset in bin/1024 */	/* Transmission parameters */	u32 Frequency; /* Frequency in Hz */	u32 Bandwidth; /* Bandwidth in MHz */	u32 ModemState; /* from SMSHOSTLIB_DVB_MODEM_STATE_ET */	u32 TransmissionMode; /* FFT mode carriers in Kilos */	u32 GuardInterval; /* Guard Interval, 1 divided by value */	u32 CodeRate; /* Code Rate from SMSHOSTLIB_CODE_RATE_ET */	u32 LPCodeRate; /* Low Priority Code Rate from			 * SMSHOSTLIB_CODE_RATE_ET */	u32 Hierarchy; /* Hierarchy from SMSHOSTLIB_HIERARCHY_ET */	u32 Constellation; /* Constellation from SMSHOSTLIB_CONSTELLATION_ET */	/* Burst parameters, valid only for DVB-H */	u32 BurstSize; /* Current burst size in bytes */	u32 BurstDuration; /* Current burst duration in mSec */	u32 BurstCycleTime; /* Current burst cycle time in mSec */	u32 CalculatedBurstCycleTime; /* Current burst cycle time in mSec,				       * as calculated by demodulator */	u32 NumOfRows; /* Number of rows in MPE table */	u32 NumOfPaddCols; /* Number of padding columns in MPE table */	u32 NumOfPunctCols; /* Number of puncturing columns in MPE table */	u32 ErrorTSPackets; /* Number of erroneous transport-stream packets */	u32 TotalTSPackets; /* Total number of transport-stream packets */	u32 NumOfValidMpeTlbs; /* Number of MPE tables which do not include				* errors after MPE RS decoding */	u32 NumOfInvalidMpeTlbs; /* Number of MPE tables which include				  * errors after MPE RS decoding */	u32 NumOfCorrectedMpeTlbs; /* Number of MPE tables which were				    * corrected by MPE RS decoding */	u32 NumMPEReceived; /* DVB-H, Num MPE section received */	/* DVB-H TPS parameters */	u32 CellId; /* TPS Cell ID in bits 15..0, bits 31..16 zero;		     * if set to 0xFFFFFFFF cell_id not yet recovered */	u32 DvbhSrvIndHP; /* DVB-H service indication info,			   * bit 1 - Time Slicing indicator,			   * bit 0 - MPE-FEC indicator */	u32 DvbhSrvIndLP; /* DVB-H service indication info,			   * bit 1 - Time Slicing indicator,			   * bit 0 - MPE-FEC indicator */	/* Interface information */	u32 SmsToHostTxErrors; /* Total number of transmission errors. */};struct SMSHOSTLIB_GPIO_CONFIG_ST {	u8	Direction; /* GPIO direction: Input - 0, Output - 1 */	u8	PullUpDown; /* PullUp/PullDown: None - 0,			     * PullDown - 1, PullUp - 2, Keeper - 3 */	u8	InputCharacteristics; /* Input Characteristics: Normal - 0,				       * Schmitt trigger - 1 */	u8	OutputSlewRate; /* Output Slew Rate:				 * Fast slew rate - 0, Slow slew rate - 1 */	u8	OutputDriving; /* Output driving capability:				* 4mA - 0, 8mA - 1, 12mA - 2, 16mA - 3 */};struct SMSHOSTLIB_I2C_REQ_ST {	u32	DeviceAddress; /* I2c device address */	u32	WriteCount; /* number of bytes to write */	u32	ReadCount; /* number of bytes to read */	u8	Data[1];};struct SMSHOSTLIB_I2C_RES_ST {	u32	Status; /* non-zero value in case of failure */	u32	ReadCount; /* number of bytes read */	u8	Data[1];};#endifstruct smsdvb_client_t {	struct list_head entry;	struct smscore_device_t	*coredev;	struct smscore_client_t	*smsclient;	struct dvb_adapter	adapter;	struct dvb_demux	demux;	struct dmxdev		dmxdev;	struct dvb_frontend	frontend;	fe_status_t		fe_status;	int			fe_ber, fe_snr, fe_signal_strength;	struct completion	tune_done, stat_done;	/* todo: save freq/band instead whole struct */	struct dvb_frontend_parameters fe_params;};extern void smscore_registry_setmode(char *devpath, int mode);extern int smscore_registry_getmode(char *devpath);extern int smscore_register_hotplug(hotplug_t hotplug);extern void smscore_unregister_hotplug(hotplug_t hotplug);extern int smscore_register_device(struct smsdevice_params_t *params,				   struct smscore_device_t **coredev);extern void smscore_unregister_device(struct smscore_device_t *coredev);extern int smscore_start_device(struct smscore_device_t *coredev);extern int smscore_load_firmware(struct smscore_device_t *coredev,				 char *filename,				 loadfirmware_t loadfirmware_handler);extern int smscore_set_device_mode(struct smscore_device_t *coredev, int mode);extern int smscore_get_device_mode(struct smscore_device_t *coredev);extern int smscore_register_client(struct smscore_device_t *coredev,				    struct smsclient_params_t *params,				    struct smscore_client_t **client);extern void smscore_unregister_client(struct smscore_client_t *client);extern int smsclient_sendrequest(struct smscore_client_t *client,				 void *buffer, size_t size);extern void smscore_onresponse(struct smscore_device_t *coredev,			       struct smscore_buffer_t *cb);#if 0extern int smscore_get_common_buffer_size(struct smscore_device_t *coredev);extern int smscore_map_common_buffer(struct smscore_device_t *coredev,				      struct vm_area_struct *vma);#endifexternstruct smscore_buffer_t *smscore_getbuffer(struct smscore_device_t *coredev);extern void smscore_putbuffer(struct smscore_device_t *coredev,			      struct smscore_buffer_t *cb);void smscore_set_board_id(struct smscore_device_t *core, int id);int smscore_get_board_id(struct smscore_device_t *core);/* smsdvb.c */int smsdvb_register(void);void smsdvb_unregister(void);/* smsusb.c */int smsusb_register(void);void smsusb_unregister(void);/* ------------------------------------------------------------------------ */extern int sms_debug;#define DBG_INFO 1#define DBG_ADV  2#define sms_printk(kern, fmt, arg...) \	printk(kern "%s: " fmt "\n", __func__, ##arg)#define dprintk(kern, lvl, fmt, arg...) do {\	if (sms_debug & lvl) \		sms_printk(kern, fmt, ##arg); } while (0)#define sms_log(fmt, arg...) sms_printk(KERN_INFO, fmt, ##arg)#define sms_err(fmt, arg...) \	sms_printk(KERN_ERR, "line: %d: " fmt, __LINE__, ##arg)#define sms_warn(fmt, arg...)  sms_printk(KERN_WARNING, fmt, ##arg)#define sms_info(fmt, arg...) \	dprintk(KERN_INFO, DBG_INFO, fmt, ##arg)#define sms_debug(fmt, arg...) \	dprintk(KERN_DEBUG, DBG_ADV, fmt, ##arg)#endif /* __smscoreapi_h__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -