Re: [PATCH] ALSA: oxygen: Xonar DG(X): modify DAC routing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greg KH wrote:
> On Wed, Mar 05, 2014 at 10:16:17PM +0100, Clemens Ladisch wrote:
>> commit 1f91ecc14deea9461aca93273d78871ec4d98fcd upstream.
>>
>> When selecting the audio output destinations (headphones, FP headphones,
>> multichannel output), unnecessary I2S channels are digitally muted to
>> avoid invalid signal levels on the other outputs.
>>
>> Signed-off-by: Roman Volkov <v1ron@xxxxxxx>
>> Signed-off-by: Clemens Ladisch <clemens@xxxxxxxxxx>
>> ---
>>  sound/pci/oxygen/xonar_dg.c |   10 ++++++++++
>>  1 file changed, 10 insertions(+)
>>
>> diff --git a/sound/pci/oxygen/xonar_dg.c b/sound/pci/oxygen/xonar_dg.c
>> index 77acd79..fec8f02 100644
>> --- a/sound/pci/oxygen/xonar_dg.c
>> +++ b/sound/pci/oxygen/xonar_dg.c
>> @@ -294,6 +294,16 @@ static int output_switch_put(struct snd_kcontrol *ctl,
>>  		oxygen_write16_masked(chip, OXYGEN_GPIO_DATA,
>>  				      data->output_sel == 1 ? GPIO_HP_REAR : 0,
>>  				      GPIO_HP_REAR);
>> +		oxygen_write8_masked(chip, OXYGEN_PLAY_ROUTING,
>> +				     data->output_sel == 0 ?
>> +				     OXYGEN_PLAY_MUTE01 :
>> +				     OXYGEN_PLAY_MUTE23 |
>> +				     OXYGEN_PLAY_MUTE45 |
>> +				     OXYGEN_PLAY_MUTE67,
>> +				     OXYGEN_PLAY_MUTE01 |
>> +				     OXYGEN_PLAY_MUTE23 |
>> +				     OXYGEN_PLAY_MUTE45 |
>> +				     OXYGEN_PLAY_MUTE67);
>>  	}
>>  	mutex_unlock(&chip->mutex);
>>  	return changed;
>
> This looks _very_ different from the original commit in Linus's tree,
> why the large variation?

The upstream driver got reorganized; in earlier kernels, the DACx_SOURCE
setting changes are not applicable, and the PLAY_MUTE settings must be
moved to output_switch_put() because adjust_dg_dac_routing() would not
be called when output_sel changes.


Regards,
Clemens
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]