[media] saa7164: Add some encoder firmwares message types and structs
Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
9b8b0199b8
commit
335961ca2e
2 changed files with 160 additions and 1 deletions
|
@ -162,5 +162,50 @@
|
||||||
#define SAA_DMASTATE_PAUSE 0x02
|
#define SAA_DMASTATE_PAUSE 0x02
|
||||||
#define SAA_DMASTATE_RUN 0x03
|
#define SAA_DMASTATE_RUN 0x03
|
||||||
|
|
||||||
/* Hardware registers */
|
/* A/V Mux Input Selector */
|
||||||
|
#define SU_INPUT_SELECT_CONTROL 0x01
|
||||||
|
|
||||||
|
/* Encoder Profiles */
|
||||||
|
#define EU_PROFILE_PS_DVD 0x06
|
||||||
|
#define EU_PROFILE_TS_HQ 0x09
|
||||||
|
#define EU_VIDEO_FORMAT_MPEG_2 0x02
|
||||||
|
|
||||||
|
/* Tuner */
|
||||||
|
#define TU_AUDIO_MODE_CONTROL 0x17
|
||||||
|
|
||||||
|
/* Video Formats */
|
||||||
|
#define TU_STANDARD_CONTROL 0x00
|
||||||
|
#define TU_STANDARD_AUTO_CONTROL 0x01
|
||||||
|
#define TU_STANDARD_NONE 0x00
|
||||||
|
#define TU_STANDARD_NTSC_M 0x01
|
||||||
|
#define TU_STANDARD_PAL_I 0x08
|
||||||
|
#define TU_STANDARD_MANUAL 0x00
|
||||||
|
#define TU_STANDARD_AUTO 0x01
|
||||||
|
|
||||||
|
/* Video Controls */
|
||||||
|
#define PU_BRIGHTNESS_CONTROL 0x02
|
||||||
|
#define PU_CONTRAST_CONTROL 0x03
|
||||||
|
#define PU_HUE_CONTROL 0x06
|
||||||
|
#define PU_SATURATION_CONTROL 0x07
|
||||||
|
#define PU_SHARPNESS_CONTROL 0x08
|
||||||
|
|
||||||
|
/* Audio Controls */
|
||||||
|
#define MUTE_CONTROL 0x01
|
||||||
|
#define VOLUME_CONTROL 0x02
|
||||||
|
#define AUDIO_DEFAULT_CONTROL 0x0D
|
||||||
|
|
||||||
|
/* Default Volume Levels */
|
||||||
|
#define TMHW_LEV_ADJ_DECLEV_DEFAULT 0x00
|
||||||
|
#define TMHW_LEV_ADJ_MONOLEV_DEFAULT 0x00
|
||||||
|
#define TMHW_LEV_ADJ_NICLEV_DEFAULT 0x00
|
||||||
|
#define TMHW_LEV_ADJ_SAPLEV_DEFAULT 0x00
|
||||||
|
#define TMHW_LEV_ADJ_ADCLEV_DEFAULT 0x00
|
||||||
|
|
||||||
|
/* Encoder Related Commands */
|
||||||
|
#define EU_PROFILE_CONTROL 0x00
|
||||||
|
#define EU_VIDEO_FORMAT_CONTROL 0x01
|
||||||
|
#define EU_VIDEO_BIT_RATE_CONTROL 0x02
|
||||||
|
#define EU_VIDEO_INPUT_ASPECT_CONTROL 0x0A
|
||||||
|
#define EU_AUDIO_FORMAT_CONTROL 0x0C
|
||||||
|
#define EU_AUDIO_BIT_RATE_CONTROL 0x0D
|
||||||
|
|
||||||
|
|
|
@ -285,3 +285,117 @@ typedef struct {
|
||||||
u8 guidStrideFormat[16];
|
u8 guidStrideFormat[16];
|
||||||
} __attribute__((packed)) tmComResTSFormatDescrHeader_t;
|
} __attribute__((packed)) tmComResTSFormatDescrHeader_t;
|
||||||
|
|
||||||
|
/* Encoder related structures */
|
||||||
|
|
||||||
|
/* A/V Mux Selector */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 len;
|
||||||
|
u8 type;
|
||||||
|
u8 subtype;
|
||||||
|
u8 unitid;
|
||||||
|
u8 nrinpins;
|
||||||
|
u8 sourceid;
|
||||||
|
} __attribute__((packed)) tmComResSelDescrHeader_t;
|
||||||
|
|
||||||
|
/* A/V Audio processor definitions */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 len;
|
||||||
|
u8 type;
|
||||||
|
u8 subtype;
|
||||||
|
u8 unitid;
|
||||||
|
u8 sourceid;
|
||||||
|
u16 wreserved;
|
||||||
|
u8 controlsize;
|
||||||
|
} __attribute__((packed)) tmComResProcDescrHeader_t;
|
||||||
|
|
||||||
|
/* Video bitrate control message */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 ucVideoBitRateMode;
|
||||||
|
u32 dwVideoBitRate;
|
||||||
|
u32 dwVideoBitRatePeak;
|
||||||
|
} __attribute__((packed)) tmComResEncVideoBitRate_t;
|
||||||
|
|
||||||
|
/* Video Encoder Aspect Ratio message */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 width;
|
||||||
|
u8 height;
|
||||||
|
} __attribute__((packed)) tmComResEncVideoInputAspectRatio_t;
|
||||||
|
|
||||||
|
/* Encoder processor definition */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 len;
|
||||||
|
u8 type;
|
||||||
|
u8 subtype;
|
||||||
|
u8 unitid;
|
||||||
|
u8 vsourceid;
|
||||||
|
u8 asourceid;
|
||||||
|
u8 iunit;
|
||||||
|
u32 dwmControlCap;
|
||||||
|
u32 dwmProfileCap;
|
||||||
|
u32 dwmVidFormatCap;
|
||||||
|
u8 bmVidBitrateCap;
|
||||||
|
u16 wmVidResolutionsCap;
|
||||||
|
u16 wmVidFrmRateCap;
|
||||||
|
u32 dwmAudFormatCap;
|
||||||
|
u8 bmAudBitrateCap;
|
||||||
|
} __attribute__((packed)) tmComResEncoderDescrHeader_t;
|
||||||
|
|
||||||
|
/* Audio processor definition */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 len;
|
||||||
|
u8 type;
|
||||||
|
u8 subtype;
|
||||||
|
u8 unitid;
|
||||||
|
u8 sourceid;
|
||||||
|
u8 controlsize;
|
||||||
|
} __attribute__((packed)) tmComResAFeatureDescrHeader_t;
|
||||||
|
|
||||||
|
/* Audio control messages */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 ucDecoderLevel;
|
||||||
|
u8 ucDecoderFM_Level;
|
||||||
|
u8 ucMonoLevel;
|
||||||
|
u8 ucNICAM_Level;
|
||||||
|
u8 ucSAP_Level;
|
||||||
|
u8 ucADC_Level;
|
||||||
|
} __attribute__((packed)) tmComResAudioDefaults_t;
|
||||||
|
|
||||||
|
/* Audio bitrate control message */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 ucAudioBitRateMode;
|
||||||
|
u32 dwAudioBitRate;
|
||||||
|
u32 dwAudioBitRatePeak;
|
||||||
|
} __attribute__((packed)) tmComResEncAudioBitRate_t;
|
||||||
|
|
||||||
|
/* Tuner / AV Decoder messages */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 std;
|
||||||
|
u32 country;
|
||||||
|
} __attribute__((packed)) tmComResTunerStandard_t;
|
||||||
|
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 mode;
|
||||||
|
} __attribute__((packed)) tmComResTunerStandardAuto_t;
|
||||||
|
|
||||||
|
/* EEPROM definition for PS stream types */
|
||||||
|
typedef struct
|
||||||
|
{
|
||||||
|
u8 len;
|
||||||
|
u8 type;
|
||||||
|
u8 subtype;
|
||||||
|
u8 bFormatIndex;
|
||||||
|
u16 wPacketLength;
|
||||||
|
u16 wPackLength;
|
||||||
|
u8 bPackDataType;
|
||||||
|
} __attribute__((packed)) tmComResPSFormatDescrHeader_t;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue