android_kernel_xiaomi_sm8350/sound/pci/oxygen
Clemens Ladisch 30459d7b18 sound: oxygen: handle cards with broken EEPROM
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 <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2009-02-19 10:22:25 +01:00
..
ak4396.h
cm9780.h
cs4362a.h [ALSA] virtuoso: add Xonar DX support 2008-04-24 12:00:32 +02:00
cs4398.h [ALSA] virtuoso: add Xonar DX support 2008-04-24 12:00:32 +02:00
hifier.c sound: oxygen: handle cards with broken EEPROM 2009-02-19 10:22:25 +01:00
Makefile
oxygen_io.c sound: oxygen: handle cards with broken EEPROM 2009-02-19 10:22:25 +01:00
oxygen_lib.c sound: oxygen: handle cards with broken EEPROM 2009-02-19 10:22:25 +01:00
oxygen_mixer.c ALSA: oxygen: rename pcm_dev_cfg 2008-09-22 09:02:08 +02:00
oxygen_pcm.c ALSA: oxygen: rename first PCM device 2008-09-22 09:07:53 +02:00
oxygen_regs.h
oxygen.c sound: oxygen: handle cards with broken EEPROM 2009-02-19 10:22:25 +01:00
oxygen.h sound: oxygen: handle cards with broken EEPROM 2009-02-19 10:22:25 +01:00
pcm1796.h [ALSA] virtuoso: move PCM1796 symbols to a header file 2008-04-24 12:00:27 +02:00
virtuoso.c sound: oxygen: handle cards with broken EEPROM 2009-02-19 10:22:25 +01:00
wm8785.h [ALSA] oxygen: move WM8785 symbols to a header file 2008-04-24 12:00:27 +02:00