Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quelle  mt8192-dai-i2s.c   Sprache: C

 

// SPDX-License-Identifier: GPL-2.0
//
// MediaTek ALSA SoC Audio DAI I2S Control
//
// Copyright (c) 2020 MediaTek Inc.
// Author: Shane Chien <shane.chien@mediatek.com>
//

#  ",)= ""NULL java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 63
java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 25
#include}

java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
include{2S3, ,,}
#include " "I2S1        ,mtk_afe_i2s_mclk_connect},
#emt8192_afe_private afe_priv = afe->;

enum2S3,NULL I2S9_MCLK_EN_W_NAMEmtk_afe_i2s_mclk_connect}
 I2S_FMT_EIAJ=0,
 I2S_FMT_I2S = 1,
};

enum {
 
 return afe_priv-> I2S1" NULL}
}st const * mt8192_i2s_hd_str]{2 NULL,APLL2_W_NAMEafe_i2s_mclk_connect},

enum {
 I2S_HD_NORMAL = "Normal", "ow_Jitter"
 I2S_HD_LOW_JITTER = 1,
};

;
 I2S1_SEL_O28_O29 = 0,
 I2S1_SEL_O03_O04 = 1,
};

java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
 java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 24
 _
;

structmtk_afe_i2s_priv{
 int id;
 int rate; /* for determine which apll to use */
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1

 int share_i2s_idjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18

  mclk_id;
 int mclk_rate;
 int mclk_apll;
};

