Skip to content

Commit

Permalink
[ALSA] virtuoso: add xonar_enable_output()
Browse files Browse the repository at this point in the history
Move the setting of the output enable GPIO bit to a separate function.

Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
  • Loading branch information
Clemens Ladisch authored and Jaroslav Kysela committed May 19, 2008
1 parent 75146fc commit 92215f3
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions sound/pci/oxygen/virtuoso.c
Original file line number Diff line number Diff line change
Expand Up @@ -162,6 +162,14 @@ static void cs4362a_write(struct oxygen *chip, u8 reg, u8 value)
oxygen_write_i2c(chip, I2C_DEVICE_CS4362A, reg, value);
}

static void xonar_enable_output(struct oxygen *chip)
{
struct xonar_data *data = chip->model_data;

msleep(data->anti_pop_delay);
oxygen_set_bits16(chip, OXYGEN_GPIO_DATA, data->output_enable_bit);
}

static void xonar_common_init(struct oxygen *chip)
{
struct xonar_data *data = chip->model_data;
Expand All @@ -173,13 +181,12 @@ static void xonar_common_init(struct oxygen *chip)
data->has_power = !!(oxygen_read8(chip, data->ext_power_reg)
& data->ext_power_bit);
}
oxygen_set_bits16(chip, OXYGEN_GPIO_CONTROL, GPIO_CS53x1_M_MASK);
oxygen_set_bits16(chip, OXYGEN_GPIO_CONTROL,
GPIO_CS53x1_M_MASK | data->output_enable_bit);
oxygen_write16_masked(chip, OXYGEN_GPIO_DATA,
GPIO_CS53x1_M_SINGLE, GPIO_CS53x1_M_MASK);
oxygen_ac97_set_bits(chip, 0, CM9780_JACK, CM9780_FMIC2MIC);
msleep(data->anti_pop_delay);
oxygen_set_bits16(chip, OXYGEN_GPIO_CONTROL, data->output_enable_bit);
oxygen_set_bits16(chip, OXYGEN_GPIO_DATA, data->output_enable_bit);
xonar_enable_output(chip);
}

static void update_pcm1796_volume(struct oxygen *chip)
Expand Down

0 comments on commit 92215f3

Please sign in to comment.