]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - sound/soc/codecs/arizona.h
Merge tag 'asoc-v4.3-rc6' into asoc-next
[karo-tx-linux.git] / sound / soc / codecs / arizona.h
index 7b68d05a0939049efec30f58aafb5aa673df20f3..fea8b8ae8e1a1517929bca406f20066fa25724bb 100644 (file)
@@ -93,12 +93,17 @@ struct arizona_priv {
        bool dvfs_cached;
 };
 
-#define ARIZONA_NUM_MIXER_INPUTS 103
+#define ARIZONA_NUM_MIXER_INPUTS 104
 
 extern const unsigned int arizona_mixer_tlv[];
 extern const char *arizona_mixer_texts[ARIZONA_NUM_MIXER_INPUTS];
 extern int arizona_mixer_values[ARIZONA_NUM_MIXER_INPUTS];
 
+#define ARIZONA_GAINMUX_CONTROLS(name, base) \
+       SOC_SINGLE_RANGE_TLV(name " Input Volume", base + 1,            \
+                            ARIZONA_MIXER_VOL_SHIFT, 0x20, 0x50, 0,    \
+                            arizona_mixer_tlv)
+
 #define ARIZONA_MIXER_CONTROLS(name, base) \
        SOC_SINGLE_RANGE_TLV(name " Input 1 Volume", base + 1,          \
                             ARIZONA_MIXER_VOL_SHIFT, 0x20, 0x50, 0,    \
@@ -209,8 +214,12 @@ extern int arizona_mixer_values[ARIZONA_NUM_MIXER_INPUTS];
         .num_regs = 1 }) }
 
 #define ARIZONA_RATE_ENUM_SIZE 4
+#define ARIZONA_SAMPLE_RATE_ENUM_SIZE 14
+
 extern const char *arizona_rate_text[ARIZONA_RATE_ENUM_SIZE];
 extern const int arizona_rate_val[ARIZONA_RATE_ENUM_SIZE];
+extern const char * const arizona_sample_rate_text[ARIZONA_SAMPLE_RATE_ENUM_SIZE];
+extern const unsigned int arizona_sample_rate_val[ARIZONA_SAMPLE_RATE_ENUM_SIZE];
 
 extern const struct soc_enum arizona_isrc_fsl[];
 extern const struct soc_enum arizona_isrc_fsh[];
@@ -296,4 +305,5 @@ int arizona_set_output_mode(struct snd_soc_codec *codec, int output,
 
 extern bool arizona_input_analog(struct snd_soc_codec *codec, int shift);
 
+extern const char *arizona_sample_rate_val_to_name(unsigned int rate_val);
 #endif