/* * Copyright 2020 The Chromium OS Authors. All rights reserved. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include "audio_codec.h" #include "ec_commands.h" #include "wov_chip.h" int audio_codec_dmic_get_max_gain(uint8_t *gain) { *gain = 31; return EC_SUCCESS; } int audio_codec_dmic_set_gain_idx(uint8_t channel, uint8_t gain) { int left_gain, right_gain; wov_get_gain(&left_gain, &right_gain); switch (channel) { case EC_CODEC_DMIC_CHANNEL_0: left_gain = gain; break; case EC_CODEC_DMIC_CHANNEL_1: right_gain = gain; break; default: return EC_ERROR_UNKNOWN; } wov_set_gain(left_gain, right_gain); return EC_SUCCESS; } int audio_codec_dmic_get_gain_idx(uint8_t channel, uint8_t *gain) { int left_gain, right_gain; wov_get_gain(&left_gain, &right_gain); switch (channel) { case EC_CODEC_DMIC_CHANNEL_0: *gain = left_gain; break; case EC_CODEC_DMIC_CHANNEL_1: *gain = right_gain; break; default: return EC_ERROR_UNKNOWN; } return EC_SUCCESS; }