diff options
author | Clemens Ladisch <clemens@ladisch.de> | 2011-01-10 16:01:17 +0100 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2011-01-10 16:46:00 +0100 |
commit | 5ea310ff8d651246cf001ebc894d2f294123328a (patch) | |
tree | d4ca002f416478c6dda477a59c9fbb94fe3059a0 /sound/pci/oxygen/oxygen_io.c | |
parent | ALSA: oxygen: remove oxygen_model::private_data field (diff) | |
download | linux-5ea310ff8d651246cf001ebc894d2f294123328a.tar.xz linux-5ea310ff8d651246cf001ebc894d2f294123328a.zip |
ALSA: oxygen: fix SPI clocks slower than 6.25 MHz
Fix wrong register bits for SPI clock cycle times longer than 160 ns,
and adjust the polling loop timeout for these speeds.
Signed-off-by: Clemens Ladisch <clemens@ladisch.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/oxygen/oxygen_io.c')
-rw-r--r-- | sound/pci/oxygen/oxygen_io.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/oxygen/oxygen_io.c b/sound/pci/oxygen/oxygen_io.c index 09b2b2a36df5..f5164b1e1c80 100644 --- a/sound/pci/oxygen/oxygen_io.c +++ b/sound/pci/oxygen/oxygen_io.c @@ -197,11 +197,11 @@ void oxygen_write_spi(struct oxygen *chip, u8 control, unsigned int data) { unsigned int count; - /* should not need more than 7.68 us (24 * 320 ns) */ + /* should not need more than 30.72 us (24 * 1.28 us) */ count = 10; while ((oxygen_read8(chip, OXYGEN_SPI_CONTROL) & OXYGEN_SPI_BUSY) && count > 0) { - udelay(1); + udelay(4); --count; } |