summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorS. Holmes <sholmes@nvidia.com>2010-05-20 20:44:05 -0600
committerGary King <gking@nvidia.com>2010-05-26 10:16:52 -0700
commit65b26306f8ebbd4660baa3720f3734575e4effc3 (patch)
treebfa6c598bf2f922a92bdc0bb85f4f2f1f1316237
parent57ac37ef1a0a7840acec8525af4bca6933001c86 (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.h117
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
{