• Clemens Ladisch's avatar
    sound: oxygen: work around MCE when changing volume · f1bc07af
    Clemens Ladisch authored
    When the volume is changed continuously (e.g., when the user drags a
    volume slider with the mouse), the driver does lots of I2C writes.
    Apparently, the sound chip can get confused when we poll the I2C status
    register too much, and fails to complete a read from it.  On the PCI-E
    models, the PCI-E/PCI bridge gets upset by this and generates a machine
    check exception.
    
    To avoid this, this patch replaces the polling with an unconditional
    wait that is guaranteed to be long enough.
    Signed-off-by: default avatarClemens Ladisch <clemens@ladisch.de>
    Tested-by: Johann Messner <johann.messner at jku.at>
    Cc: <stable@kernel.org>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    f1bc07af
oxygen_io.c 7.53 KB