static void mixer_reset (AC97LinkState *s)

{

    uint8_t active[LAST_INDEX];



    dolog ("mixer_reset\n");

    memset (s->mixer_data, 0, sizeof (s->mixer_data));

    memset (active, 0, sizeof (active));

    mixer_store (s, AC97_Reset                   , 0x0000); /* 6940 */

    mixer_store (s, AC97_Master_Volume_Mono_Mute , 0x8000);

    mixer_store (s, AC97_PC_BEEP_Volume_Mute     , 0x0000);



    mixer_store (s, AC97_Phone_Volume_Mute       , 0x8008);

    mixer_store (s, AC97_Mic_Volume_Mute         , 0x8008);

    mixer_store (s, AC97_CD_Volume_Mute          , 0x8808);

    mixer_store (s, AC97_Aux_Volume_Mute         , 0x8808);

    mixer_store (s, AC97_Record_Gain_Mic_Mute    , 0x8000);

    mixer_store (s, AC97_General_Purpose         , 0x0000);

    mixer_store (s, AC97_3D_Control              , 0x0000);

    mixer_store (s, AC97_Powerdown_Ctrl_Stat     , 0x000f);



    /*

     * Sigmatel 9700 (STAC9700)

     */

    mixer_store (s, AC97_Vendor_ID1              , 0x8384);

    mixer_store (s, AC97_Vendor_ID2              , 0x7600); /* 7608 */



    mixer_store (s, AC97_Extended_Audio_ID       , 0x0809);

    mixer_store (s, AC97_Extended_Audio_Ctrl_Stat, 0x0009);

    mixer_store (s, AC97_PCM_Front_DAC_Rate      , 0xbb80);

    mixer_store (s, AC97_PCM_Surround_DAC_Rate   , 0xbb80);

    mixer_store (s, AC97_PCM_LFE_DAC_Rate        , 0xbb80);

    mixer_store (s, AC97_PCM_LR_ADC_Rate         , 0xbb80);

    mixer_store (s, AC97_MIC_ADC_Rate            , 0xbb80);



    record_select (s, 0);

    set_volume (s, AC97_Master_Volume_Mute, 0x8000);

    set_volume (s, AC97_PCM_Out_Volume_Mute, 0x8808);

    set_volume (s, AC97_Line_In_Volume_Mute, 0x8808);



    reset_voices (s, active);

}

static void mixer_reset (AC97LinkState *s)

{

    uint8_t active[LAST_INDEX];



    dolog ("mixer_reset\n");

    memset (s->mixer_data, 0, sizeof (s->mixer_data));

    memset (active, 0, sizeof (active));

    mixer_store (s, AC97_Reset                   , 0x0000); 

    mixer_store (s, AC97_Master_Volume_Mono_Mute , 0x8000);

    mixer_store (s, AC97_PC_BEEP_Volume_Mute     , 0x0000);



    mixer_store (s, AC97_Phone_Volume_Mute       , 0x8008);

    mixer_store (s, AC97_Mic_Volume_Mute         , 0x8008);

    mixer_store (s, AC97_CD_Volume_Mute          , 0x8808);

    mixer_store (s, AC97_Aux_Volume_Mute         , 0x8808);

    mixer_store (s, AC97_Record_Gain_Mic_Mute    , 0x8000);

    mixer_store (s, AC97_General_Purpose         , 0x0000);

    mixer_store (s, AC97_3D_Control              , 0x0000);

    mixer_store (s, AC97_Powerdown_Ctrl_Stat     , 0x000f);



    





    mixer_store (s, AC97_Vendor_ID1              , 0x8384);

    mixer_store (s, AC97_Vendor_ID2              , 0x7600); 



    mixer_store (s, AC97_Extended_Audio_ID       , 0x0809);

    mixer_store (s, AC97_Extended_Audio_Ctrl_Stat, 0x0009);

    mixer_store (s, AC97_PCM_Front_DAC_Rate      , 0xbb80);

    mixer_store (s, AC97_PCM_Surround_DAC_Rate   , 0xbb80);

    mixer_store (s, AC97_PCM_LFE_DAC_Rate        , 0xbb80);

    mixer_store (s, AC97_PCM_LR_ADC_Rate         , 0xbb80);

    mixer_store (s, AC97_MIC_ADC_Rate            , 0xbb80);



    record_select (s, 0);

    set_volume (s, AC97_Master_Volume_Mute, 0x8000);

    set_volume (s, AC97_PCM_Out_Volume_Mute, 0x8808);

    set_volume (s, AC97_Line_In_Volume_Mute, 0x8808);



    reset_voices (s, active);

}

static void FUNC_0 (AC97LinkState *VAR_0)

