Skip to content

Commit

Permalink
[ALSA] Workaround for invalid signature read of CS8427
Browse files Browse the repository at this point in the history
Reading the signature of CS8427 over SPI/I2C fails on some devices
by mysterious reason.  In most cases, however, it succeeds at the
sequential read.  So, let's give a second chance to check the signature
again.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@suse.cz>
  • Loading branch information
tiwai authored and perexg committed Oct 16, 2007
1 parent ac8842a commit 4eb4550
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions sound/i2c/cs8427.c
Original file line number Diff line number Diff line change
Expand Up @@ -228,6 +228,12 @@ int snd_cs8427_create(struct snd_i2c_bus *bus,

snd_i2c_lock(bus);
err = snd_cs8427_reg_read(device, CS8427_REG_ID_AND_VER);
if (err != CS8427_VER8427A) {
/* give second chance */
snd_printk(KERN_WARNING "invalid CS8427 signature 0x%x: "
"let me try again...\n", err);
err = snd_cs8427_reg_read(device, CS8427_REG_ID_AND_VER);
}
if (err != CS8427_VER8427A) {
snd_i2c_unlock(bus);
snd_printk(KERN_ERR "unable to find CS8427 signature "
Expand Down

0 comments on commit 4eb4550

Please sign in to comment.