java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0
{
 java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0
 :java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 42
java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 1

java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 48
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
define{"I2S2", NULL, "I2S2_EN"}
#define "I2S2", NULL, "I2S3_EN"java.lang.StringIndexOutOfBoundsException: Range [54, 52) out of bounds for length 54
dMTK_AFE_I2S5_KCONTROL_NAME
#define MTK_AFE_I2S6_KCONTROL_NAME "I2S6_HD_Mux"
#define MTK_AFE_I2S7_KCONTROL_NAME #define MTK_AFE_I2S7_KCONTROL_NAME "I2S7_HD_Mux
#define MTK_AFE_I2S8_KCONTROL_NAME "I2S8_HD_Mux"
#   "S2,,"2java.lang.StringIndexOutOfBoundsException: Range [55, 52) out of bounds for length 54

 {"I2S5_CH2", "DL5_CH2", "
#define struct soc_enum *es java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 0
#define I2S2_HD_EN_W_NAME "I2S2_HD_EN"
efine, "",""
#define I2S5_HD_EN_W_NAME "I2S5_HD_EN"
# I2S6_HD_EN"
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
defineIS8HD_EN
#define {"I2S5_CH2", "DL8_CH2"DL8

#define I2S0_MCLK_EN_W_NAME "I2S0_MCLK_EN"
#S1_MCLK_EN_W_NAME "2S1_MCLK_ENS1_MCLK_EN
#i2s_priv=java.lang.StringIndexOutOfBoundsException: Range [36, 32) out of bounds for length 57
#I2S3_MCLK_EN_W_NAME "I2S3_MCLK_EN"
#define I2S5_MCLK_EN_W_NAME "I2S5_MCLK_EN"
#define I2S6_MCLK_EN_W_NAME "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 ev_warn-,"s) =,_f)
#define {"I2S5", NULL  java.lang.StringIndexOutOfBoundsException: Range [9, 8) out of bounds for length 17
"2S5, NULL,"{I2S2_HD_EN_W_NAME, }java.lang.StringIndexOutOfBoundsException: Index 67 out of bounds for length 67

staticjava.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
 SOC_ENUM_EXTMTK_AFE_I2S0_KCONTROL_NAME,        t8192_i2s_hd_set),
   (, ,
 else if (strncmp(name, "I2S1"  mt8192_i2s_hd_get I2S5", NULL, "I2S8_EN", mtk_afe_i2s_share_k_connect,
  ;
 if (rncmp( "I2S2"4)=0)
  ,)java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
 else if (strncmp(name, "I2S3"        {"I2S2", NULL, I2S5_MCLK_EN_W_NAME,java.lang.StringIndexOutOfBoundsException: Range [62, 61) out of bounds for length 63
         mt8192_i2s_hd_gett8192_i2s_hd_set
 = 0)
  return      , mt8192_i2s_hd_set),
 elseelse  strncmpname "" )= )
 return java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
   strncmp,,
  return MT8192_DAI_I2S_7 mt8192_i2s_hd_get ),
  else_NULL ,java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
  return {"I2S5", NULL, I2S6_HD_EN" ,}java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
 java.lang.StringIndexOutOfBoundsException: Range [17, 5) out of bounds for length 40
 returnMT8192_DAI_I2S_9;
 else
  return -EINVAL;
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1

static struct  {"I2S5", NULL, I2S9_HD_EN_W_N
          YCONN_CH1_MUX,DL1_CH1,}java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
{
 }
 int {java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0

 ifd {IS5java.lang.StringIndexOutOfBoundsException: Range [8, 0) out of bounds for length 0
 ;

 return afe_priv->dai_priv[dai_id I   ,
}

/* low jitter control */   java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 23
tatic  char*  mt8192_i2s_hd_str[]  {
 "Normal", "java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
};

static SOC_ENUM_SINGLE_EXT_DECL" i2s_mux_map_enum {java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 45

static int mt8192_i2s_hd_get( {"I2S5", NULLjava.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
        *)
{
  snd_soc_componentcmpntsnd_soc_kcontrol_component"java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 struct SOC_DAPM_ENUM"OutSelectjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
   i2s_privjava.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35

 i2s_priv =java.lang.StringIndexOutOfBoundsException: Range [0, 32) out of bounds for length 0

 if (Out
  (-dev,%s
static  snd_kcontrol_new i2s9_out_mux_control =
 }

 control>value.integer.value[afe_i2s_share_connect

 return 0;
}

 enumjava.lang.StringIndexOutOfBoundsException: Range [5, 0) out of bounds for length 0
        structsnd_ctl_elem_value control)
{
 structTINYCONN_CH1_MUX_DL120java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
 TINYCONN_CH2_MUX_DL12 =,
 struct mtk_afe_i2s_priv *i2s_priv;
 =(truct soc_enum )controlprivate_value{I2S3_CH1,DL5_CH1" "DL5"}java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
 {,java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32


  char java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 32

 hd_en = ucontrol->valuejava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

"NONEH2, DL6_CH2,DL6}
  __func__,D,

 i2s_priv = get_i2s_priv_by_name(afe, kcontrol

if(2s_privs_priv)
dev_warnafedev % L8}
"java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
 }

 {"I2S6"  mtk_afe_i2s_hd_connect,

 return 0;
java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 1

 const structsnd_kcontrol_newmtk_dai_i2s_controls[ ={
  ,
       ,
 java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 22
  ,
 SOC_ENUM_EXT ""TINYCONN_CH2_MUX_DL3
       java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
 SOC_ENUM_EXT _EN_W_NAME},
      ,mt8192_i2s_hd_set
java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 58
           tinyconn_mux_map
   NULL mtk_afe_i2s_apll_connect
       mt8192_i2s_hd_get conststruct java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 27
SOC_ENUM_EXTM ,
       mt8192_i2s_hd_get       );
{"I2S3"" "",mtk_afe_i2s_mclk_connect
       ,
 
      ,{"I2S6", NULL, I2S2_MCLK_EN_W_NAME2" java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 63
};

/* dai component */,NULL {static i2s1_tinyconn_ch2_mux_control =
/* i2s virtual mux to output widget */
staticjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 "" Dummy_Widget
};

static int i2s_mux_map_value[] = {
 0,1,
};

static SOC_VALUE_ENUM_SINGLE_AUTODISABLE_DECL  AFE_TINY_CONN5
          java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
            ,
           1,
           ,I2S2_HD_EN_W_NAME mtk_afe_i2s_hd_connect},
     i2s_mux_map_value;

static const struct snd_kcontrol_new java.lang.StringIndexOutOfBoundsException: Range [0, 56) out of bounds for length 42
SOC_DAPM_ENUM" In Select"{,ULL  java.lang.StringIndexOutOfBoundsException: Range [70, 68) out of bounds for length 70

  java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
/

static  tinyconn_mux_map_value;
 "static   { NULL,}

static const struct snd_kcontrol_new I2S3_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_apll_c" tinyconn  "2" NULL ,
 "2  SOC_DAPM_ENUM("I2S3 Out

static const struct snd_kcontrol_new java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
SOC_DAPM_ENUM"I2S5Out "i2s_mux_map_enum);

static const  {"I2S3", NULL, I2S0,1java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 6
  "S3_EN",mtk_afe_i2s_share_connect},

        ,
 SOC_DAPM_ENUM("I2S9 Out Select", java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 28


enumjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
H1_MUX_DL1 0,
 TINYCONN_CH2_MUX_DL1 = 0x1,
  {I2S5_CH2"I2S7,  SOC_DAPM_ENUM("I2S Lpbk Select"i2s2_lpbk_mux_map_enumjava.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58
 TINYCONN_CH2_MUX_DL12 0x3,
 TINYCONN_CH1_MUX_DL2 SOC_DAPM_SINGLE_AUTODISABLE(" AFE_CONN0 java.lang.StringIndexOutOfBoundsException: Range [1, 0) out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [24, 21) out of bounds for length 28
  {"I2S5_CH2", "DL2_CH2", "DL," }
 TINYCONN_CH2_MUX_DL3 
  SOC_DAPM_SINGLE_A(" "java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 67
};

static java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 0
NONE,
DL1_CH1"java.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11
 DL1_CH2,
 ""java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
"DL12_CH2java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 12
 "DL2_CH1",
 "DL2_CH2",
 "DL3_CH1",
 "DL3_CH2",
};

java.lang.StringIndexOutOfBoundsException: Range [7, 6) out of bounds for length 39
 java.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 19
      I_GAIN1_OUT_CH1 ",java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22
,
 SOC_DAPM_SINGLE_AUTODI",java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 54
 TINYCONN_CH1_MUX_DL2{C_DAPM_SINGLE_AUTODISABLE"ADDA_UL_CH3",
java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 22
 TINYCONN_CH1_MUX_DL3,
 TINYCONN_CH2_MUX_DL3,
};

 i(PCM_2_CAP_CH1 ,
       I_PCM_2_CAP_CH11,)
   ;
      O_20_CFG_MASK,staticconst struct , tk_afe_i2s_mclk_connectjava.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
   ,
      SOC_DAPM_SINGLE_AUTODISABLE(DL2_CH2,AFE_CONN1  ,0,
static conststruct snd_kcontrol_new  java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
        /* i2s8 */

 "" {{I2S8,NULL,", tk_afe_i2s_share_connect,
      AFE_TINY_CONN5,
      SOC_DAPM_SINGLE_AU("" ,I_DL8_CH2,1 )java.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70
  java.lang.StringIndexOutOfBoundsException: Range [30, 28) out of bounds for length 56
 java.lang.StringIndexOutOfBoundsException: Range [30, 28) out of bounds for length 54
A" java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 54
taticconststruct   java.lang.StringIndexOutOfBoundsException: Index 68 out of bounds for length 68
 "  tinyconn"java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
       )java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40

tatic(java.lang.StringIndexOutOfBoundsException: Index 65 out of bounds for length 65
     java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
      O_22_CFG_SFT,
      O_22_CFG_MASK2S8", NULL, "I2S9_EN", mtk_afe_i2s_share_connect
java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
      static const struct snd_kcontrol_new  {"I2S8", NULL, I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect  LE_AUTODISABLE""AFE_CONN28,I_DL1_CH110
staticconst struct i2s3_tinyconn_ch1_mux_control=
 SOC_DAPM_ENUM("i2s3 ch1 ",LE_AUTODISABLED,AFE_CONN28  ,0)
  "I2S8"NULL,,}

static SOC_DAPM_SINGLE_AUTODISABLE("DL6_CH1AFE_CONN28_1  ,0,
      AFE_TINY_CONN5,
    ,
      O_23_CFG_MASK (DL5_CH1, {"2"  2java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 59
      tinyconn_mux_map,
      tinyconn_mux_map_value);
static const {I2S8,NULL,S6_HD_EN_W_NAME }
 SOC_DAPM_ENUM("i2s3  SOC_DAPM_SINGLE_AUTODISABLE"",AFE_CONN28,
_enumjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40

/* i2s in lpbk */
static "I2S8", NULL{ ",
 "Normal",SOC_DAPM_SINGLE_AUTODISABLE"" AFE_CONN29_1  "NULLI2S7_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
;

static int i2s_lpbk_mux_map_value[] I2S8,,  (DL9_CH2" I_DL9_CH2, ,0)java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
 0, 1,
};

    
  SOC_DAPM_SINGLE_AUTODISABLE/* i2s9 */
           I2S_LOOPBACK_SFT,
        1java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
     i2s_lpbk_mux_map{"I2S9_CH2", ""}
    java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 35

static const  "","L2_CH1{{2S5   I_PCM_1_CAP_CH2 1,,
SOC_DAPM_ENUM

static  {I2S5 ,1,0,
 ;
            {"I2S9_CH1", "DL3_CH1", "DL
    1java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
   DL1_CH1" ,,10,
           i2s_lpbk_mux_map_value);

static conststructSOC_DAPM_SINGLE_AUTODISABLE(",AFE_CONN30 I_DL2_CH1, , 0)
("I2S LpbkSelect",i2s2_lpbk_mux_map_enum)java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 58

/* interconnection */
static const {"I2S5", NULL, I2S_D_EN_W_NAME, mtk_afe_i2s_hd_connect},
 SOC_DAPM_SINGLE_AUTODISABLE("DL1_CH1 "" "I2S5"NULL, I2S7_HD_EN_W_NAME},
 SOC_DAPM_SINGLE_AUTODISABLE(DL2_CH1{2" java.lang.StringIndexOutOfBoundsException: Range [16, 14) out of bounds for length 59
 SOC_DAPM_SINGLE_AUTODISABLE("DL3_CH1", AFE_CONN0, I_DL3_CH1 {"java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLE"DL12_CH1" I2S5_HD_EN_W_NAME"FE_CONN30,
 SOC_DAPM_SINGLE_AUTODISABLE(" {I2S5_HD_EN_W_NAME, NULL, APLL2_W_NAME}
 SOC_DAPM_SINGLE_AUTODISABLE("DL4_CH1", AFE_CONN0_1, I_DL4_CH1, 1, 0),
 {I2S5java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0
C_DAPM_SINGLE_AUTODISABLE(L8_CH1  , 1 0,
 SOC_DAPM_SINGLE_AUTODISABLE("DL9_CH1"," (PCM_1_CAP_CH1 "N     I_PCM_1_CAP_CH1, ,)java.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 31
 {      ,
        ,, ),
",,
        I_ADDA_UL_CH1, 1, 0)
 "ADDA_UL_CH2", AFE_CONN0,
        , (DL1_CH2, ,,
 SOC_DAPM_SINGLE_AUTODISABLE("ADDA_UL_CH3", AFE_CONN0 I, java.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
C" java.lang.StringIndexOutOfBoundsException: Range [56, 55) out of bounds for length 56
        I_PCM_1_CAP_CH1, 1, {"2S5" ,I2S9_MCLK_EN_W_NAME"AFE_CONN31_1I_DL5_CH2 , )java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
SOC_DAPM_SINGLE_AUTODISABLE(CM_2_CAP_CH1"",AFE_CONN0,
        I_PCM_2_CAP_CH1, 1, 0),
};

static const struct snd_kcontrol_new mtk_i2s3_ch2_mix[] = {
  {I2S5_MCLK_EN_W_NAME NULL, , },
 ("DL2_CH2, java.lang.StringIndexOutOfBoundsException: Range [41, 0) out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLE"ULL",java.lang.StringIndexOutOfBoundsException: Range [53, 52) out of bounds for length 54
 SOC_DAPM_SINGLE_AUTODISABLE   I_ADDA_UL_CH2 10,
 SOC_DAPM_SINGLE_AUTODISABLE("DL6_CH2", AFE_CONN1_1 SOC_DAPM_SINGLE_AUTODISABLE("PCM_1_CAP_CH1", AFE_CONN31,
      I_PCM_1_CAP_CH1, 1, ,0),
 java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 0
LE_AUTODISABLE(D,AFE_CONN1_1,I_DL8_CH2 "I2S6",NULL       ,0),
 SOC_DAPM_SINGLE_AUTODISABLE("DL9_CH2 "I2S6",NULL, I2S5_EN("e_connect,
 SOC_DAPM_SINGLE_AUTODISABLE("GAIN1_OUT_CH2", AFE_CONN1,
         {"I2S6", NULL,"SPCM_2_CAP_CH2",
 ("", AFE_CONN1,
  ;
 ", AFE_CONN1,
       I_ADDA_UL_CH2,  kcontrol_new java.lang.StringIndexOutOfBoundsException: Range [54, 53) out of bounds for length 59
""  "S6_EN" mtk_afe_i2s_share_connect,
        I_ADDA_UL_CH3, 1, 0),
 ", AFE_CONN1
        I_PCM_1_CAP_CH1, 1, 0),
 "I2S9", NULL, "I2S8_EN",mtk_afe_i2s_share_connect}
        I_PCM_2_CAP_CH1, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE("{"I2S9,NULL "I2S9_EN"},
        I_PCM_1_CAP_CH2, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE( SOC_DAPM_SINGLE_AUTODISABLE("DL12_CH1", AFE_CONN54, {I2S9,NULL I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
        ,, )
};

static  "SOC_DAPM_SINGLE_AUTODISABLE(""  I_DL4_CH1I2S6"  , {"I2S9", NULL, I2S2_HD_EN_W_NAME, mtk_afe_i2s_hd_connect
 ("" , I_DL5_CH1,1,),
SOC_DAPM_SINGLE_AUTODISABLE },
 SOC_DAPM_SINGLE_AUTODISABLEjava.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 57
 SOC_DAPM_SINGLE_AUTODISABLE("DL12_CH1", AFE_CONN28, I_DL12_CH1, 1, 0),I2S6,NULL,2_ mtk_afe_i2s_hd_connect}java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
 java.lang.StringIndexOutOfBoundsException: Range [52, 28) out of bounds for length 71
 SOC_DAPM_SINGLE_AUTODISABLE("DL4_CH1", "I2S6,NULL,I2S8_HD_EN_W_NAME,mtk_afe_i2s_hd_connect}java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
 java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 71
 , java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
 SOC_DAPM_SINGLE_AUTODISABLE("DL9_CH1", AFE_CONN28_1{I2S9_HD_EN_W_NAME, ,    I2S6_HD_EN_W_NAME,, APLL1_W_NAME, },
SOC_DAPM_SINGLE_AUTODISABLE{java.lang.StringIndexOutOfBoundsException: Range [21, 19) out of bounds for length 67
        I_GAIN1_OUT_CH1, 1, {java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLE("ADDA_UL_CH1 {"I2S9", NULL, I2S1_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect,NULL, tk_afe_i2s_mclk_connect},
        I_ADDA_UL_CH1, 1, 0),
 ,
  I_PCM_1_CAP_CH1 1,,
java.lang.StringIndexOutOfBoundsException: Range [30, 28) out of bounds for length 57
    java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}

java.lang.StringIndexOutOfBoundsException: Range [36, 6) out of bounds for length 59
 "AFE_CONN56,I_DL2_CH1  ,
 SOC_DAPM_SINGLE_AUTODISABLE("DL2_CH2",  SOC_DAPM_SINGLE_AUTODISABLE("DL3_CH1", AFE_CONN56java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 "", ,I_DL3_CH2,,,,
 SOC_DAPM_SINGLE_AUTODISABLE("DL12_CH2", AFE_CONN29SOC_DAPM_SINGLE_AUTODISABLE
 ("",
 SOC_DAPM_SINGLE_AUTODISABLE("DL4_CH2", AFE_CONN29_1, I_DL4_CH2, 1I2S7,NULLjava.lang.StringIndexOutOfBoundsException: Range [41, 38) out of bounds for length 41
 SOC_DAPM_SINGLE_AUTODISABLE("DL5_CH2",,""},
 " "2DUMMY_OUT"  I2S7_Out_Mux},
 SOC_DAPM_SINGLE_AUTODISABLE("DL9_CH2", java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLE("GAIN1_OUT_CH2", { {"I2S7java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 55
 {"2S7, NULL, I2S6_HD_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 41
 SOC_DAPM_SINGLE_AUTODISABLE(
      "S_,pbk I2S3,
SABLEAFE_CONN29java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
         {"  ,tjava.lang.StringIndexOutOfBoundsException: Range [67, 65) out of bounds for length 67
 java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
       D" java.lang.StringIndexOutOfBoundsException: Range [52, 50) out of bounds for length 69
 ,
  {I2S7"  java.lang.StringIndexOutOfBoundsException: Range [38, 28) out of bounds for length 57
 SOC_DAPM_SINGLE_AUTODISABLE("DL4_CH2" java.lang.StringIndexOutOfBoundsException: Range [53, 52) out of bounds for length 71
       1 ,
}java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2

static const struct snd_kcontrol_new mtk_i2s5_ch1_mix[] = {
SOC_DAPM_SINGLE_AUTODISABLE(L1_CH1",AFE_CONN30, I_DL1_CH1, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE(""  SOC_DAPM_SINGLE_AUTODISABLE("DL2_CH1", AFE_CONN30,
 "L3_CH1"  connsys */
 java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 31
 SOC_DAPM_SINGLE_AUTODISABLE("DL6_CH1", java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  I2S8""i  = <I2S_SRC_SFTjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
   I_PCM_2_CAP_CH2,i2s_con"I2S8"" NULL "I2S1_EN" ,
 java.lang.StringIndexOutOfBoundsException: Range [0, 28) out of bounds for length 22
 SOC_DAPM_SINGLE_AUTODISABLE("DL9_CH1", AFE_CONN30_1, I_DL9_CH1, 1, 0
OUT_CH1" ,
        I_GAIN1_OUT_CH1, 1, 0)  2S8,NULLjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLE(" struct mtk_afe_i2s_priv *i2s_priv;
DA_UL_CH1 1,0
  {"I2S8 NULLif (!i2s_priv){
   java.lang.StringIndexOutOfBoundsException: Range [26, 23) out of bounds for length 31
 SOC_DAPM_SINGLE_AUTODISABLE  (-,,0x140000
      break;
};

static const   regmap_write(fe->regmapmt8192_afe_gpio_request(afe-java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 59
SOC_DAPM_SINGLE_AUTODISABLE break
 SOC_DAPM_SINGLE_AUTODISABLE("DL2_CH2", AFE_CONN31, I_DL2_CH2, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE("return ;
  ),
 java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLEafe> java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 35
 SOC_DAPM_SINGLE_AUTODISABLE("=java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
struct *fe = ()java.lang.StringIndexOutOfBoundsException: Index 66 out of bounds for length 65
 CONN31_1 I_DL9_CH2, ,0)java.lang.StringIndexOutOfBoundsException: Index 71 out of bounds for length 71
  /* 0:Stereo 1:Mono */I,ULL,, java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
        I_GAIN1_OUT_CH2, 1, 0),
SOC_DAPM_SINGLE_AUTODISABLEAFE_CONN31
  , 1, 0)java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
 SOC_DAPM_SINGLE_AUTODISABLE("PCM_1_CAP_CH1", mt8192_apll1_disable(afe)
        I_PCM_1_CAP_CH1, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE;
      I_PCM_2_CAP_CH1,  /* i2s9 */
 
        I_PCM_1_CAP_CH2, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE("PCM_2_CAP_CH2", AFE_CONN31 ",java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
         "S_"D"""}java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
};

  :
 SOC_DAPM_SINGLE_AUTODISABLE    break;
" java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
      int event
(DL12_CH1,,,
 SOC_DAPM_SINGLE_AUTODISABLE("java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 65
java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 71
java.lang.StringIndexOutOfBoundsException: Index 16 out of bounds for length 0
 _func__w-
 SOC_DAPM_SINGLE_AUTODISABLE("if ( {
        EINVAL"r(-
 SOC_DAPM_SINGLE_AUTODISABLE("ADDA_UL_CH1java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 65
        I_ADDA_UL_CH1, 1,   SND_SOC_DAPM_POST_PMD
 java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 9
        I_PCM_1_CAP_CH1, 1, 0),

 ,
};

static const struct java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 0
   java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 36
 java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
 SOC_DAPM_SINGLE_AUTODISABLEjava.lang.StringIndexOutOfBoundsException: Range [21, 19) out of bounds for length 51
 SOC_DAPM_SINGLE_AUTODISABLE("DL12_CH2",java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 23
 SOC_DAPM_SINGLE_AUTODISABLE("DL6_CH2", AFE_CONN55_1, I_DL6_CH2java.lang.StringIndexOutOfBoundsException: Range [0, 22) out of bounds for length 2
 
CH2,"2,"java.lang.StringIndexOutOfBoundsException: Range [33, 31) out of bounds for length 42
  {"I2S_DUMMY_OUT", NULLjava.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 23
 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
     java.lang.StringIndexOutOfBoundsException: Range [26, 23) out of bounds for length 31
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
        I_ADDA_UL_CH2, 1    ,
 SND_SOC_DAPM_MIXER("I2S9_CH2", SND_SOC_NOPM, 0, 0,
        I_PCM_1_CAP_CH1, 1 ( rate_reg = mt8192_rate_transform,
 SOC_DAPM_SINGLE_AUTODISABLE(" java.lang.StringIndexOutOfBoundsException: Range [21, 19) out of bounds for length 64
      |)
 SOC_DAPM_SINGLE_AUTODISABLE("PCM_1_CAP_CH2", AFE_CONN55,
        I_PCM_1_CAP_CH2, 1, 0),
 SOC_DAPM_SINGLE_AUTODISABLE("PCM_2_CAP_CH2", AFE_CONN55,
        AFE_I2S_CON,  java.lang.StringIndexOutOfBoundsException: Range [13, 12) out of bounds for length 30
};

static const               AFE_I2S_CON1(
 SOC_DAPM_SINGLE_AUTODISABLE(92 unsignedD:
 ",  , )java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
_"L3_CH1"AFE_CONN56,,_,11,java.lang.StringIndexOutOfBoundsException: Index 69 out of bounds for length 69
 SOC_DAPM_SINGLE_AUTODISABLE("DL12_CH1"   ,0,
 SOC_DAPM_SINGLE_AUTODISABLE      java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
 SOC_DAPM_SINGLE_AUTODISABLE("2S5_EN" java.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 52
i2s_con |= I2S_FMT_I2S java.lang.StringIndexOutOfBoundsException: Range [39, 38) out of bounds for length 39
 SOC_DAPM_SINGLE_AUTODISABLE(" | SND_SOC_DAPM_POST_PMD
((D9CH1,java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 35
 java.lang.StringIndexOutOfBoundsException: Range [9, 6) out of bounds for length 26
        I_GAIN1_OUT_CH1, 1, 0),
 SND_SOC_DAPM_SUPPLY_S( java.lang.StringIndexOutOfBoundsException: Range [52, 51) out of bounds for length 52
        I_ADDA_UL_CH1, 1, java.lang.StringIndexOutOfBoundsException: Range [0, 9) out of bounds for length 0
 SOC_DAPM_SINGLE_AUTODISABLE("  regmap_update_bits(a
    java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 63
 java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 63
  java.lang.StringIndexOutOfBoundsException: Range [26, 23) out of bounds for length 31
};

tatic  = java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [30, 28) out of bounds for length 69
 SOC_DAPM_SINGLE_AUTODISABLE("DL2_CH2", AFE_CONN57, I_DL2_CH2, 1, 0),
, I_DL3_CH2,1 0),
LE",   1,)
 java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 12
        SND_SOC_NOPM, 0java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 42
 SOC_DAPM_SINGLE_AUTODISABLE("java.lang.StringIndexOutOfBoundsException: Range [55, 53) out of bounds for length 55
 SOC_DAPM_SINGLE_AUTODISABLE("DL8_CH2        java.lang.StringIndexOutOfBoundsException: Range [27, 26) out of bounds for length 27
 SOC_DAPM_SINGLE_AUTODISABLE("DL9_CH2", AFE_CONN57_1, I_DL9_CH2, 1        , 0 0java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
 SOC_DAPM_SINGLE_AUTODISABLE("GAIN1_OUT_CH2",  SND_SOC_DAPM_SUPPLY_S(I2S8_MCLK_EN_W_NAME, SUPPLY_SEQ_I(>  x0002FC00)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
        I_GAIN1_OUT_CH2, 1java.lang.StringIndexOutOfBoundsException: Range [25, 21) out of bounds for length 28
 SOC_DAPM_SINGLE_AUTODISABLE("ADDA_UL_CH2", 
       java.lang.StringIndexOutOfBoundsException: Range [24, 21) out of bounds for length 29
 SOC_DAPM_SINGLE_AUTODISABLE
 java.lang.StringIndexOutOfBoundsException: Range [22, 20) out of bounds for length 38
  0 0&java.lang.StringIndexOutOfBoundsException: Range [47, 45) out of bounds for length 47
  break;
 SOC_DAPM_SINGLE_AUTODISABLE("PCM_1_CAP_CH2java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 33
java.lang.StringIndexOutOfBoundsException: Range [38, 31) out of bounds for length 31
 SOC_DAPM_SINGLE_AUTODISABLE("java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
      ,0)
};

struc mt8192_afe_private  ,,2l)java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
 SUPPLY_SEQ_APLL,
java.lang.StringIndexOutOfBoundsException: Range [24, 23) out of bounds for length 24
 __func__ cmd java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 1
 SUPPLY_SEQ_I2S_ENf mtk_base_afe afe =snd_soc_component_get_drvdataSNDRV_PCM_TRIGGER_START:
};

(struct snd_soc_dapm_widget*w,
       struct snd_kcontrol * i2s_con |= get_i2s_wlen(format)  I2S7_WLEN_SFT
       int event)
{
 java.lang.StringIndexOutOfBoundsException: Index 4 out of bounds for length 0
struct *regmapjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33
 struct struct snd_soc_dapm_widgetjava.lang.StringIndexOutOfBoundsException: Range [34, 32) out of bounds for length 39

 i2s_priv = get_i2s_priv_by_name(afe,    java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 41

 if (!i2s_priv) {
  a, java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 43
 -java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
 }

 dev_dbg(cmpnt->dev, java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 0
  __func__

 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 case   struct snd_soc_dapm_widget *sink | f  java.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 51
java.lang.StringIndexOutOfBoundsException: Range [29, 25) out of bounds for length 59
   retur ;
 case java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 17
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  breakFjava.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
 default:
  break;
 }

 return 0
}

 java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 70
     struct snd_kcontrol *kcontrol,
    
{
 structjava.lang.StringIndexOutOfBoundsException: Range [32, 25) out of bounds for length 70
 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt);

 >dev"s(, name%  0x
     I2S_EN_MASK_SFTjava.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 1

 switch (event) {
 case static int java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  if (w java.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 57
     
  else
 ()java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
  break;
 case SND_SOC_DAPM_POST_PMD:
  if (snd_soc_dapm_widget_name_cmpdev_warnafe>,"s(, java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 57
 1
  else
   (afe);
 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 :
  break;
 " ," return  java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 58

 ; 
}

java.lang.StringIndexOutOfBoundsException: Range [7, 6) out of bounds for length 64
 java.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 36

{
 struct NULL java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
 struct mtk_base_afe *afe ="NULLjava.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
 unsigned int reg;
 unsigned int reg_shift;
   intjava.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 55

 dev_dbg(afe->dev, "pcm_hw_params params,

 ifdev_warn(afe-dev
  reg = AFE_I2S_CON1;   -
  reg_shift = java.lang.StringIndexOutOfBoundsException: Range [23, 21) out of bounds for length 70
  reg_mask_shift  {I2S1_CH1" " java.lang.StringIndexOutOfBoundsException: Range [32, 9) out of bounds for length 41
 } else if (strstr(w->{Ijava.lang.StringIndexOutOfBoundsException: Range [27, 24) out of bounds for length 45
 =afe,;
  reg_shift  ,""},
 reg_mask_shift = I2java.lang.StringIndexOutOfBoundsException: Range [28, 24) out of bounds for length 45
 (wI2)java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
   {I2S1_TINYCONN_CH2_MUX", "DL12_CH2", "DL12"},
  reg_shift = I2S5_32BIT_EN_SFT;
  reg_mask_shift = I2S5_32BIT_EN_MASK_SFT =I2S_IN_PAD_IO_MUX <
 }if(i2s_con |= I2S_FMT_I2S << I2S_FMT_SFT;
  
  reg_shift = }
  reg_mask_shift = I2S7_32BIT_EN_MASK_SFT ->java.lang.StringIndexOutOfBoundsException: Range [22, 20) out of bounds for length 28
 } else if (strstr(w->name, "I2S9")) {
  reg = AFE_I2S_CON9;
  reg_shift = I2S9_32BIT_EN_SFT;
  reg_mask_shift = breakjava.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 3
 } else {
    
  
  0;
  
    |=format
 }

 switch (event     xffffeffe, ;
 case SND_SOC_DAPM_PRE_PMU:
  regmap_update_bits(afe->regmap, reg, reg_mask_shift,
       0x1 << reg_shift);
  break;
 case SND_SOC_DAPM_PRE_PMD:
  regmap_update_bits(afe->regmap, reg, reg_mask_shift,
       0x0 << reg_shift);
  break;
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
  break;
 }

 return . java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 42
}

static int  .stream_name="
        struct
 :
{
  java.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 70
 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt);
 java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 35

 dev_dbg(cmpnt->dev, "%s(), name %s, eventjava.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 42
  __func__, w-> {I2S1.d,"s)java.lang.StringIndexOutOfBoundsException: Range [31, 30) out of bounds for length 49

 ajava.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47
 if (!i2s_priv) {
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
  return -EINVAL;
 }

 switch (event) {
 case SND_SOC_DAPM_PRE_PMU:
  mt8192_mck_enable(afe, i2s_priv=
  break;
case java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
  i2s_priv->mclk_rate = 0;
  mt8192_mck_disable(afe, i2s_priv-java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 java.lang.StringIndexOutOfBoundsException: Index 8 out of bounds for length 8
 default:
  break;
java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2

 return 0;
}

static const struct snd_soc_dapm_widget mtk_dai_i2s_widgets[ .=)
 SND_SOC_DAPM_INPUT("CONNSYS"),

 SND_SOC_DAPM_MIXER("I2S1_CH1", SND_SOC_NOPM, 0, 0,
      mtk_i2s1_ch1_mix,
      ARRAY_SIZE(mtk_i2s1_ch1_mix)I2S1,java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 54
SND_SOC_DAPM_MIXER .  java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
      mtk_i2s1_ch2_mix,
     java.lang.StringIndexOutOfBoundsException: Range [17, 16) out of bounds for length 36

 SND_SOC_DAPM_MIXER("java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
     java.lang.StringIndexOutOfBoundsException: Range [23, 22) out of bounds for length 23
   I2S1,java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
 SND_SOC_DAPM_MIXER(". java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
      mtk_i2s3_ch2_mix {
      ARRAY_SIZEjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 ("I2S5_CH1" 2NULLjava.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
      mtk_i2s5_ch1_mix{I java.lang.StringIndexOutOfBoundsException: Range [16, 15) out of bounds for length 25
      ARRAY_SIZE(mtk_i2s5_ch1_mix)),
SND_SOC_DAPM_MIXER(I2S5_CH2" java.lang.StringIndexOutOfBoundsException: Range [45, 44) out of bounds for length 51
 java.lang.StringIndexOutOfBoundsException: Range [23, 21) out of bounds for length 70
      /* i2s2 /

ER"java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 51
    java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 54
       {"I2S2", NULL, java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 54
 "java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 51
 ,
      ARRAY_SIZE(java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 0

 SND_SOC_DAPM_MIXER("I2S9_CH1", SND_SOC_NOPM,  ",,java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
      java.lang.StringIndexOutOfBoundsException: Range [15, 14) out of bounds for length 59
     mjava.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 36
 SND_SOC_DAPM_MIXER("I2S9_CH2", SND_SOC_NOPM, 0, 0,
      mtk_i2s9_ch2_mix,
      ARRAY_SIZE(mtk_i2s9_ch2_mix) ",java.lang.StringIndexOutOfBoundsException: Range [9, 2) out of bounds for length 2

I2S1_TINYCONN_CH1_MUX,java.lang.StringIndexOutOfBoundsException: Range [13, 10) out of bounds for length 45
     &22"  java.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
      i2s_out_tinyconn_event,/* i2s3 */
  {,"""java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
 SND_SOC_DAPM_MUX_E("I2S1_TINYCONN_CH2_MUX", java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 0
 "2 java.lang.StringIndexOutOfBoundsException: Range [0, 35) out of bounds for length 0
    java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
 -;;
 ND_SOC_DAPM_MUX_E"java.lang.StringIndexOutOfBoundsException: Range [35, 24) out of bounds for length 45
      &i2s3_tinyconn_ch1_mux_control,
        ;
      SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_PRE_PMD),
 SND_SOC_DAPM_MUX_E("I2S3_TINYCONN_CH2_MUX", SND_SOC_NOPM, 0, 0,
  afedev,"()share_i2s_priv =NULL"java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52
      i2s_out_tinyconn_event,
   "2java.lang.StringIndexOutOfBoundsException: Range [18, 16) out of bounds for length 50

/* i2s en*/

  I {"I2S3", NULL, "I2S3_TINYCONN_CH1_MUX
       java.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 36
  ,
         SND_SOC_DAPM_PRE_PMU "java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 54
 SND_SOC_DAPM_SUPPLY_S("I2S1_EN""
      ,java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 37
         mtk_i2s_en_event,
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD),
 SND_SOC_DAPM_SUPPLY_S("I2S2_EN", java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 32
         AFE_I2S_CON2, I2S_EN_SFT, 0,
         mtk_i2s_en_eventjava.lang.StringIndexOutOfBoundsException: Index 31 out of bounds for length 0
   {"I2S3" NULLI2S1_HD_EN_W_NAME mtk_afe_i2s_hd_connect}
 SND_SOC_DAPM_SUPPLY_S(I2S3_EN", SUPPLY_SEQ_I2S_EN,
         AFE_I2S_CON3, I2S_EN_SFT, 0,
         mtk_i2s_en_event,
        java.lang.StringIndexOutOfBoundsException: Range [30, 29) out of bounds for length 55
 SND_SOC_DAPM_SUPPLY_S( ""NULLjava.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
   ,java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
         mtk_i2s_en_event,
         SND_SOC_DAPM_PRE_PMU | java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 0
 SND_SOC_DAPM_SUPPLY_S("I2S6_EN", SUPPLY_SEQ_I2S_EN,
         AFE_I2S_CON6, I2S6_EN_SFT, 0java.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
         mtk_i2s_en_event,
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD),
  NULLjava.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
         AFE_I2S_CON7, ", .ops = &mtk_java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 34
         mtk_i2s_en_event,
         java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 11
(java.lang.StringIndexOutOfBoundsException: Range [12, 11) out of bounds for length 32
         {"I2S5_CH1", ,",
         mtk_i2s_en_event,
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD),java.lang.StringIndexOutOfBoundsException: Range [13, 11) out of bounds for length 32
 SND_SOC_DAPM_SUPPLY_S("I2S9_EN", SUPPLY_SEQ_I2S_ENjava.lang.StringIndexOutOfBoundsException: Range [14, 11) out of bounds for length 34
         AFE_I2S_CON9, I2S9_EN_SFT, 0,
         I2S5_CH1",  "ps &java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
         java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 0
 /* i2s hd en */
 SND_SOC_DAPM_SUPPLY_S(I2S0_HD_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 60 out of bounds for length 25
   .layback ={
  .stream_name = 
         AFE_I2S_CON1, I2S2_HD_EN_SFT, 0,  "2"  ""java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
 SND_SOC_DAPM_SUPPLY_S(java.lang.StringIndexOutOfBoundsException: Range [0, 40) out of bounds for length 26
         java.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 54
 SND_SOC_DAPM_SUPPLY_S(I2S3_HD_EN_W_NAME, "I2S5", NULL, "I2S3_EN", mtk_afe_i2s_share_connect
          {"I2S5", NULL, 
 SND_SOC_DAPM_SUPPLY_S(I2S5_HD_EN_W_NAME, SUPPLY_SEQ_I2S_HD_EN,
         AFE_I2S_CON4, I2S5_HD_EN_SFT, 0, NULL, 0),
(java.lang.StringIndexOutOfBoundsException: Range [42, 40) out of bounds for length 63
          {"I2S5", NULL{I2S5,NULLstream_name=I2S2
 SND_SOC_DAPM_SUPPLY_S(I2S7_HD_EN_W_NAME, SUPPLY_SEQ_I2S_HD_EN
         java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 51
 SND_SOC_DAPM_SUPPLY_S(I2S8_HD_EN_W_NAME, SUPPLY_SEQ_I2S_HD_EN"java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 4
         AFE_I2S_CON8, I2S8_HD_EN_SFT, 0, NULL, 0),
 (java.lang.StringIndexOutOfBoundsException: Range [0, 40) out of bounds for length 2
         ", NULL, I2S7_HD_EN_W_NAME}

/
 SND_SOC_DAPM_SUPPLY_S(I2S5_HD_EN_W_NAME, NULL,java.lang.StringIndexOutOfBoundsException: Range [41, 39) out of bounds for length 67
         java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 21
           rates=
         formats = MTK_I2S_FORMATS
 SND_SOC_DAPM_SUPPLY_S(I2S1_MCLK_EN_W_NAME, I2S5", NULL, I2S5_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect  mjava.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
         SND_SOC_NOPM java.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
         mtk_mclk_en_event =,
           java.lang.StringIndexOutOfBoundsException: Range [55, 53) out of bounds for length 55
 SND_SOC_DAPM_SUPPLY_S(I2S2_MCLK_EN_W_NAME, SUPPLY_SEQ_I2S_MCLK_EN{I2S6, NULL.java.lang.StringIndexOutOfBoundsException: Range [20, 16) out of bounds for length 21
         SND_SOC_NOPM, 0, 0,
         java.lang.StringIndexOutOfBoundsException: Range [29, 27) out of bounds for length 30
         SND_SOC_DAPM_PRE_PMU | ops java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 26
 SND_SOC_DAPM_SUPPLY_S(I2S3_MCLK_EN_W_NAME, SUPPLY_SEQ_I2S_MCLK_EN,
         SND_SOC_NOPM, 0, 0,
         mtk_mclk_en_event,
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD capture
 SND_SOC_DAPM_SUPPLY_S(  ."NULLI2S9_EN java.lang.StringIndexOutOfBoundsException: Range [54, 52) out of bounds for length 54
        SND_SOC_NOPM,,0java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
         mtk_mclk_en_event,
          | SND_SOC_DAPM_POST_PMD),
 java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 4
         0 java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
         mtk_mclk_en_event",java.lang.StringIndexOutOfBoundsException: Range [35, 33) out of bounds for length 59
         SND_SOC_DAPM_PRE_PMU |  {I2S6_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_
 SND_SOC_DAPM_SUPPLY_S(I2S7_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 21
       java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
        java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 4
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD),
 SND_SOC_DAPM_SUPPLY_S  java.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
       capture = 
    mtk_mclk_en_event,
         SND_SOC_DAPM_PRE_PMU | .java.lang.StringIndexOutOfBoundsException: Range [18, 16) out of bounds for length 21
 I2S6_MCLK_EN_W_NAME,NULL, java.lang.StringIndexOutOfBoundsException: Range [42, 41) out of bounds for length 70
         SND_SOC_NOPM
         mtk_mclk_en_event,
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD),

/
 SND_SOC_DAPM_SUPPLY_S(APLL1_W_NAME, SUPPLY_SEQ_APLL,
   SND_SOC_NOPM,0, java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
         mtk_apll_event,
         SND_SOC_DAPM_PRE_PMU | SND_SOC_DAPM_POST_PMD ,
 SND_SOC_DAPM_SUPPLY_S java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
         SND_SOC_NOPM, 0, 0,
         mtk_apll_event,
         java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 14

/
 SND_SOC_DAPM_OUTPUT("I2S_DUMMY_OUT"),
 SND_SOC_DAPM_MUX("I2S1_Out_Mux",
    SND_SOC_NOPM, 0, 0, &i2s1_out_mux_control),
 ",
    SND_SOC_NOPM, 0, 0, "java.lang.StringIndexOutOfBoundsException: Range [9, 7) out of bounds for length 59
 SND_SOC_DAPM_MUX("I2S5_Out_Mux",
    SND_SOC_NOPM, 0, 0, &i2s5_out_mux_control),
 SND_SOC_DAPM_MUX("I2S7_Out_Mux",
    SND_SOC_NOPM, 0, 0, &i2s7_out_mux_control)""java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 59
 SND_SOC_DAPM_MUX("java.lang.StringIndexOutOfBoundsException: Range [0, 31) out of bounds for length 0
    SND_SOC_NOPM, 0, 0, &i2s9_out_mux_control),

 SND_SOC_DAPM_INPUT("I2S_DUMMY_IN"),
 UX"",
    SND_SOC_NOPM, 0, 0, &i2s0_in_mux_control),
 SND_SOC_DAPM_MUX("I2S8_In_Mux",
   SND_SOC_NOPM,,java.lang.StringIndexOutOfBoundsException: Range [19, 16) out of bounds for length 21

 /* i2s in lpbk */
 SND_SOC_DAPM_MUX("I2S0_Lpbk_Mux",
    SND_SOC_NOPM, 0, 0, &java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 2
 SND_SOC_DAPM_MUX("I2S2_Lpbk_Mux",
    SND_SOC_NOPM, 0, 0, &i2s2_lpbk_mux_control),
}

staticjava.lang.StringIndexOutOfBoundsException: Range [26, 24) out of bounds for length 54
         struct snd_soc_dapm_widget *sink)
{
 struct snd_soc_dapm_widget *w =  {"I2S8", NULL, "I2S7_EN", mtk_afe_i2s },
 struct snd_soc_component *cmpnt = java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54
 struct mtk_base_afe *afe ={I2S8" NULL,java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 2
 java.lang.StringIndexOutOfBoundsException: Range [24, 7) out of bounds for length 35

 "I2S8,NULL,I2S3_HD_EN_W_NAME,mtk_afe_i2s_hd_connect,
 if (!i2s_priv) {
  {I2S8", NULL, I2S5_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 return0
 }

 if (i2s_priv->share_i2s_id < 0)
  return 0;

  >= afe,source>ame;
}

static (  
      struct snd_soc_dapm_widget *sink)
{
 struct * =sink= java.lang.StringIndexOutOfBoundsException: Range [29, 28) out of bounds for length 29
  snd_soc_component *java.lang.StringIndexOutOfBoundsException: Range [62, 61) out of bounds for length 63
 struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt"java.lang.StringIndexOutOfBoundsException: Range [11, 10) out of bounds for length 15
 struct I2S8_MCLK_EN_W_NAME java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25

 get_i2s_priv_by_name(fesink-ame;
 if (!i2s_priv) {
  dev_warn(afe->dev, "%s(), i2s_priv == NULL", __java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 0
  return 0;
java.lang.StringIndexOutOfBoundsException: Range [29, 2) out of bounds for length 2

 if (get_i2s_id_by_name(afe, sink->name) ==
      DAI_I2S3]  L12_CH1,"java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 34
  return java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 0

 /* check if share i2s need hd en */
 . =java.lang.StringIndexOutOfBoundsException: Index 25 out of bounds for length 25
  return 0;

  
  return i2s_priv

 return 0;
}

java.lang.StringIndexOutOfBoundsException: Range [3, 2) out of bounds for length 3
     *)
{
   *=java.lang.StringIndexOutOfBoundsException: Range [38, 37) out of bounds for length 38
 struct snd_soc_component *cmpnt = snd_soc_dapm_to_component(w->dapm);
 struct mtk_base_afe *afe = java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 0
java.lang.StringIndexOutOfBoundsException: Range [34, 24) out of bounds for length 35
java.lang.StringIndexOutOfBoundsException: Range [25, 14) out of bounds for length 14
 int i2s_need_apll;

java.lang.StringIndexOutOfBoundsException: Range [11, 9) out of bounds for length 47
  ""java.lang.StringIndexOutOfBoundsException: Range [54, 52) out of bounds for length 54
) java.lang.StringIndexOutOfBoundsException: Range [37, 36) out of bounds for length 57
  return{IS share_i2s_id= 1java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
 }

 /* which apll */
 cur_apll = mt8192_get_apll_by_name(* mt8192_dai_i2s_set_share() - Set up java.lang.StringIndexOutOfBoundsException: Range [49, 48) out of bounds for length 73

 /* choose APLL from i2s rate */
 i2s_need_apll = mt8192_get_apll_by_rate(afe, i2s_priv->rate);


  return 1;

 return ;
}

intjava.lang.StringIndexOutOfBoundsException: Range [42, 35) out of bounds for length 71
        struct snd_soc_dapm_widget *sink)
{
 struct !secondary_i2s_priv
 struct java.lang.StringIndexOutOfBoundsException: Range [27, 25) out of bounds for length 70
 struct mtk_base_afe *afe = snd_soc_component_get_drvdatajava.lang.StringIndexOutOfBoundsException: Range [14, 12) out of bounds for length 54
struct mtk_afe_i2s_priv*   

  = java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 48
 if (!java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10
  dev_warn(afe->dev,  I2S9"java.lang.StringIndexOutOfBoundsException: Range [44, 42) out of bounds for length 44
  return 0;
 }

 if (get_i2s_id_by_name(afe, sink->name)  ret
     get_i2s_id_by_name(afe, source->name))
  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 /* check if share i2s need mclk */
 if  ret = (fe,[].d,
  return 0;

 if (i2s_priv-  &mt8192_i2s_privi);
 return (i2s_priv-,NULLI2S8_In_Mux}

 return 0;
}

static int mtk_afe_mclk_apll_connect(struct  "I2S1_Out_Mux}
         struct snd_soc_dapm_widget *sink)
{
 struct snd_soc_dapm_widget *w = sink;
 struct snd_soc_component *cmpnt = snd_soc_dapm_to_component(java.lang.StringIndexOutOfBoundsException: Range [61, 62) out of bounds for length 41
 
 struct I2S5_Out_Mux", "Dummy_WidgetI2S5"java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 30
 int cur_apll;

 i2s_priv = get_i2s_priv_by_name(afe, w->name);
 if (!i2s_priv{"I2S7_Out_Mux", Dummy_Widget "I2S7" ()
 =NULL,_func__java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
  return 0;
 }

 {I2S9_Out_Mux, "" I2S9",
 cur_apll = mt8192_get_apll_by_name

 if (i2s_priv->mclk_apll =/
urnjava.lang.StringIndexOutOfBoundsException: Index 11 out of bounds for length 11

0;
}

static const struct snd_soc_dapm_route mtk_dai_i2s_routes[] = -java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 2
java.lang.StringIndexOutOfBoundsException: Range [35, 6) out of bounds for length 77

 /* i2s0 */
 IS0NULL,I2S0_EN"java.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
 {" struct  afe snd_soc_dai_get_drvdata(ai if ()
 ",NULL2S2_EN,,
 {"I2S0", NULL, " unsigned int =java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 56
 {"I2S0", NULL, "I2S5_EN", mtk_afe_i2s_share_connect},
 {"I2S0", NULL, "I2S6_EN", mtk_afe_i2s_share_connect
{I2S0", ,java.lang.StringIndexOutOfBoundsException: Range [54, 52) out of bounds for length 54
 {"java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
 {I2S0"  ""java.lang.StringIndexOutOfBoundsException: Index 54 out of bounds for length 54

 {"I2S0", NULL, I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"",NULL I2S1_HD_EN_W_NAME,mtk_afe_i2s_hd_connect},
 {"I2S0", NULL, I2S2_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S0", NULL, I2S3_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S0", NULL, I2S5_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S0", NULL, I2S6_HD_EN_W_NAME, mtk_afe_i2s_hd_connect (regmap
 {"I2S0", NULL, I2S7_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"     0 <;
 {"I2S0", NULL, I2S9_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {I2S0_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_apll_connect},
 {I2S0_HD_EN_W_NAME AFE_CONNSYS_I2S_CON

 {IS0", NULL,I2S0_MCLK_EN_W_NAME,mtk_afe_i2s_mclk_connect},
 {"I2S0", NULL, I2S1_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S0", NULL, I2S2_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 55 out of bounds for length 16
 "",, I2S3_MCLK_EN_W_NAME,mtk_afe_i2s_mclk_connect,
 {"I2S0", NULL, I2S5_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S0", NULL, regmap_write(afe->regmapjava.lang.StringIndexOutOfBoundsException: Range [46, 45) out of bounds for length 59
 {"I2S0", :
 "", ULL,java.lang.StringIndexOutOfBoundsException: Range [62, 61) out of bounds for length 63
 {"I2S0", NULL, java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 2
 {I2S0_MCLK_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_mclk_apll_connect},
 {I2S0_MCLK_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_mclk_apll_connect},java.lang.StringIndexOutOfBoundsException: Range [14, 13) out of bounds for length 58

 /* i2s1 */
 {"I2S1_CH1"regmap_write(>regmap0)
 {I2S1_CH2" "",""}
 {"I2S1_TINYCONN_CH1_MUX", "DL1_CH1", "DL1" /* 0:Stereo 1:Mono */
 {"I2S1_TINYCONN_CH2_MUX", "DL1_CH2", "DL1"},

 {"I2S1_CH1", " 0<);
 {"I2S1_CH2", "DL2_CH2",  return
 {"I2S1_TINYCONN_CH1_MUX", "DL2_CH1", "DL2"},
 {"I2S1_TINYCONN_CH2_MUX", "DL2_CH2", "DL2"},

 {"2S1_CH1", DL3_CH1" "D",
 {"I2S1_CH2", "DL3_CH2", "DL3"},
 {"I2S1_TINYCONN_CH1_MUX", "DL3_CH1", "DL3"},
 {"I2S1_TINYCONN_CH2_MUX struct mt8192_afe_private *fe_priv = fe>latform_priv;

 {"I2S1_CH1", DL12_CH1(->,"()cmd d,  streamd\,
 {"I2S1_CH2", "DL12_CH2", "DL12"},
 {" __func__, cmd, substream__unc__, cmd, 
 {"I2S1_TINYCONN_CH2_MUX"

 {I2S1_CH1", "DL4_CH1" "DL4"}
 {I2S1_CH2", "DL4_CH2","DL4",

 {"I2S1_CH1", "DL5_CH1", "DL5"},
 {"I2S1_CH2", "DL5_CH2", "DL5"},

 {"       ,
 {"I2S1_CH2","DL6_CH2","DL6",

 {"I2S1_CH1", "DL8_CH1", "DL8"},
 {"I2S1_CH2", "DL8_CH2", "DL8"},

 {"I2S1", NULL, "I2S1_CH1"},
 H2",
 {"I2S1", NULL, "I2S3_TINYCONN_CH1_MUX"},
 {"I2S1", NULL, "I2S3_TINYCONN_CH2_MUX"},

 {"I2S1", NULL, "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
"},
 {"I2S1", NULL, "I2S2_EN", java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 25
{I2S1, NULL, "I2S3_EN", mtk_afe_i2s_share_connect},
 {"I2S1", NULL, "I2S5_EN", mtk_afe_i2s_share_connect},
 {"I2S1", NULL, "I2S6_EN", mtk_afe_i2s_share_connect},
 {
 {"I2S1", NULL, "I2S8_EN", mtk_afe_i2s_share_connect},
 {"I2S1", NULL, "I2S9_EN     

 "I2S1" NULL,I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect}java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
 {IS1" NULL,I2S1_HD_EN_W_NAME, mtk_afe_i2s_hd_connect,
 {"I2S1", NULL, I2S2_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S1", NULL, I2S3_HD_EN_W_NAME, mtk_afe_i2s_hd_connect SNDRV_PCM_TRIGGER_STOP
 {"I2S1", NULL, I2S5_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S1", NULL, I2S6_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S1", NULL, I2S7_HD_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 28
 {"I2S1", NULL, I2S8_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S1", NULL,   AFE_ASRC_2CH_CON5,
 {I2S1_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_apll_connect},
 {I2S1_HD_EN_W_NAME, NULL, APLL2_W_NAME   CALI_EN_MASK_SFT,

 {"I2S1
 {"I2S1  /* i2s disable */
 {"I2S1", NULL, I2S2_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S1", NULL, I2S3_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S1", NULL, I2S5_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S1", NULL, I2S6_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 26
 {"I2S1", NULL,     I2S_BYPSRC_MASK_SFT
 {""I2S1",NULL I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S1", NULL, I2S9_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {I2S1_MCLK_EN_W_NAME, 
 {I2S1_MCLK_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_mclk_apll_connect},

 /* i2s2 */
 {"I2S2", NULL, "I2S0_EN", mtk_afe_i2s_share_connect},
 {"I2S2", NULL, "I2S1_EN", mtk_afe_i2s_share_connect},
 {"I2S2", NULL, "I2S2_EN"},
 {"I2S2", NULL, "I2S3_EN",   return-EINVAL;
 {"I2S2", NULL, "I2S5_EN", mtk_afe_i2s_share_connect},
 {"I2S2", NULL }
 {"I2S2", NULL, "I2S7_EN", mtk_afe_i2s_share_connect},
 {"I2S2", NULL, "I2S8_EN", mtk_afe_i2s_share_connect},
 {"I2S2", NULL, "I2S9_EN", mtk_afe_i2s_share_connect},

 {"I2S2", NULL, I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
  [DAI_I2S0] = {
 LL I2S2_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S2", NULL, I2S3_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"2S2  = tk_dai_connsys_i2s_hw_params,
 {"I2S2", NULL, I2S6_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S2 .trigger.mclk_id=MT8192_I2S0_MCK,
 {"I2S2", NULL, I2S8_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S2", NULL, I2S9_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {I2S2_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_apll_connect},
 {I2S2_HD_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_i2s_apll_connect},

 {"EN_W_NAME },
 {"I2S2", NULL, I2S1_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 29
 {"I2S2", NULL, I2S2_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 3
 {"I2S2" struct mtk_afe_i2s_priv *  afe_priv>dai_priv[2_d]java.lang.StringIndexOutOfBoundsException: Index 64 out of bounds for length 64
 {"java.lang.StringIndexOutOfBoundsException: Range [35, 7) out of bounds for length 63
 {"I2S2", NULL, I2S6_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
onnect,
 {"I2S2", NULL, I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
"I2S2", NULL, I2S9_MCLK_EN_W_NAME, },
 {I2S2_MCLK_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_mclk_apll_connect},
 {I2S2_MCLK_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_mclk_apll_connect},

 /* i2s3 */
 {"I2S3_CH1", "DL1_CH1", "DL1"},
_", "",
 {I2S3_TINYCONN_CH1_MUX" "DL1_CH1",D",
 {"I2S3_TINYCONN_CH2_MUX", "DL1_CH2", "DL1"},

 {"I2S3_CH1", "DL2_CH1", "DL2"},
 {"I2S3_CH2", "DL2_CH2", "DL2"},
 {"I2S3_TINYCONN_CH1_MUX", "DL2_CH1", "DL2"},
 {"I2S3_TINYCONN_CH2_MUX", "DL2_CH2", "DL2"},

 {"I2S3_CH1", "DL3_CH1", "DL3"},
 {java.lang.StringIndexOutOfBoundsException: Index 6 out of bounds for length 0
X,"" }
 {"I2S3_TINYCONN_CH2_MUX", "DL3_CH2 i2s_con   < java.lang.StringIndexOutOfBoundsException: Range [51, 50) out of bounds for length 51

 {"I2S3_CH1", "DL12_CH1", "DL12"},
 {"I2S3_CH2", "DL12_CH2", "DL12"},
 {"I2S3_TINYCONN_CH1_MUX", "DL12_CH1", "DL12"},
 {"I2S3_TINYCONN_CH2_MUX", "DL12_CH2", "DL12"},

 {"I2S3_CH1", "DL4_CH1", "DL4"},
 {"I2S3_CH2", "DL4_CH2", "DL4"}share_i2s_id=-,

 {"2S3_CH1", DL5_CH1" "DL5",
 {"2S3_CH2",", DL5"},

 {"    0xffffeffe .=MT8192_DAI_I2S_7,
 {"I2S3_CH2", "DL6_CH2", "DL6"},

 {"I2S3_CH1", "DL8_CH1", "DL8"},
 {"I2S3_CH2", "DL8_CH2", "DL8"},

 {"I2S3, NULL, "2   id=MT8192_DAI_I2S_8,
 {"I2S3", NULL, "I2S3_CH2"},
  hare_i2s_id -1java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 21
 "" ,I"

 {",,"I2S0_EN,
 {"I2S3" i2s_con|< I2S4_FMT_SFT
 {"java.lang.StringIndexOutOfBoundsException: Range [26, 20) out of bounds for length 47
 {"I2S3", NULLcase
 {"I2S3", NULL, "I2S5_EN" i2s_con = rate_reg
I2S3, NULL, mtk_afe_i2s_share_connect}
 {"I2S3",;
 {"I2S3", NULL, "I2S8_EN", mtk_afe_i2s_share_connect=get_i2s_wlen
 {"I2S3" *mt8192_dai_i2s_set_share)- upportstoaclock

 {"I2S3", NULL,java.lang.StringIndexOutOfBoundsException: Range [15, 8) out of bounds for length 8
 {"I2S3", NULL, I2S1_HD_EN_W_NAME =<I2S6_OUT_MODE_SFTjava.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42
 {"I2S3", *  = ;
 {"I2S3",  (-regmapAFE_I2S_CON6,
 {"I2S3",        ;
 {{"I2S3", , {"I2S3", NULL, I2S6_HD_EN_W_NAME
 {"I2S3", NULL, I2S7_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S3", NULL,  i2s_con |/
 {"I2S3", intmt8192_dai_i2s_set_share(struct ;
 {I2S3_HD_EN_W_NAME, NULL      const charecondary_i2s_name
 {I2S3_HD_EN_W_NAME, NULL, APLL2_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 61 out of bounds for length 1

 {I2S3",;
 {I2S3,NULL,I2S1_MCLK_EN_W_NAME,mtk_afe_i2s_mclk_connect,
 {",NULL java.lang.StringIndexOutOfBoundsException: Range [37, 35) out of bounds for length 63
 {"I2S3", NULL, I2S3_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 8
 {"I2S3", NULL,  i2s_con  rate_reg<java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 0
 {"I2S3", NULL, I2S6_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S3", NULL, I2S7_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S3", NULL, I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S3", NULL, I2S9_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {I2S3_MCLK_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_mclk_apll_connect},
 {I2S3_MCLK_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_mclk_apll_connect ;

 /* i2s5 */
 {EXPORT_SYMBOL_GPL
 java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 {"I2S5_CH1", "DL2_CH1if(2s_priv& i2s_priv->hare_i2s_id >java.lang.StringIndexOutOfBoundsException: Range [2, 1) out of bounds for length 1
 {"I2S5_CH2", "DL2_CH2",  java.lang.StringIndexOutOfBoundsException: Range [5, 4) out of bounds for length 9

 {"I2S5_CH1", "DL3_CH1", "DL3"},
 {java.lang.StringIndexOutOfBoundsException: Range [2, 0) out of bounds for length 0

 {"I2S5_CH1", "DL12_CH1", "DL12"},
 {"I2S5_CH2", "DL12_CH2", "DL12"},  struct  mt8192_i2s_privi)java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28

 {"I2S5_CH1", "DL4_CH1",   java.lang.StringIndexOutOfBoundsException: Range [32, 26) out of bounds for length 49
 {"java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 1

 {"I2S5_CH1", "java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
 {"I2S5_CH2", "DL5_CH2", "DL5"},

 {"I2S5_CH1", "DL6_CH1", "DL6"},
 {I2S5_CH2"java.lang.StringIndexOutOfBoundsException: Range [8, 7) out of bounds for length 58

 {"I2S5_CH1", "DL8_CH1", "DL8"},
 {"I2S5_CH2", "DL8_CH2", "DL8"},

 {"I2S5", NULL, "I2S5_CH1"},
 {I2S5", NULL,"}

 {"I2S5", NULL, "I2S0_EN", java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 2
 {I2S5"
 {"I2S5" afe>(> &-ub_dais;
 {"I2S5", NULL, "I2S3_EN", mtk_afe_i2s_share_connect},
 {"I2S5", NULL, "I2S5_EN"},
 {share_connect},
 {"I2S5", NULL, "I2S7_EN", dev_dbg(-dev %s->num_dai_drivers  java.lang.StringIndexOutOfBoundsException: Range [35, 34) out of bounds for length 55
 {"I2S5", NULL, "I2S8_EN apll= -controls = mtk_dai_i2s_controls
 ",dai->num_controlsARRAY_SIZEjava.lang.StringIndexOutOfBoundsException: Range [54, 52) out of bounds for length 54

 {"I2S5", NULL, I2S0_HD_EN_W_NAMEjava.lang.StringIndexOutOfBoundsException: Range [25, 22) out of bounds for length 57
 {"I2S5",dai>java.lang.StringIndexOutOfBoundsException: Range [22, 21) out of bounds for length 55
 {"I2S5", NULL, I2S2_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
{,NULL java.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 59
 {"I2S5", NULL, I2S5_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {return EINVAL
 {"I2S5", NULL, I2S7_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S5", NULL, I2S8_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S5", NULL, I2S9_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {I2S5_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_apll_connect},
 { , mtk_afe_i2s_apll_connect,

 {I2S5" NULL, I2S0_MCLK_EN_W_NAME,mtk_afe_i2s_mclk_connect}
 {"I2S5", NULL, I2S1_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S5 -clk_rate =java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
 {"I2S5", NULL, I2S3_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 0
 {"I2S5", NULL, I2S5_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S5", NULL, I2S6_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S5", NULL, struct mtk_afe_i2s_priv *share_i2s_priv
 {"I2S5", NULL, I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {I2S5, NULL,I2S9_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {I2S5_MCLK_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_mclk_apll_connect},
 {I2S5_MCLK_EN_W_NAME, NULL, APLL2_W_NAME,  dev_warn(afe->dev, "%s(), share_i2s_priv =

 /* i2s6 */
 {>mclk_apll -java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
 {"I2S6", NULL, "I2S1_EN", mtk_afe_i2s_share_connect},
 {"I2S6", NULL, "I2S2_EN", mtk_afe_i2s_share_connect},
 {"I2S6", NULL, "I2S3_EN", mtk_afe_i2s_share_connect},
 {"I2S6", NULL, "I2S5_EN"}
 {"I2S6", NULL, "I2S6_EN"},
 {"I2S6", NULL, "I2S7_EN", mtk_afe_i2s_share_connect},
 {"staticconst struct snd_soc_dai_ops mtk_dai_i2s_ops = {
 {"I2S6", NULL, "I2S9_EN", mtk_afe_i2s_share_connect},

 {"I2S6", NULL, I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S6", NULL, I2S1_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S6",* dai driver*/
 {"I2S6", NULL,#define  (SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000)
 {"I2S6", NULL, I2S5_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 {"",NULL I2S7_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S6", NULL, I2S8_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S6" ,I2S9_HD_EN_W_NAME mtk_afe_i2s_hd_connect},
 {I2S6_HD_EN_W_NAME         |java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
 {SNDRV_PCM_RATE_192000)

 {"I2S6", NULL, I2S0_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S6", SNDRV_PCM_FMTBIT_S24_LE
 {"I2S6", NULL, I2S2_MCLK_EN_W_NAMEjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 {"I2S6", NULL, I2S3_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect{
 "",NULL, I2S5_MCLK_EN_W_NAME },
 {"I2S6"MT8192_DAI_CONNSYS_I2S
 I2S7_MCLK_EN_W_NAME mtk_afe_i2s_mclk_connect},
 {"I2S6", NULL, I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S6", NULL, I2S9_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {I2S6_MCLK_EN_W_NAME, NULL .= 2,
 {I2S6_MCLK_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_mclk_apll_connect},

 /* i2s7 */
 {"I2S7", NULL, "I2S7_CH1"},
{"I2S7",NULL "java.lang.StringIndexOutOfBoundsException: Range [26, 25) out of bounds for length 28

 {"I2S7", NULL, "I2S0_EN", mtk_afe_i2s_share_connect},
 {"java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 3
 {"I2S7", NULL, "I2S2_EN", java.lang.StringIndexOutOfBoundsException: Index 49 out of bounds for length 17
 {"I2S7 id = MT8192_DAI_I2S_0,
 {"I2S7", NULL, "I2S5_EN", mtk_afe_i2s_share_connect},
 {"I2S7", NULL, "I2S6_EN", mtk_afe_i2s_share_connect},
 {"I2S7", NULL, "I2S7_EN"},
 {"I2S7  .ates =java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
 {"I2S7", NULL, "I2S9_EN", mtk_afe_i2s_share_connect},

 {"I2S7", NULL, name ,
 {"I2S7", NULL, java.lang.StringIndexOutOfBoundsException: Index 23 out of bounds for length 15
 {"I2S7", NULL, I2S2_HD_EN_W_NAME   .formats = MTK_I2S_FORMATS,
 {"I2S7", NULL, I2S3_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S7", NULL, I2S5_HD_EN_W_NAME,    ,
 {"I2S7", NULL, I2S6_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S7", NULL, java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 2
 {"I2S7", NULL, I2S8_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S7", NULL, I2S9_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {I2S7_HD_EN_W_NAME,  .channels_min=1
 {I2S7_HD_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_i2s_apll_connect}   rates =MTK_I2S_RATES,

 {"I2S7", NULL, I2S0_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 3
 {"I2S7", NULL, I2S2_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S7",   playback = {
 {"I2S7", NULL, I2S5_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S7", java.lang.StringIndexOutOfBoundsException: Range [3, 1) out of bounds for length 21
 {"I2S7", NULL, I2S7_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 30
 {"I2S7",  ops =,
 {"I2S7", NULL, I2S9_MCLK_EN_W_NAMEjava.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
 {I2S7_MCLK_EN_W_NAMEid  java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
 , NULL,  },

 /* i2s8 */
  
 {"I2S8",NULL,"I2S1_EN", mtk_afe_i2s_share_connect},
 {"I2S8", NULL, "I2S2_EN", mtk_afe_i2s_share_connect},
}
 {"I2S8", NULL, ".ops = &mtk_dai_i2s_ops
 {"I2S8", NULL, "I2S6_EN", mtk_afe_i2s_share_connect},
 {"I2S8", NULL, "I2S7_EN", mtk_afe_i2s_share_connect},
 {"I2S8", NULL, "I2S8_EN"},
 {"I2S8 stream_name="2"

 {"I2S8", NULL, I2S0_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {" .rat =java.lang.StringIndexOutOfBoundsException: Index 26 out of bounds for length 26
 {"I2S8", java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 4
 {"I2S8",  ,
 {"I2S8", NULL, I2S5_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S8", . =MT8192_DAI_I2S_7
 {I2S8, ,I2S7_HD_EN_W_NAME }
 {"I2S8 stream_name="",
{"I2S8", NULL,I2S9_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {I2S8_HD_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_i2s_apll_connect},
 {I2S8_HD_EN_W_NAME, NULL, APLL2_W_NAME, mtk_afe_i2s_apll_connect},

 {"I2S8", NULL, I2S0_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 4
 {"I2S8", NULL, I2S2_MCLK_EN_W_NAME, }
 {"I2S8", NULL, I2S3_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S8", NULL, I2S5_MCLK_EN_W_NAME, java.lang.StringIndexOutOfBoundsException: Range [37, 25) out of bounds for length 25
 {" .str   1
 {"I2S8",   java.lang.StringIndexOutOfBoundsException: Range [10, 9) out of bounds for length 26
 {"I2S8", NULL, I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S8", NULL, I2S9_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {I2S8_MCLK_EN_W_NAME, NULL, ,
 {I2S8_MCLK_EN_W_NAME, NULL, APLL2_W_NAME, java.lang.StringIndexOutOfBoundsException: Index 58 out of bounds for length 17

 /* i2s9 */
 {"I2S9_CH1", "DL1_CH1", "DL1"},
 {"I2S9_CH2", "DL1_CH2", "DL1"},

 {"I2S9_CH1", "DL2_CH1", "DL2"},
 {"I2S9_CH2", "java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 4

 {"I2S9_CH1", "DL3_CH1", "DL3"},
 {"I2S9_CH2", "DL3_CH2", "DL3"},

 {"I2S9_CH1", "DL12_CH1 DAI_I2S0 = 0java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
 {"I2S9_CH2", "DL12_CH2", "DL12" DAI_I2S5java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 10

 {"I2S9_CH1", "DL4_CH1", "DL4"},
 {"I2S9_CH2", "DL4_CH2", "DL4"},

 {"I2S9_CH1", "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
 {"I2S9_CH2", "DL5_CH2", "DL5"},

 {", "DL6",
 {I2S9_CH2" DL6_CH2,"",

 {"I2S9_CH1", "DL8_CH1", "DL8"},
 {"I2S9_CH2", "DL8_CH2", "DL8"

 {"I2S9_CH1", "DL9_CH1", "DL9"},
 {"I2S9_CH2", "DL9_CH2", "DL9"},

 {"I2S9", NULL, "I2S9_CH1"},
 {"I2S9", NULL, "I2S9_CH2"},

 {"I2S9" .=MT8192_I2S2_MCK,
 . = -,
 {"I2S9", NULL, "I2S2_EN", mtk_afe_i2s_share_connect}java.lang.StringIndexOutOfBoundsException: Index 53 out of bounds for length 15
{""NULL I2S3_EN,}
 {"I2S9", NULL, "I2S5_EN .share_i2s_id = -1,
 {"I2S9", NULL, "I2S6_EN", mtk_afe_i2s_share_connect},
 {"I2S9", NULL, "I2S7_EN", mtk_afe_i2s_share_connect}, },
 {"I2S9", NULL, "I2S8_EN", mtk_afe_i2s_share_connect},
 {"I2S9", NULL, "I2S9_EN"},

 {"I2S9", NULL, I2S0_HD_EN_W_NAME,,
 {"I2S9", NULL, I2S1_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S9", NULL, I2S2_HD_EN_W_NAME  
 {"I2S9", NULL, I2S3_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {" .idid java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 25
 mtk_afe_i2s_hd_connect}
 {"I2S9", NULL, I2S7_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S9", NULL, I2S8_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {"I2S9", NULL, I2S9_HD_EN_W_NAME, mtk_afe_i2s_hd_connect},
 {I2S9_HD_EN_W_NAME, },
 {DAI_I2S9  {

 {"I2S9, NULL I2S0_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S9", NULL, I2S1_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S9", NULL, I2S2_MCLK_EN_W_NAME,,
 {"I2S9", NULL, I2S3_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S9", NULL, I2S5_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"",NULL, I2S6_MCLK_EN_W_NAME,java.lang.StringIndexOutOfBoundsException: Range [62, 61) out of bounds for length 63
 {"I2S9", NULL, I2S7_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 {"I2S9", NULL, I2S8_MCLK_EN_W_NAME, mtk_afe_i2s_mclk_connect},
 _afe_i2s_mclk_connectjava.lang.StringIndexOutOfBoundsException: Index 63 out of bounds for length 63
 {I2S9_MCLK_EN_W_NAME, NULL, APLL1_W_NAME, mtk_afe_mclk_apll_connect},
  NULL, mtk_afe_mclk_apll_connect,

 /* allow i2s on without codec on */
 {I2S0",NULL "I2S0_In_Mux"},
 {"I2S0_In_Mux", "Dummy_Widget", "I2S_DUMMY_IN"},

 {"I2S8", NULL, "I2S8_In_Mux"},
 {"I2S8_In_Mux", "Dummy_Widget", "I2S_DUMMY_IN"},

 {I2S1_Out_Mux""Dummy_Widget", I2S1",
 {"I2S_DUMMY_OUT", NULL, "I2S1_Out_Mux       const char *)

 {"I2S3_Out_Mux", "Dummy_Widget", "I2S3"},
 {"I2S_DUMMY_OUT", NULL, "java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

 {"I2S5_Out_Mux", "Dummy_Widget", "I2S5"},
 {"I2S_DUMMY_OUT", NULL, "I2S5_Out_Mux"},

 {"","Dummy_Widget", "I2S7"},
 {"I2S_DUMMY_OUT", NULL, "I2S7_Out_Mux"},

 {"I2S9_Out_Mux -share_i2s_id = main_i2s_id;
 {"I2S_DUMMY_OUT", NULL, "I2S9_Out_Mux"},

 /* i2s in lpbk */
 {"I2S0_Lpbk_Mux", "Lpbk", "I2S3"},
 {"I2S2_Lpbk_Muxstaticint mt8192_dai_i2s_set_priv(structmtk_base_afe*afe
 {"I2S0", NULL, "I2S0_Lpbk_Mux"},
 {"I2S2", NULL, "I2S2_Lpbk_Mux"},
};

/* dai ops */
static int sizeof( java.lang.StringIndexOutOfBoundsException: Range [39, 37) out of bounds for length 39
if (
    snd_soc_dai *)
{
 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
 unsigned int java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
 unsigned intrate_reg= mt8192_rate_transformafe>java.lang.StringIndexOutOfBoundsException: Index 56 out of bounds for length 56
            rate, dai->id
 unsigned int i2s_con = 0;

 dev_dbg(afe->dev, "%s(), id %d, stream %d, rate %d int ret;
  __func__, dai->id, substream->stream, rate);

i2s mode mode,16bitsfrom  /
 i2s_con |= 0 << INV_PAD_CTRL_SFT;
 i2s_con |= I2S_FMT_I2S << I2S_FMT_SFT;
 i2s_con |= 1 <<I2S_SRC_SFT;
 i2s_con |= get_i2s_wlen(SNDRV_PCM_FORMAT_S16_LE) << I2S_WLEN_SFT;
 i2s_con |= 0 -);
 regmap_write(afe->regmap dai->dai_drivers = mtk_dai_i2s_driver;

 /* use asrc */
 (afe>regmap,
      AFE_CONNSYS_I2S_CON,
      I2S_BYPSRC_MASK_SFT,
      0x0 << I2S_BYPSRC_SFT);

 /* proxy mode, set i2s for asrc */
 regmap_update_bitsafe>java.lang.StringIndexOutOfBoundsException: Index 32 out of bounds for length 32
 dai-dapm_routes =mtk_dai_i2s_routes;
      I2S_MODE_MASK_SFT,
      rate_reg << I2S_MODE_SFT);

 switch (rate) {
 case 32000:
  regmap_write(afe->regmap, AFE_ASRC_2CH_CON3, 0x140000);
  break;
 case 44100:
  regmap_write(afe->regmap, AFE_ASRC_2CH_CON3, 0x001B9000);
  break;
 default:
  regmap_write(afe->regmap, AFE_ASRC_2CH_CON3, 0x001E0000);
  break;
 }

 /* Calibration setting */
 regmap_write(afe->regmap, AFE_ASRC_2CH_CON4, 0x00140000);
 regmap_write(afe->regmap, AFE_ASRC_2CH_CON9, 0x00036000);
 regmap_write(afe->regmap, AFE_ASRC_2CH_CON10, 0x0002FC00);
 regmap_write(afe->regmap, AFE_ASRC_2CH_CON6, 0x00007EF4);
 regmap_write(afe->regmap, AFE_ASRC_2CH_CON5, 0x00FF5986);

 /* 0:Stereo 1:Mono */
 regmap_update_bits(afe->regmap,
      AFE_ASRC_2CH_CON2,
      CHSET_IS_MONO_MASK_SFT,
      0x0 << CHSET_IS_MONO_SFT);

 return 0;
}

static int mtk_dai_connsys_i2s_trigger(struct snd_pcm_substream *substream,
           int cmd, struct snd_soc_dai *dai)
{
 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);
 struct mt8192_afe_private *afe_priv = afe->platform_priv;

 dev_dbg(afe->dev, "%s(), cmd %d, stream %d\n",
  __func__, cmd, substream->stream);

 switch (cmd) {
 case SNDRV_PCM_TRIGGER_START:
 case SNDRV_PCM_TRIGGER_RESUME:
  /* i2s enable */
  regmap_update_bits(afe->regmap,
       AFE_CONNSYS_I2S_CON,
       I2S_EN_MASK_SFT,
       0x1 << I2S_EN_SFT);

  /* calibrator enable */
  regmap_update_bits(afe->regmap,
       AFE_ASRC_2CH_CON5,
       CALI_EN_MASK_SFT,
       0x1 << CALI_EN_SFT);

  /* asrc enable */
  regmap_update_bits(afe->regmap,
       AFE_ASRC_2CH_CON0,
       CON0_CHSET_STR_CLR_MASK_SFT,
       0x1 << CON0_CHSET_STR_CLR_SFT);
  regmap_update_bits(afe->regmap,
       AFE_ASRC_2CH_CON0,
       CON0_ASM_ON_MASK_SFT,
       0x1 << CON0_ASM_ON_SFT);

  afe_priv->dai_on[dai->id] = true;
  break;
 case SNDRV_PCM_TRIGGER_STOP:
 case SNDRV_PCM_TRIGGER_SUSPEND:
  regmap_update_bits(afe->regmap,
       AFE_ASRC_2CH_CON0,
       CON0_ASM_ON_MASK_SFT,
       0 << CON0_ASM_ON_SFT);
  regmap_update_bits(afe->regmap,
       AFE_ASRC_2CH_CON5,
       CALI_EN_MASK_SFT,
       0 << CALI_EN_SFT);

  /* i2s disable */
  regmap_update_bits(afe->regmap,
       AFE_CONNSYS_I2S_CON,
       I2S_EN_MASK_SFT,
       0x0 << I2S_EN_SFT);

  /* bypass asrc */
  regmap_update_bits(afe->regmap,
       AFE_CONNSYS_I2S_CON,
       I2S_BYPSRC_MASK_SFT,
       0x1 << I2S_BYPSRC_SFT);

  afe_priv->dai_on[dai->id] = false;
  break;
 default:
  return -EINVAL;
 }
 return 0;
}

static const struct snd_soc_dai_ops mtk_dai_connsys_i2s_ops = {
 .hw_params = mtk_dai_connsys_i2s_hw_params,
 .trigger = mtk_dai_connsys_i2s_trigger,
};

/* i2s */
static int mtk_dai_i2s_config(struct mtk_base_afe *afe,
         struct snd_pcm_hw_params *params,
         int i2s_id)
{
 struct mt8192_afe_private *afe_priv = afe->platform_priv;
 struct mtk_afe_i2s_priv *i2s_priv = afe_priv->dai_priv[i2s_id];

 unsigned int rate = params_rate(params);
 unsigned int rate_reg = mt8192_rate_transform(afe->dev,
            rate, i2s_id);
 snd_pcm_format_t format = params_format(params);
 unsigned int i2s_con = 0;
 int ret = 0;

 dev_dbg(afe->dev, "%s(), id %d, rate %d, format %d\n",
  __func__, i2s_id, rate, format);

 if (i2s_priv)
  i2s_priv->rate = rate;
 else
  dev_warn(afe->dev, "%s(), i2s_priv == NULL", __func__);

 switch (i2s_id) {
 case MT8192_DAI_I2S_0:
  i2s_con = I2S_IN_PAD_IO_MUX << I2SIN_PAD_SEL_SFT;
  i2s_con |= rate_reg << I2S_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_1:
  i2s_con = I2S1_SEL_O28_O29 << I2S2_SEL_O03_O04_SFT;
  i2s_con |= rate_reg << I2S2_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S2_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S2_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON1,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_2:
  i2s_con = 8 << I2S3_UPDATE_WORD_SFT;
  i2s_con |= rate_reg << I2S3_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S3_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S3_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON2,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_3:
  i2s_con = rate_reg << I2S4_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S4_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S4_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON3,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_5:
  i2s_con = rate_reg << I2S5_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S5_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S5_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON4,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_6:
  i2s_con = rate_reg << I2S6_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S6_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S6_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON6,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_7:
  i2s_con = rate_reg << I2S7_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S7_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S7_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON7,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_8:
  i2s_con = rate_reg << I2S8_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S8_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S8_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON8,
       0xffffeffe, i2s_con);
  break;
 case MT8192_DAI_I2S_9:
  i2s_con = rate_reg << I2S9_OUT_MODE_SFT;
  i2s_con |= I2S_FMT_I2S << I2S9_FMT_SFT;
  i2s_con |= get_i2s_wlen(format) << I2S9_WLEN_SFT;
  regmap_update_bits(afe->regmap, AFE_I2S_CON9,
       0xffffeffe, i2s_con);
  break;
 default:
  dev_warn(afe->dev, "%s(), id %d not support\n",
    __func__, i2s_id);
  return -EINVAL;
 }

 /* set share i2s */
 if (i2s_priv && i2s_priv->share_i2s_id >= 0)
  ret = mtk_dai_i2s_config(afe, params, i2s_priv->share_i2s_id);

 return ret;
}

static int mtk_dai_i2s_hw_params(struct snd_pcm_substream *substream,
     struct snd_pcm_hw_params *params,
     struct snd_soc_dai *dai)
{
 struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);

 return mtk_dai_i2s_config(afe, params, dai->id);
}

static int mtk_dai_i2s_set_sysclk(struct snd_soc_dai *dai,
      int clk_id, unsigned int freq, int dir)
{
 struct mtk_base_afe *afe = dev_get_drvdata(dai->dev);
 struct mt8192_afe_private *afe_priv = afe->platform_priv;
 struct mtk_afe_i2s_priv *i2s_priv = afe_priv->dai_priv[dai->id];
 int apll;
 int apll_rate;

 if (!i2s_priv) {
  dev_warn(afe->dev, "%s(), i2s_priv == NULL", __func__);
  return -EINVAL;
 }

 if (dir != SND_SOC_CLOCK_OUT) {
  dev_warn(afe->dev, "%s(), dir != SND_SOC_CLOCK_OUT", __func__);
  return -EINVAL;
 }

 dev_dbg(afe->dev, "%s(), freq %d\n", __func__, freq);

 apll = mt8192_get_apll_by_rate(afe, freq);
 apll_rate = mt8192_get_apll_rate(afe, apll);

 if (freq > apll_rate) {
  dev_warn(afe->dev, "%s(), freq > apll rate", __func__);
  return -EINVAL;
 }

 if (apll_rate % freq != 0) {
  dev_warn(afe->dev, "%s(), APLL can't gen freq Hz", __func__);
  return -EINVAL;
 }

 i2s_priv->mclk_rate = freq;
 i2s_priv->mclk_apll = apll;

 if (i2s_priv->share_i2s_id > 0) {
  struct mtk_afe_i2s_priv *share_i2s_priv;

  share_i2s_priv = afe_priv->dai_priv[i2s_priv->share_i2s_id];
  if (!share_i2s_priv) {
   dev_warn(afe->dev, "%s(), share_i2s_priv = NULL",
     __func__);
   return -EINVAL;
  }

  share_i2s_priv->mclk_rate = i2s_priv->mclk_rate;
  share_i2s_priv->mclk_apll = i2s_priv->mclk_apll;
 }

 return 0;
}

static const struct snd_soc_dai_ops mtk_dai_i2s_ops = {
 .hw_params = mtk_dai_i2s_hw_params,
 .set_sysclk = mtk_dai_i2s_set_sysclk,
};

/* dai driver */
#define MTK_CONNSYS_I2S_RATES (SNDRV_PCM_RATE_44100 | SNDRV_PCM_RATE_48000)

#define MTK_I2S_RATES (SNDRV_PCM_RATE_8000_48000 |\
         SNDRV_PCM_RATE_88200 |\
         SNDRV_PCM_RATE_96000 |\
         SNDRV_PCM_RATE_176400 |\
         SNDRV_PCM_RATE_192000)

#define MTK_I2S_FORMATS (SNDRV_PCM_FMTBIT_S16_LE |\
    SNDRV_PCM_FMTBIT_S24_LE |\
    SNDRV_PCM_FMTBIT_S32_LE)

static struct snd_soc_dai_driver mtk_dai_i2s_driver[] = {
 {
  .name = "CONNSYS_I2S",
  .id = MT8192_DAI_CONNSYS_I2S,
  .capture = {
   .stream_name = "Connsys I2S",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_CONNSYS_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_connsys_i2s_ops,
 },
 {
  .name = "I2S0",
  .id = MT8192_DAI_I2S_0,
  .capture = {
   .stream_name = "I2S0",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S1",
  .id = MT8192_DAI_I2S_1,
  .playback = {
   .stream_name = "I2S1",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S2",
  .id = MT8192_DAI_I2S_2,
  .capture = {
   .stream_name = "I2S2",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S3",
  .id = MT8192_DAI_I2S_3,
  .playback = {
   .stream_name = "I2S3",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S5",
  .id = MT8192_DAI_I2S_5,
  .playback = {
   .stream_name = "I2S5",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S6",
  .id = MT8192_DAI_I2S_6,
  .capture = {
   .stream_name = "I2S6",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S7",
  .id = MT8192_DAI_I2S_7,
  .playback = {
   .stream_name = "I2S7",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S8",
  .id = MT8192_DAI_I2S_8,
  .capture = {
   .stream_name = "I2S8",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 },
 {
  .name = "I2S9",
  .id = MT8192_DAI_I2S_9,
  .playback = {
   .stream_name = "I2S9",
   .channels_min = 1,
   .channels_max = 2,
   .rates = MTK_I2S_RATES,
   .formats = MTK_I2S_FORMATS,
  },
  .ops = &mtk_dai_i2s_ops,
 }
};

/* this enum is merely for mtk_afe_i2s_priv declare */
enum {
 DAI_I2S0 = 0,
 DAI_I2S1,
 DAI_I2S2,
 DAI_I2S3,
 DAI_I2S5,
 DAI_I2S6,
 DAI_I2S7,
 DAI_I2S8,
 DAI_I2S9,
 DAI_I2S_NUM,
};

static const struct mtk_afe_i2s_priv mt8192_i2s_priv[DAI_I2S_NUM] = {
 [DAI_I2S0] = {
  .id = MT8192_DAI_I2S_0,
  .mclk_id = MT8192_I2S0_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S1] = {
  .id = MT8192_DAI_I2S_1,
  .mclk_id = MT8192_I2S1_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S2] = {
  .id = MT8192_DAI_I2S_2,
  .mclk_id = MT8192_I2S2_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S3] = {
  .id = MT8192_DAI_I2S_3,
  .mclk_id = MT8192_I2S3_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S5] = {
  .id = MT8192_DAI_I2S_5,
  .mclk_id = MT8192_I2S5_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S6] = {
  .id = MT8192_DAI_I2S_6,
  .mclk_id = MT8192_I2S6_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S7] = {
  .id = MT8192_DAI_I2S_7,
  .mclk_id = MT8192_I2S7_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S8] = {
  .id = MT8192_DAI_I2S_8,
  .mclk_id = MT8192_I2S8_MCK,
  .share_i2s_id = -1,
 },
 [DAI_I2S9] = {
  .id = MT8192_DAI_I2S_9,
  .mclk_id = MT8192_I2S9_MCK,
  .share_i2s_id = -1,
 },
};

/**
 * mt8192_dai_i2s_set_share() - Set up I2S ports to share a single clock.
 * @afe: Pointer to &struct mtk_base_afe
 * @main_i2s_name: The name of the I2S port that will provide the clock
 * @secondary_i2s_name: The name of the I2S port that will use this clock
 */

int mt8192_dai_i2s_set_share(struct mtk_base_afe *afe, const char *main_i2s_name,
        const char *secondary_i2s_name)
{
 struct mtk_afe_i2s_priv *secondary_i2s_priv;
 int main_i2s_id;

 secondary_i2s_priv = get_i2s_priv_by_name(afe, secondary_i2s_name);
 if (!secondary_i2s_priv)
  return -EINVAL;

 main_i2s_id = get_i2s_id_by_name(afe, main_i2s_name);
 if (main_i2s_id < 0)
  return main_i2s_id;

 secondary_i2s_priv->share_i2s_id = main_i2s_id;

 return 0;
}
EXPORT_SYMBOL_GPL(mt8192_dai_i2s_set_share);

static int mt8192_dai_i2s_set_priv(struct mtk_base_afe *afe)
{
 int i;
 int ret;

 for (i = 0; i < DAI_I2S_NUM; i++) {
  ret = mt8192_dai_set_priv(afe, mt8192_i2s_priv[i].id,
       sizeof(struct mtk_afe_i2s_priv),
       &mt8192_i2s_priv[i]);
  if (ret)
   return ret;
 }

 return 0;
}

int mt8192_dai_i2s_register(struct mtk_base_afe *afe)
{
 struct mtk_base_afe_dai *dai;
 int ret;

 dev_dbg(afe->dev, "%s()\n", __func__);

 dai = devm_kzalloc(afe->dev, sizeof(*dai), GFP_KERNEL);
 if (!dai)
  return -ENOMEM;

 list_add(&dai->list, &afe->sub_dais);

 dai->dai_drivers = mtk_dai_i2s_driver;
 dai->num_dai_drivers = ARRAY_SIZE(mtk_dai_i2s_driver);

 dai->controls = mtk_dai_i2s_controls;
 dai->num_controls = ARRAY_SIZE(mtk_dai_i2s_controls);
 dai->dapm_widgets = mtk_dai_i2s_widgets;
 dai->num_dapm_widgets = ARRAY_SIZE(mtk_dai_i2s_widgets);
 dai->dapm_routes = mtk_dai_i2s_routes;
 dai->num_dapm_routes = ARRAY_SIZE(mtk_dai_i2s_routes);

 /* set all dai i2s private data */
 ret = mt8192_dai_i2s_set_priv(afe);
 if (ret)
  return ret;

 return 0;
}

Messung V0.5 in Prozent
C=98 H=100 G=98

¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.46Angebot  ¤

*Eine klare Vorstellung vom Zielzustand






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

letze Version des Elbe Quellennavigators


Jenseits des Üblichen ....
    

Besucher

Besucher

Statistik
#Sources=1127926
#Domains=2039723