{

    uint8_t active[LAST_INDEX];



    dolog ("FUNC_0\n");

    memset (VAR_0->mixer_data, 0, sizeof (VAR_0->mixer_data));

    memset (active, 0, sizeof (active));

    mixer_store (VAR_0, AC97_Reset                   , 0x0000); 

    mixer_store (VAR_0, AC97_Master_Volume_Mono_Mute , 0x8000);

    mixer_store (VAR_0, AC97_PC_BEEP_Volume_Mute     , 0x0000);



    mixer_store (VAR_0, AC97_Phone_Volume_Mute       , 0x8008);

    mixer_store (VAR_0, AC97_Mic_Volume_Mute         , 0x8008);

    mixer_store (VAR_0, AC97_CD_Volume_Mute          , 0x8808);

    mixer_store (VAR_0, AC97_Aux_Volume_Mute         , 0x8808);

    mixer_store (VAR_0, AC97_Record_Gain_Mic_Mute    , 0x8000);

    mixer_store (VAR_0, AC97_General_Purpose         , 0x0000);

    mixer_store (VAR_0, AC97_3D_Control              , 0x0000);

    mixer_store (VAR_0, AC97_Powerdown_Ctrl_Stat     , 0x000f);



    





    mixer_store (VAR_0, AC97_Vendor_ID1              , 0x8384);

    mixer_store (VAR_0, AC97_Vendor_ID2              , 0x7600); 



    mixer_store (VAR_0, AC97_Extended_Audio_ID       , 0x0809);

    mixer_store (VAR_0, AC97_Extended_Audio_Ctrl_Stat, 0x0009);

    mixer_store (VAR_0, AC97_PCM_Front_DAC_Rate      , 0xbb80);

    mixer_store (VAR_0, AC97_PCM_Surround_DAC_Rate   , 0xbb80);

    mixer_store (VAR_0, AC97_PCM_LFE_DAC_Rate        , 0xbb80);

    mixer_store (VAR_0, AC97_PCM_LR_ADC_Rate         , 0xbb80);

    mixer_store (VAR_0, AC97_MIC_ADC_Rate            , 0xbb80);



    record_select (VAR_0, 0);

    set_volume (VAR_0, AC97_Master_Volume_Mute, 0x8000);

    set_volume (VAR_0, AC97_PCM_Out_Volume_Mute, 0x8808);

    set_volume (VAR_0, AC97_Line_In_Volume_Mute, 0x8808);



    reset_voices (VAR_0, active);

}

static void FUNC_0 (AC97LinkState *VAR_0)
{ uint8_t active[LAST_INDEX]; dolog ("FUNC_0\n"); memset (VAR_0->mixer_data, 0, sizeof (VAR_0->mixer_data)); memset (active, 0, sizeof (active)); mixer_store (VAR_0, AC97_Reset                   , 0x0000); mixer_store (VAR_0, AC97_Master_Volume_Mono_Mute , 0x8000); mixer_store (VAR_0, AC97_PC_BEEP_Volume_Mute     , 0x0000); mixer_store (VAR_0, AC97_Phone_Volume_Mute       , 0x8008); mixer_store (VAR_0, AC97_Mic_Volume_Mute         , 0x8008); mixer_store (VAR_0, AC97_CD_Volume_Mute          , 0x8808); mixer_store (VAR_0, AC97_Aux_Volume_Mute         , 0x8808); mixer_store (VAR_0, AC97_Record_Gain_Mic_Mute    , 0x8000); mixer_store (VAR_0, AC97_General_Purpose         , 0x0000); mixer_store (VAR_0, AC97_3D_Control              , 0x0000); mixer_store (VAR_0, AC97_Powerdown_Ctrl_Stat     , 0x000f); mixer_store (VAR_0, AC97_Vendor_ID1              , 0x8384); mixer_store (VAR_0, AC97_Vendor_ID2              , 0x7600); mixer_store (VAR_0, AC97_Extended_Audio_ID       , 0x0809); mixer_store (VAR_0, AC97_Extended_Audio_Ctrl_Stat, 0x0009); mixer_store (VAR_0, AC97_PCM_Front_DAC_Rate      , 0xbb80); mixer_store (VAR_0, AC97_PCM_Surround_DAC_Rate   , 0xbb80); mixer_store (VAR_0, AC97_PCM_LFE_DAC_Rate        , 0xbb80); mixer_store (VAR_0, AC97_PCM_LR_ADC_Rate         , 0xbb80); mixer_store (VAR_0, AC97_MIC_ADC_Rate            , 0xbb80); record_select (VAR_0, 0); set_volume (VAR_0, AC97_Master_Volume_Mute, 0x8000); set_volume (VAR_0, AC97_PCM_Out_Volume_Mute, 0x8808); set_volume (VAR_0, AC97_Line_In_Volume_Mute, 0x8808); reset_voices (VAR_0, active); }