/**************************************************************************** * drivers/audio/esxxxx_common.h * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. The * ASF licenses this file to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance with the * License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations * under the License. * ****************************************************************************/ #ifndef __DRIVERS_AUDIO_ESXXXX_COMMON_H #define __DRIVERS_AUDIO_ESXXXX_COMMON_H /**************************************************************************** * Included Files ****************************************************************************/ #include /**************************************************************************** * Pre-processor Definitions ****************************************************************************/ /**************************************************************************** * Public Types ****************************************************************************/ typedef enum { ES_WORD_LENGTH_16BITS = 0x03, ES_WORD_LENGTH_18BITS = 0x02, ES_WORD_LENGTH_20BITS = 0x01, ES_WORD_LENGTH_24BITS = 0x00, ES_WORD_LENGTH_32BITS = 0x04 } es_word_length_e; typedef enum { ES_MCLK_DIV_AUTO, ES_MCLK_DIV_1, ES_MCLK_DIV_2, ES_MCLK_DIV_3, ES_MCLK_DIV_4, ES_MCLK_DIV_6, ES_MCLK_DIV_8, ES_MCLK_DIV_9, ES_MCLK_DIV_11, ES_MCLK_DIV_12, ES_MCLK_DIV_16, ES_MCLK_DIV_18, ES_MCLK_DIV_22, ES_MCLK_DIV_24, ES_MCLK_DIV_33, ES_MCLK_DIV_36, ES_MCLK_DIV_44, ES_MCLK_DIV_48, ES_MCLK_DIV_66, ES_MCLK_DIV_72, ES_MCLK_DIV_5, ES_MCLK_DIV_10, ES_MCLK_DIV_15, ES_MCLK_DIV_17, ES_MCLK_DIV_20, ES_MCLK_DIV_25, ES_MCLK_DIV_30, ES_MCLK_DIV_32, ES_MCLK_DIV_34, ES_MCLK_DIV_7, ES_MCLK_DIV_13, ES_MCLK_DIV_14 } es_sclk_div_e; typedef enum { ES_LCLK_DIV_128 = 0, ES_LCLK_DIV_192 = 1, ES_LCLK_DIV_256 = 2, ES_LCLK_DIV_384 = 3, ES_LCLK_DIV_512 = 4, ES_LCLK_DIV_576 = 5, ES_LCLK_DIV_768 = 6, ES_LCLK_DIV_1024 = 7, ES_LCLK_DIV_1152 = 8, ES_LCLK_DIV_1408 = 9, ES_LCLK_DIV_1536 = 10, ES_LCLK_DIV_2112 = 11, ES_LCLK_DIV_2304 = 12, ES_LCLK_DIV_125 = 16, ES_LCLK_DIV_136 = 17, ES_LCLK_DIV_250 = 18, ES_LCLK_DIV_272 = 19, ES_LCLK_DIV_375 = 20, ES_LCLK_DIV_500 = 21, ES_LCLK_DIV_544 = 22, ES_LCLK_DIV_750 = 23, ES_LCLK_DIV_1000 = 24, ES_LCLK_DIV_1088 = 25, ES_LCLK_DIV_1496 = 26, ES_LCLK_DIV_1500 = 27 } es_lclk_div_e; typedef enum { ES_D2SE_PGA_GAIN_DIS, ES_D2SE_PGA_GAIN_EN } es_d2se_pga_e; typedef enum { ES_ADC_CHANNEL_LINPUT1_RINPUT1 = 0x00, ES_ADC_CHANNEL_MIC1 = 0x05, ES_ADC_CHANNEL_MIC2 = 0x06, ES_ADC_CHANNEL_LINPUT2_RINPUT2 = 0x50, ES_ADC_CHANNEL_DIFFERENCE = 0xf0 } es_adc_channel_e; typedef enum { ES_DAC_CHANNEL_LOUT1 = 0x04, ES_DAC_CHANNEL_LOUT2 = 0x08, ES_DAC_CHANNEL_SPK = 0x09, ES_DAC_CHANNEL_ROUT1 = 0x10, ES_DAC_CHANNEL_ROUT2 = 0x20, ES_DAC_CHANNEL_ALL = 0x3c } es_dac_channel_e; typedef enum { ES_MIC_GAIN_0DB, ES_MIC_GAIN_3DB, ES_MIC_GAIN_6DB, ES_MIC_GAIN_9DB, ES_MIC_GAIN_12DB, ES_MIC_GAIN_15DB, ES_MIC_GAIN_18DB, ES_MIC_GAIN_21DB, ES_MIC_GAIN_24DB } es_mic_gain_e; typedef enum { ES_MODULE_ADC = 1, ES_MODULE_DAC, ES_MODULE_ADC_DAC, ES_MODULE_LINE } es_module_e; typedef enum { ES_MODE_SLAVE, ES_MODE_MASTER } es_mode_e; typedef enum { ES_I2S_NORMAL, ES_I2S_LEFT, ES_I2S_RIGHT, ES_I2S_DSP } es_i2s_fmt_e; #endif /* __DRIVERS_AUDIO_ESXXXX_COMMON_H */