summaryrefslogtreecommitdiff
path: root/drivers/staging/greybus/audio_codec.h
diff options
context:
space:
mode:
authorVaibhav Agarwal <vaibhav.agarwal@linaro.org>2016-09-01 09:08:40 +0300
committerGreg Kroah-Hartman <gregkh@google.com>2016-09-02 15:13:39 +0300
commit847175e8e660045f9366e7efd091969e8f32cc0c (patch)
tree7ebb89db1f66f9c5191eae46f2af7468d65e9aa8 /drivers/staging/greybus/audio_codec.h
parenta695c302b49c8bf10b5336585a533d363d6436db (diff)
downloadlinux-847175e8e660045f9366e7efd091969e8f32cc0c.tar.xz
greybus: audio: Fetch jack_mask, button_mask from module's topology data
Added extra fields namely jack_mask & button_mask for each module_info. These fields are required while registering jack & reporting jack events. Earlier, these were hard coded values assuming fixed capabilities say HEADSET, LINEOUT, etc. supported by GB-codec driver. Now these are computed dynamically based on module's jack capability shared via topology data. Signed-off-by: Vaibhav Agarwal <vaibhav.agarwal@linaro.org> Reviewed-by: Mark Greer <mgreer@animalcreek.com> Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
Diffstat (limited to 'drivers/staging/greybus/audio_codec.h')
-rw-r--r--drivers/staging/greybus/audio_codec.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/staging/greybus/audio_codec.h b/drivers/staging/greybus/audio_codec.h
index 5a397b0a1886..0a864592560f 100644
--- a/drivers/staging/greybus/audio_codec.h
+++ b/drivers/staging/greybus/audio_codec.h
@@ -73,10 +73,8 @@ enum {
#define GBCODEC_APB1_MUX_REG_DEFAULT 0x00
#define GBCODEC_APB2_MUX_REG_DEFAULT 0x00
-#define GBCODEC_JACK_MASK (SND_JACK_HEADSET | SND_JACK_LINEOUT | \
- SND_JACK_LINEIN | SND_JACK_UNSUPPORTED)
-#define GBCODEC_JACK_BUTTON_MASK (SND_JACK_BTN_0 | SND_JACK_BTN_1 | \
- SND_JACK_BTN_2 | SND_JACK_BTN_3)
+#define GBCODEC_JACK_MASK 0x0000FFFF
+#define GBCODEC_JACK_BUTTON_MASK 0xFFFF0000
static const u8 gbcodec_reg_defaults[GBCODEC_REG_COUNT] = {
GBCODEC_CTL_REG_DEFAULT,
@@ -176,6 +174,8 @@ struct gbaudio_module_info {
char jack_name[NAME_SIZE];
char button_name[NAME_SIZE];
int jack_type;
+ int jack_mask;
+ int button_mask;
int button_status;
struct snd_soc_jack headset_jack;
struct snd_soc_jack button_jack;