summaryrefslogtreecommitdiff
path: root/v4l_experimental/firesat/avc_api.h
diff options
context:
space:
mode:
Diffstat (limited to 'v4l_experimental/firesat/avc_api.h')
-rw-r--r--v4l_experimental/firesat/avc_api.h435
1 files changed, 0 insertions, 435 deletions
diff --git a/v4l_experimental/firesat/avc_api.h b/v4l_experimental/firesat/avc_api.h
deleted file mode 100644
index 7948a8f9d..000000000
--- a/v4l_experimental/firesat/avc_api.h
+++ /dev/null
@@ -1,435 +0,0 @@
-/***************************************************************************
- avc_api.h - description
- -------------------
- begin : Wed May 1 2000
- copyright : (C) 2000 by Manfred Weihs
- copyright : (C) 2003 by Philipp Gutgsell
- email : 0014guph@edu.fh-kaernten.ac.at
- ***************************************************************************/
-
-/***************************************************************************
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- ***************************************************************************/
-
-/*
- This is based on code written by Peter Halwachs, Thomas Groiss and Andreas Monitzer.
-*/
-
-
-#ifndef __AVC_API_H__
-#define __AVC_API_H__
-
-#include <linux/dvb/frontend.h>
-
-#define BYTE unsigned char
-#define WORD unsigned short
-#define DWORD unsigned long
-#define ULONG unsigned long
-#define LONG long
-
-
-/*************************************************************
-
- FCP Address range
-
-**************************************************************/
-
-#define RESPONSE_REGISTER 0xFFFFF0000D00ULL
-#define COMMAND_REGISTER 0xFFFFF0000B00ULL
-#define PCR_BASE_ADDRESS 0xFFFFF0000900ULL
-
-
-/********************** ********************* ***************
-
- definition of structures
-
-*************************************************************/
-
-typedef struct
-{
- int Nr_SourcePlugs;
- int Nr_DestinationPlugs;
-} TunerInfo;
-
-
-/***********************************************
-
- supported cts
-
-************************************************/
-
-#define AVC 0x0
-
-// FCP command frame with ctype = 0x0 is AVC command frame
-
-#ifdef __LITTLE_ENDIAN
-
-// Definition FCP Command Frame
-typedef struct _AVCCmdFrm
-{
- // AV/C command frame
- BYTE ctype : 4 ; // command type
- BYTE cts : 4 ; // always 0x0 for AVC
- BYTE suid : 3 ; // subunit ID
- BYTE sutyp : 5 ; // subunit_typ
- BYTE opcode : 8 ; // opcode
- BYTE operand[509] ; // array of operands [1-507]
- int length; //length of the command frame
-} AVCCmdFrm ;
-
-// Definition FCP Response Frame
-typedef struct _AVCRspFrm
-{
- // AV/C response frame
- BYTE resp : 4 ; // response type
- BYTE cts : 4 ; // always 0x0 for AVC
- BYTE suid : 3 ; // subunit ID
- BYTE sutyp : 5 ; // subunit_typ
- BYTE opcode : 8 ; // opcode
- BYTE operand[509] ; // array of operands [1-507]
- int length; //length of the response frame
-} AVCRspFrm ;
-
-#else
-
-typedef struct _AVCCmdFrm
-{
- BYTE cts:4;
- BYTE ctype:4;
- BYTE sutyp:5;
- BYTE suid:3;
- BYTE opcode;
- BYTE operand[509];
- int length;
-} AVCCmdFrm;
-
-typedef struct _AVCRspFrm
-{
- BYTE cts:4;
- BYTE resp:4;
- BYTE sutyp:5;
- BYTE suid:3;
- BYTE opcode;
- BYTE operand[509];
- int length;
-} AVCRspFrm;
-
-#endif
-
-/*************************************************************
-
-
- AVC command types (ctype)
-
-**************************************************************///
-
-
-#define CONTROL 0x00
-#define STATUS 0x01
-#define INQUIRY 0x02
-#define NOTIFY 0x03
-
-/*************************************************************
-
- AVC respond types
-
-**************************************************************///
-
-#define NOT_IMPLEMENTED 0x8
-#define ACCEPTED 0x9
-#define REJECTED 0xA
-#define STABLE 0xC
-#define CHANGED 0xD
-#define INTERIM 0xF
-
-/*************************************************************
-
- AVC FW UPDATE Responses
-
-**************************************************************///
-
-#define FW_INVALID_COUNT 0x4
-#define FW_INVALID_CRC 0x5
-#define FW_SUCCESS 0x6
-#define FW_ERROR 0x7
-#define FW_START_BURNING 0x8
-#define FW_INVALID_HW_VERSION 0x9
-
-/*************************************************************
-
- AVC opcodes
-
-**************************************************************///
-#define CONNECT 0x24
-#define DISCONNECT 0x25
-#define UNIT_INFO 0x30
-#define SUBUNIT_Info 0x31
-#define VENDOR 0x00
-
-#define PLUG_INFO 0x02
-#define OPEN_DESCRIPTOR 0x08
-#define READ_DESCRIPTOR 0x09
-#define OBJECT_NUMBER_SELECT 0x0D
-
-/*************************************************************
-
- AVCTuner opcodes
-
-**************************************************************/
-
-#define DSIT 0xC8
-#define DSD 0xCB
-#define DESCRIPTOR_TUNER_STATUS 0x80
-#define DESCRIPTOR_SUBUNIT_IDENTIFIER 0x00
-
-/*************************************************************
-
- AVCTuner list types
-
-**************************************************************/
-
-#define Multiplex_List 0x80
-#define Service_List 0x82
-
-/*************************************************************
-
- AVCTuner object entries
-
-**************************************************************/
-
-#define Multiplex 0x80
-#define Service 0x82
-#define Service_with_specified_components 0x83
-#define Preferred_components 0x90
-#define Component 0x84
-
-/*************************************************************
-
- Vendor-specific commands
-
-**************************************************************/
-
-#define SFE_VENDOR_EL_COMPANYID_0 0x00
-#define SFE_VENDOR_EL_COMPANYID_1 0x0C
-#define SFE_VENDOR_EL_COMPANYID_2 0x6C
-#define SFE_VENDOR_DE_COMPANYID_0 0x00
-#define SFE_VENDOR_DE_COMPANYID_1 0x12
-#define SFE_VENDOR_DE_COMPANYID_2 0x87
-
-#define SFE_VENDOR_OPCODE_SET_LNB_PARAMS 0x50
-#define SFE_VENDOR_OPCODE_GET_LNB_PARAMS 0x51
-#define SFE_VENDOR_OPCODE_LNB_CONTROL 0x52
-
-#define SFE_VENDOR_OPCODE_CI_READ_TPDU 0x54
-#define SFE_VENDOR_OPCODE_CI_WRITE_TPDU 0x53
-#define SFE_VENDOR_OPCODE_CI_RESET 0x55
-
-#define SFE_VENDOR_MAX_NR_COMPONENTS 0x4
-#define SFE_VENDOR_MAX_NR_SERVICES 0x3
-#define SFE_VENDOR_MAX_NR_DSD_ELEMENTS 0x10
-
-#define SFE_VENDOR_OPCODE_REGISTER_REMOTE_CONTROL 0x0A
-
-
-//AVCTuner DVB identifier service_ID
-
-#define DVB 0x20
-
-/*************************************************************
-
- AVC descriptor types
-
-**************************************************************/
-
-#define Subunit_Identifier_Descriptor 0x00
-#define Tuner_Status_Descriptor 0x80
-
-typedef struct
-{
- BYTE Subunit_Type;
- BYTE Max_Subunit_ID;
-} SUBUNIT_INFO;
-
-/*************************************************************
-
- AVCTuner DVB object IDs are 6 byte long
-
-**************************************************************/
-
-typedef struct
-{
- BYTE Byte0;
- BYTE Byte1;
- BYTE Byte2;
- BYTE Byte3;
- BYTE Byte4;
- BYTE Byte5;
-
-}OBJECT_ID;
-
-/*************************************************************
-
- MULIPLEX Structs
-
-**************************************************************/
-typedef struct
-{
-#ifdef __LITTLE_ENDIAN
- BYTE RF_frequency_hByte:6;
- BYTE raster_Frequency:2;//Bit7,6 raster frequency
-#else
- BYTE raster_Frequency:2;
- BYTE RF_frequency_hByte:6;
-#endif
- BYTE RF_frequency_mByte;
- BYTE RF_frequency_lByte;
-
-}FREQUENCY;
-
-#ifdef __LITTLE_ENDIAN
-
-typedef struct
-{
- BYTE Modulation :1;
- BYTE FEC_inner :1;
- BYTE FEC_outer :1;
- BYTE Symbol_Rate :1;
- BYTE Frequency :1;
- BYTE Orbital_Pos :1;
- BYTE Polarisation :1;
- BYTE reserved_fields :1;
- BYTE reserved1 :7;
- BYTE Network_ID :1;
-
-}MULTIPLEX_VALID_FLAGS;
-
-typedef struct
-{
- BYTE GuardInterval:1;
- BYTE CodeRateLPStream:1;
- BYTE CodeRateHPStream:1;
- BYTE HierarchyInfo:1;
- BYTE Constellation:1;
- BYTE Bandwidth:1;
- BYTE CenterFrequency:1;
- BYTE reserved1:1;
- BYTE reserved2:5;
- BYTE OtherFrequencyFlag:1;
- BYTE TransmissionMode:1;
- BYTE NetworkId:1;
-}MULTIPLEX_VALID_FLAGS_DVBT;
-
-#else
-
-typedef struct
-{
- BYTE reserved_fields:1;
- BYTE Polarisation:1;
- BYTE Orbital_Pos:1;
- BYTE Frequency:1;
- BYTE Symbol_Rate:1;
- BYTE FEC_outer:1;
- BYTE FEC_inner:1;
- BYTE Modulation:1;
- BYTE Network_ID:1;
- BYTE reserved1:7;
-}MULTIPLEX_VALID_FLAGS;
-
-typedef struct
-{
- BYTE reserved1:1;
- BYTE CenterFrequency:1;
- BYTE Bandwidth:1;
- BYTE Constellation:1;
- BYTE HierarchyInfo:1;
- BYTE CodeRateHPStream:1;
- BYTE CodeRateLPStream:1;
- BYTE GuardInterval:1;
- BYTE NetworkId:1;
- BYTE TransmissionMode:1;
- BYTE OtherFrequencyFlag:1;
- BYTE reserved2:5;
-}MULTIPLEX_VALID_FLAGS_DVBT;
-
-#endif
-
-typedef union
-{
-
- MULTIPLEX_VALID_FLAGS Bits;
- MULTIPLEX_VALID_FLAGS_DVBT Bits_T;
- struct
- {
- BYTE ByteHi;
- BYTE ByteLo;
- } Valid_Word;
-
-} M_VALID_FLAGS;
-
-typedef struct
-{
-#ifdef __LITTLE_ENDIAN
- BYTE ActiveSystem;
- BYTE reserved:5;
- BYTE NoRF:1;
- BYTE Moving:1;
- BYTE Searching:1;
-
- BYTE SelectedAntenna:7;
- BYTE Input:1;
-
- BYTE BER[4];
-
- BYTE SignalStrength;
- FREQUENCY Frequency;
-
- BYTE ManDepInfoLength;
-#else
- BYTE ActiveSystem;
- BYTE Searching:1;
- BYTE Moving:1;
- BYTE NoRF:1;
- BYTE reserved:5;
-
- BYTE Input:1;
- BYTE SelectedAntenna:7;
-
- BYTE BER[4];
-
- BYTE SignalStrength;
- FREQUENCY Frequency;
-
- BYTE ManDepInfoLength;
-#endif
-} ANTENNA_INPUT_INFO; // 11 Byte
-
-#define LNBCONTROL_DONTCARE 0xff
-
-extern int AVCWrite(struct firesat *firesat, const AVCCmdFrm *CmdFrm, AVCRspFrm *RspFrm);
-extern int AVCRecv(struct firesat *firesat, u8 *data, size_t length);
-
-extern int AVCTuner_DSIT(struct firesat *firesat,
- int Source_Plug,
- struct dvb_frontend_parameters *params,
- BYTE *status);
-
-extern int AVCTunerStatus(struct firesat *firesat, ANTENNA_INPUT_INFO *antenna_input_info);
-extern int AVCTuner_DSD(struct firesat *firesat, struct dvb_frontend_parameters *params, BYTE *status);
-extern int AVCTuner_SetPIDs(struct firesat *firesat, unsigned char pidc, u16 pid[]);
-
-extern int AVCIdentifySubunit(struct firesat *firesat, unsigned char *systemId, int *transport, int *has_ci);
-extern int AVCLNBControl(struct firesat *firesat, char voltage, char burst, char conttone, char nrdiseq, struct dvb_diseqc_master_cmd *diseqcmd);
-extern int AVCSubUnitInfo(struct firesat *firesat, char *subunitcount);
-extern int AVCRegisterRemoteControl(struct firesat *firesat);
-
-extern int AVCResetTPDU(struct firesat *firesat);
-extern int AVCWriteTPDU(struct firesat *firesat, const char *tpdupacket, int length);
-extern int AVCReadTPDU(struct firesat *firesat, char *tpdupacket, int *length);
-
-#endif
-