コード例 #1
0
static void xonar_d1_init(struct oxygen *chip)
{
    struct xonar_data *data = chip->model_data;

    data->anti_pop_delay = 800;
    data->output_enable_bit = GPIO_DX_OUTPUT_ENABLE;
    data->cs4398_fm = CS4398_FM_SINGLE | CS4398_DEM_NONE | CS4398_DIF_LJUST;
    data->cs4362a_fm = CS4362A_FM_SINGLE |
                       CS4362A_ATAPI_B_R | CS4362A_ATAPI_A_L;
    if (data->model == MODEL_DX) {
        data->ext_power_reg = OXYGEN_GPI_DATA;
        data->ext_power_int_reg = OXYGEN_GPI_INTERRUPT_MASK;
        data->ext_power_bit = GPI_DX_EXT_POWER;
    }

    oxygen_write16(chip, OXYGEN_2WIRE_BUS_STATUS,
                   OXYGEN_2WIRE_LENGTH_8 |
                   OXYGEN_2WIRE_INTERRUPT_MASK |
                   OXYGEN_2WIRE_SPEED_FAST);

    cs43xx_init(chip);

    oxygen_set_bits16(chip, OXYGEN_GPIO_CONTROL,
                      GPIO_DX_FRONT_PANEL | GPIO_DX_INPUT_ROUTE);
    oxygen_clear_bits16(chip, OXYGEN_GPIO_DATA,
                        GPIO_DX_FRONT_PANEL | GPIO_DX_INPUT_ROUTE);

    xonar_common_init(chip);

    snd_component_add(chip->card, "CS4398");
    snd_component_add(chip->card, "CS4362A");
    snd_component_add(chip->card, "CS5361");
}
コード例 #2
0
static void xonar_d1_resume(struct oxygen *chip)
{
	oxygen_set_bits8(chip, OXYGEN_FUNCTION, OXYGEN_FUNCTION_RESET_CODEC);
	msleep(1);
	cs43xx_init(chip);
	xonar_enable_output(chip);
}
コード例 #3
0
static void xonar_d1_resume(struct oxygen *chip)
{
    cs43xx_init(chip);
    xonar_enable_output(chip);
}