diff options
-rw-r--r-- | sound/pci/oxygen/hifier.c | 4 | ||||
-rw-r--r-- | sound/pci/oxygen/oxygen.c | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/sound/pci/oxygen/hifier.c b/sound/pci/oxygen/hifier.c index 7442460583dd..dad393ae040a 100644 --- a/sound/pci/oxygen/hifier.c +++ b/sound/pci/oxygen/hifier.c | |||
@@ -17,6 +17,7 @@ | |||
17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 17 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
18 | */ | 18 | */ |
19 | 19 | ||
20 | #include <linux/delay.h> | ||
20 | #include <linux/pci.h> | 21 | #include <linux/pci.h> |
21 | #include <sound/control.h> | 22 | #include <sound/control.h> |
22 | #include <sound/core.h> | 23 | #include <sound/core.h> |
@@ -107,6 +108,9 @@ static void set_ak4396_params(struct oxygen *chip, | |||
107 | else | 108 | else |
108 | value |= AK4396_DFS_QUAD; | 109 | value |= AK4396_DFS_QUAD; |
109 | data->ak4396_ctl2 = value; | 110 | data->ak4396_ctl2 = value; |
111 | |||
112 | msleep(1); /* wait for the new MCLK to become stable */ | ||
113 | |||
110 | ak4396_write(chip, AK4396_CONTROL_1, AK4396_DIF_24_MSB); | 114 | ak4396_write(chip, AK4396_CONTROL_1, AK4396_DIF_24_MSB); |
111 | ak4396_write(chip, AK4396_CONTROL_2, value); | 115 | ak4396_write(chip, AK4396_CONTROL_2, value); |
112 | ak4396_write(chip, AK4396_CONTROL_1, AK4396_DIF_24_MSB | AK4396_RSTN); | 116 | ak4396_write(chip, AK4396_CONTROL_1, AK4396_DIF_24_MSB | AK4396_RSTN); |
diff --git a/sound/pci/oxygen/oxygen.c b/sound/pci/oxygen/oxygen.c index 7c8ae31eb468..c5829d30ef86 100644 --- a/sound/pci/oxygen/oxygen.c +++ b/sound/pci/oxygen/oxygen.c | |||
@@ -28,6 +28,7 @@ | |||
28 | * GPIO 1 -> DFS1 of AK5385 | 28 | * GPIO 1 -> DFS1 of AK5385 |
29 | */ | 29 | */ |
30 | 30 | ||
31 | #include <linux/delay.h> | ||
31 | #include <linux/mutex.h> | 32 | #include <linux/mutex.h> |
32 | #include <linux/pci.h> | 33 | #include <linux/pci.h> |
33 | #include <sound/ac97_codec.h> | 34 | #include <sound/ac97_codec.h> |
@@ -213,6 +214,9 @@ static void set_ak4396_params(struct oxygen *chip, | |||
213 | else | 214 | else |
214 | value |= AK4396_DFS_QUAD; | 215 | value |= AK4396_DFS_QUAD; |
215 | data->ak4396_ctl2 = value; | 216 | data->ak4396_ctl2 = value; |
217 | |||
218 | msleep(1); /* wait for the new MCLK to become stable */ | ||
219 | |||
216 | for (i = 0; i < 4; ++i) { | 220 | for (i = 0; i < 4; ++i) { |
217 | ak4396_write(chip, i, | 221 | ak4396_write(chip, i, |
218 | AK4396_CONTROL_1, AK4396_DIF_24_MSB); | 222 | AK4396_CONTROL_1, AK4396_DIF_24_MSB); |