Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 92214
b: refs/heads/master
c: 193e813
h: refs/heads/master
v: v3
  • Loading branch information
Clemens Ladisch authored and Takashi Iwai committed Apr 24, 2008
1 parent be47580 commit f0dc4e4
Show file tree
Hide file tree
Showing 7 changed files with 18 additions and 29 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 0c0e6daf14183fb1cd0dea054ecf81165abbdc83
refs/heads/master: 193e813814775b1b1574515fc6f11e61b29a54f7
2 changes: 2 additions & 0 deletions trunk/sound/pci/oxygen/hifier.c
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,8 @@ static const struct oxygen_model model_hifier = {
PLAYBACK_1_TO_SPDIF |
CAPTURE_0_FROM_I2S_1,
.dac_channels = 2,
.dac_volume_min = 0,
.dac_volume_max = 255,
.function_flags = OXYGEN_FUNCTION_SPI,
.dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
.adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
Expand Down
4 changes: 4 additions & 0 deletions trunk/sound/pci/oxygen/oxygen.c
Original file line number Diff line number Diff line change
Expand Up @@ -278,6 +278,8 @@ static const struct oxygen_model model_generic = {
CAPTURE_1_FROM_SPDIF |
CAPTURE_2_FROM_AC97_1,
.dac_channels = 8,
.dac_volume_min = 0,
.dac_volume_max = 255,
.function_flags = OXYGEN_FUNCTION_SPI |
OXYGEN_FUNCTION_ENABLE_SPI_4_5,
.dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
Expand All @@ -303,6 +305,8 @@ static const struct oxygen_model model_meridian = {
CAPTURE_1_FROM_SPDIF |
CAPTURE_2_FROM_AC97_1,
.dac_channels = 8,
.dac_volume_min = 0,
.dac_volume_max = 255,
.misc_flags = OXYGEN_MISC_MIDI,
.function_flags = OXYGEN_FUNCTION_SPI |
OXYGEN_FUNCTION_ENABLE_SPI_4_5,
Expand Down
2 changes: 2 additions & 0 deletions trunk/sound/pci/oxygen/oxygen.h
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,8 @@ struct oxygen_model {
size_t model_data_size;
unsigned int pcm_dev_cfg;
u8 dac_channels;
u8 dac_volume_min;
u8 dac_volume_max;
u8 misc_flags;
u8 function_flags;
u16 dac_i2s_format;
Expand Down
2 changes: 1 addition & 1 deletion trunk/sound/pci/oxygen/oxygen_lib.c
Original file line number Diff line number Diff line change
Expand Up @@ -221,7 +221,7 @@ static void oxygen_init(struct oxygen *chip)

chip->dac_routing = 1;
for (i = 0; i < 8; ++i)
chip->dac_volume[i] = 0xff;
chip->dac_volume[i] = chip->model->dac_volume_max;
chip->spdif_playback_enable = 1;
chip->spdif_bits = OXYGEN_SPDIF_C | OXYGEN_SPDIF_ORIGINAL |
(IEC958_AES1_CON_PCM_CODER << OXYGEN_SPDIF_CATEGORY_SHIFT);
Expand Down
4 changes: 2 additions & 2 deletions trunk/sound/pci/oxygen/oxygen_mixer.c
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ static int dac_volume_info(struct snd_kcontrol *ctl,

info->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
info->count = chip->model->dac_channels;
info->value.integer.min = 0;
info->value.integer.max = 0xff;
info->value.integer.min = chip->model->dac_volume_min;
info->value.integer.max = chip->model->dac_volume_max;
return 0;
}

Expand Down
31 changes: 6 additions & 25 deletions trunk/sound/pci/oxygen/virtuoso.c
Original file line number Diff line number Diff line change
Expand Up @@ -219,10 +219,7 @@ static void xonar_d2x_init(struct oxygen *chip)
static void xonar_dx_init(struct oxygen *chip)
{
struct xonar_data *data = chip->model_data;
unsigned int i;

for (i = 0; i < 8; ++i)
chip->dac_volume[i] = 127;
data->anti_pop_delay = 800;
data->output_enable_bit = GPIO_DX_OUTPUT_ENABLE;
data->ext_power_reg = OXYGEN_GPI_DATA;
Expand Down Expand Up @@ -414,26 +411,6 @@ static void xonar_gpio_changed(struct oxygen *chip)
}
}

static int pcm1796_volume_info(struct snd_kcontrol *ctl,
struct snd_ctl_elem_info *info)
{
info->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
info->count = 8;
info->value.integer.min = 0x0f;
info->value.integer.max = 0xff;
return 0;
}

static int cs4362a_volume_info(struct snd_kcontrol *ctl,
struct snd_ctl_elem_info *info)
{
info->type = SNDRV_CTL_ELEM_TYPE_INTEGER;
info->count = 8;
info->value.integer.min = 0;
info->value.integer.max = 127;
return 0;
}

static int alt_switch_get(struct snd_kcontrol *ctl,
struct snd_ctl_elem_value *value)
{
Expand Down Expand Up @@ -526,7 +503,6 @@ static int xonar_d2_control_filter(struct snd_kcontrol_new *template)
{
if (!strcmp(template->name, "Master Playback Volume")) {
template->access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ;
template->info = pcm1796_volume_info;
template->tlv.p = pcm1796_db_scale;
} else if (!strncmp(template->name, "CD Capture ", 11)) {
/* CD in is actually connected to the video in pin */
Expand All @@ -539,7 +515,6 @@ static int xonar_dx_control_filter(struct snd_kcontrol_new *template)
{
if (!strcmp(template->name, "Master Playback Volume")) {
template->access |= SNDRV_CTL_ELEM_ACCESS_TLV_READ;
template->info = cs4362a_volume_info;
template->tlv.p = cs4362a_db_scale;
} else if (!strncmp(template->name, "CD Capture ", 11)) {
return 1; /* no CD input */
Expand Down Expand Up @@ -577,6 +552,8 @@ static const struct oxygen_model xonar_models[] = {
CAPTURE_0_FROM_I2S_2 |
CAPTURE_1_FROM_SPDIF,
.dac_channels = 8,
.dac_volume_min = 0x0f,
.dac_volume_max = 0xff,
.misc_flags = OXYGEN_MISC_MIDI,
.function_flags = OXYGEN_FUNCTION_SPI |
OXYGEN_FUNCTION_ENABLE_SPI_4_5,
Expand All @@ -603,6 +580,8 @@ static const struct oxygen_model xonar_models[] = {
CAPTURE_0_FROM_I2S_2 |
CAPTURE_1_FROM_SPDIF,
.dac_channels = 8,
.dac_volume_min = 0x0f,
.dac_volume_max = 0xff,
.misc_flags = OXYGEN_MISC_MIDI,
.function_flags = OXYGEN_FUNCTION_SPI |
OXYGEN_FUNCTION_ENABLE_SPI_4_5,
Expand All @@ -629,6 +608,8 @@ static const struct oxygen_model xonar_models[] = {
PLAYBACK_1_TO_SPDIF |
CAPTURE_0_FROM_I2S_2,
.dac_channels = 8,
.dac_volume_min = 0,
.dac_volume_max = 127,
.function_flags = OXYGEN_FUNCTION_2WIRE,
.dac_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
.adc_i2s_format = OXYGEN_I2S_FORMAT_LJUST,
Expand Down

0 comments on commit f0dc4e4

Please sign in to comment.