01 Nov, 2011

1 commit


10 Jan, 2011

1 commit


07 Sep, 2009

1 commit

  • 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: Clemens Ladisch
    Tested-by: Johann Messner
    Cc:
    Signed-off-by: Takashi Iwai

    Clemens Ladisch
     

19 Feb, 2009

2 commits

  • If the EEPROM was partially overwritten (which seems to happen before the OS is
    booted), restore its entire contents by deducing it from the remaining
    information.

    This does not have any effect on the Linux driver, which works even with
    incomplete information in the EEPROM, but it makes other drivers work again.

    Signed-off-by: Clemens Ladisch
    Signed-off-by: Takashi Iwai

    Clemens Ladisch
     
  • Under as yet unknown circumstances, the first word of the sound card's
    EEPROM gets overwritten. When this has happened, we cannot rely on the
    subsystem IDs that the kernel reads from the PCI configuration
    registers. Instead, we read the IDs directly from the EEPROM and do the
    ID matching manually.

    Because the model-specific driver cannot determine the model before
    calling oxygen_pci_probe(), that function now gets a get_model()
    callback as parameter. The customizing of the model structure, which
    was formerly done by the probe() callback, also has moved into
    get_model().

    Signed-off-by: Clemens Ladisch
    Signed-off-by: Takashi Iwai

    Clemens Ladisch
     

24 Sep, 2008

1 commit


22 Sep, 2008

1 commit


19 May, 2008

1 commit


24 Apr, 2008

1 commit


01 Feb, 2008

5 commits