diff options
author | S. Holmes <sholmes@nvidia.com> | 2010-05-20 20:44:05 -0600 |
---|---|---|
committer | Gary King <gking@nvidia.com> | 2010-05-26 10:16:52 -0700 |
commit | 65b26306f8ebbd4660baa3720f3734575e4effc3 (patch) | |
tree | bfa6c598bf2f922a92bdc0bb85f4f2f1f1316237 | |
parent | 57ac37ef1a0a7840acec8525af4bca6933001c86 (diff) |
Updating AudioFX header file with new properties and notifications.
Change-Id: I554aeb9d555f411b94f18c0c1c6e574a90a0ab23
Reviewed-on: http://git-master/r/1491
Reviewed-by: Stephen Holmes <sholmes@nvidia.com>
Reviewed-by: Scott Peterson <speterson@nvidia.com>
Reviewed-by: Manjula Gupta <magupta@nvidia.com>
Reviewed-by: Jeff Weintraub <jweintraub@nvidia.com>
Tested-by: Stephen Holmes <sholmes@nvidia.com>
Reviewed-by: Gary King <gking@nvidia.com>
-rwxr-xr-x[-rw-r--r--] | sound/soc/tegra/tegra_sndfx.h | 117 |
1 files changed, 84 insertions, 33 deletions
diff --git a/sound/soc/tegra/tegra_sndfx.h b/sound/soc/tegra/tegra_sndfx.h index d08a2a9c751b..5b59b7587a82 100644..100755 --- a/sound/soc/tegra/tegra_sndfx.h +++ b/sound/soc/tegra/tegra_sndfx.h @@ -104,15 +104,20 @@ typedef NvS32 NvObjectId; #define NvAudioFxSpdifPlaybackMixId (0x11300004) #define NvAudioFxSpdifRecordSplitId (0x11300005) #define NvAudioFxSpdifLoopbackSplitId (0x11300006) +#define NvAudioFxSpdifVolumeId (0x1130000c) #define NvAudioFxMusicMixId (0x11300007) #define NvAudioFxMusicSplitId (0x11300008) #define NvAudioFxRingtoneMixId (0x11300009) +#define NvAudioFxMusicVolumeId (0x1130000a) +#define NvAudioFxRingtoneVolumeId (0x1130000b) #define NvAudioFxI2s1PlaybackMixId (0x11310000) #define NvAudioFxI2s1RecordSplitId (0x11310001) #define NvAudioFxI2s1LoopbackSplitId (0x11310002) +#define NvAudioFxI2s1VolumeId (0x11310003) #define NvAudioFxI2s2PlaybackMixId (0x11311000) #define NvAudioFxI2s2RecordSplitId (0x11311001) #define NvAudioFxI2s2LoopbackSplitId (0x11311002) +#define NvAudioFxI2s2VolumeId (0x11311003) // // Mixer @@ -149,13 +154,25 @@ typedef NvS32 NvAudioFxProperty; #define NvAudioFxPinProperty_Format (0x2000) #define NvAudioFxDrcProperty_Drc (0x3000) #define NvAudioFxEqProperty_Eq (0x4000) -#define NvAudioFxI2sProperty_InputSelect (0x4a00) #define NvAudioFxI2sProperty_AllocChannel (0x4a01) +#define NvAudioFxI2sProperty_InputAvailable (0x4a02) +#define NvAudioFxI2sProperty_InputDisable (0x4a04) +#define NvAudioFxI2sProperty_InputEnable (0x4a03) +#define NvAudioFxI2sProperty_InputSelect (0x4a05) +#define NvAudioFxI2sProperty_OutputAvailable (0x4a06) +#define NvAudioFxI2sProperty_OutputDisable (0x4a08) +#define NvAudioFxI2sProperty_OutputEnable (0x4a07) +#define NvAudioFxI2sProperty_OutputSelect (0x4a09) +#define NvAudioFxI2sProperty_IoDeviceVolume (0x4a0a) #define NvAudioFxIoProperty_AddEvent (0x5000) #define NvAudioFxIoProperty_Position (0x5010) #define NvAudioFxIoProperty_RemoveEvent (0x5020) #define NvAudioFxIoProperty_SetMappedPositionBuffer (0x5030) #define NvAudioFxMixerProperty_ProcessBufferSize (0x6000) +#define NvAudioFxMixerProperty_ModeAvailable (0x6001) +#define NvAudioFxMixerProperty_ModeDisable (0x6002) +#define NvAudioFxMixerProperty_ModeEnable (0x6003) +#define NvAudioFxMixerProperty_ModeSelect (0x6004) #define NvAudioFxMixProperty_Headroom (0x7000) #define NvAudioFxNotifierProperty_Connect (0x8000) #define NvAudioFxNotifierProperty_Disconnect (0x8010) @@ -189,11 +206,15 @@ typedef struct NvAudioFxFormatRec NvU32 ValidBitsPerSample; } NvAudioFxFormat; -// Description of the NvAudioFxProperty_Method property. +// Description of the Mode property. -typedef NvS32 NvAudioFxMethod; -#define NvAudioFxMethod_Sliced (0x1000) -#define NvAudioFxMethod_Unsliced (0x1010) +typedef NvS32 NvAudioFxMode; +#define NvAudioFxMode_Normal (0x0) +#define NvAudioFxMode_Bluetooth (0x1) +#define NvAudioFxMode_Ringtone (0x2) +#define NvAudioFxMode_InCall (0x4) +#define NvAudioFxMode_Radio (0x8) +#define NvAudioFxMode_All (0xffffffff) // Description of the position property. @@ -244,8 +265,8 @@ typedef struct NvAudioFxDrcDescriptorRec #define NvAudioFxEqNumChannels (2) // AudioFx Default Volume Settings -#define NVAUDIOFX_DEFAULT_VOLUME (256) -#define NVAUDIOFX_DEFAULT_MAX_VOLUME (1024) +#define NvAudioFxVolumeDefault (256) +#define NvAudioFxVolumeMax (1024) typedef struct NvAudioFxEqDescriptorRec { @@ -260,29 +281,6 @@ typedef struct NvAudioFxSpreaderDescriptorRec NvU32 SpeakerWidth; } NvAudioFxSpreaderDescriptor; -// I2S inputs. - -typedef NvS32 NvAudioFxI2sInputSelect; - -// Default is configurable based on the device. -#define NvAudioFxI2sInputSelect_Default (0x0) -#define NvAudioFxI2sInputSelect_Bluetooth (0x1) -#define NvAudioFxI2sInputSelect_BuiltinMic (0x2) -#define NvAudioFxI2sInputSelect_LineIn (0x3) -#define NvAudioFxI2sInputSelect_Mic (0x4) -#define NvAudioFxI2sInputSelect_Phone (0x5) -#define NvAudioFxI2sInputSelect_Radio (0x6) - -// Description of the NvAudioFxI2sProperty_AllocChannel property. - -typedef struct NvAudioFxI2sChannelDescriptorRec -{ - NvAudioFxPin Pin; - NvU32 Id; -} NvAudioFxI2sChannelDescriptor; - -// Parameteric EQ Filter types. - typedef enum { NvAudioFxIirFilter_Undefined, @@ -293,6 +291,31 @@ typedef enum NvAudioFxIirFilter_Force32 = 0x7FFFFFFF } NvAudioFxIirFilter; +// IO Devices + +typedef NvS32 NvAudioFxIoDevice; + +// Default is configurable based on the device. +#define NvAudioFxIoDevice_Default (0x0) +#define NvAudioFxIoDevice_All (0xffffffff) + +// Inputs +#define NvAudioFxIoDevice_BuiltInMic (0x1) +#define NvAudioFxIoDevice_Mic (0x2) +#define NvAudioFxIoDevice_LineIn (0x4) + +// Outputs +#define NvAudioFxIoDevice_BuiltInSpeaker (0x100) +#define NvAudioFxIoDevice_EarSpeaker (0x200) +#define NvAudioFxIoDevice_LineOut (0x400) +#define NvAudioFxIoDevice_HeadphoneOut (0x800) + +// Both +#define NvAudioFxIoDevice_Aux (0x10000) +#define NvAudioFxIoDevice_Phone (0x20000) +#define NvAudioFxIoDevice_Radio (0x40000) +#define NvAudioFxIoDevice_Bluetooth (0x80000) + typedef struct NvAudioFxPeqDescriptorRec { NvU32 Enable; @@ -320,6 +343,14 @@ typedef struct NvAudioFxVolumeDescriptorRec NvU32 Mute; } NvAudioFxVolumeDescriptor; +// Description of the IoDeviceVolume property. + +typedef struct NvAudioFxIoDeviceVolumeDescriptorRec +{ + NvAudioFxIoDevice IoDevice; + NvAudioFxVolumeDescriptor Volume; +} NvAudioFxIoDeviceVolumeDescriptor; + // Description of the NvAudioFxVoiceProperty_SetMappedPositionBuffer property. typedef struct NvAudioFxMappedBufferDescriptorRec @@ -364,6 +395,14 @@ typedef struct NvAudioFxNotifierConnectionDescriptorRec NvU8 PortName[16]; } NvAudioFxNotifierConnectionDescriptor; +// Description of the NvAudioFxI2sProperty_AllocChannel property. + +typedef struct NvAudioFxI2sChannelDescriptorRec +{ + NvAudioFxPin Pin; + NvU32 Id; +} NvAudioFxI2sChannelDescriptor; + // Description of the NvAudioFxProperty_AddEvent and // NvAudioFxProperty_RemoveEvent properties. @@ -396,11 +435,23 @@ typedef struct NvAudioFxControlChangeMessageRec NvAudioFxProperty Property; } NvAudioFxControlChangeMessage; -typedef struct NvAudioFxI2sControlChangeMessageRec +typedef struct NvAudioFxIoDeviceControlChangeMessageRec +{ + NvAudioFxControlChangeMessage m; + NvAudioFxIoDevice IoDevice; +} NvAudioFxIoDeviceControlChangeMessage; + +typedef struct NvAudioFxIoDeviceVolumeControlChangeMessageRec +{ + NvAudioFxControlChangeMessage m; + NvAudioFxIoDeviceVolumeDescriptor idv; +} NvAudioFxIoDeviceVolumeControlChangeMessage; + +typedef struct NvAudioFxModeControlChangeMessageRec { NvAudioFxControlChangeMessage m; - NvAudioFxI2sInputSelect InputSelect; -} NvAudioFxI2sControlChangeMessage; + NvAudioFxMode Mode; +} NvAudioFxModeControlChangeMessage; typedef struct NvAudioFxStateChangeMessageRec { |