diff options
Diffstat (limited to 'audio_hw.c')
-rw-r--r-- | audio_hw.c | 31 |
1 files changed, 11 insertions, 20 deletions
@@ -36,28 +36,19 @@ static uint32_t audio_hw_get_supported_devices(const struct audio_hw_device *dev) { + struct tinyalsa_audio_device *tinyalsa_audio_device; + LOGD("%s(%p)", __func__, dev); - int supported_output_devices = AUDIO_DEVICE_OUT_EARPIECE | - AUDIO_DEVICE_OUT_SPEAKER | - AUDIO_DEVICE_OUT_WIRED_HEADSET | - AUDIO_DEVICE_OUT_WIRED_HEADPHONE | - AUDIO_DEVICE_OUT_AUX_DIGITAL | - AUDIO_DEVICE_OUT_ANLG_DOCK_HEADSET | - AUDIO_DEVICE_OUT_DGTL_DOCK_HEADSET | - AUDIO_DEVICE_OUT_ALL_SCO | - AUDIO_DEVICE_OUT_DEFAULT; - - int supported_input_devices = AUDIO_DEVICE_IN_COMMUNICATION | - AUDIO_DEVICE_IN_AMBIENT | - AUDIO_DEVICE_IN_BUILTIN_MIC | - AUDIO_DEVICE_IN_WIRED_HEADSET | - AUDIO_DEVICE_IN_AUX_DIGITAL | - AUDIO_DEVICE_IN_BACK_MIC | - AUDIO_DEVICE_IN_ALL_SCO | - AUDIO_DEVICE_IN_DEFAULT; - - return supported_output_devices | supported_input_devices; + if(dev == NULL) + return -1; + + tinyalsa_audio_device = (struct tinyalsa_audio_device *) dev; + + if(tinyalsa_audio_device->mixer == NULL) + return -1; + + return (uint32_t) tinyalsa_mixer_get_supported_devices(tinyalsa_audio_device->mixer); } static int audio_hw_init_check(const struct audio_hw_device *dev) |