diff options
Diffstat (limited to 'sound/pci/au88x0')
-rw-r--r-- | sound/pci/au88x0/au88x0.h | 6 | ||||
-rw-r--r-- | sound/pci/au88x0/au88x0_a3d.c | 4 | ||||
-rw-r--r-- | sound/pci/au88x0/au88x0_core.c | 4 | ||||
-rw-r--r-- | sound/pci/au88x0/au88x0_eq.c | 3 | ||||
-rw-r--r-- | sound/pci/au88x0/au88x0_pcm.c | 9 |
5 files changed, 15 insertions, 11 deletions
diff --git a/sound/pci/au88x0/au88x0.h b/sound/pci/au88x0/au88x0.h index cf46bba563c..02f6e08f759 100644 --- a/sound/pci/au88x0/au88x0.h +++ b/sound/pci/au88x0/au88x0.h | |||
@@ -104,7 +104,7 @@ | |||
104 | #define MIX_PLAYB(x) (vortex->mixplayb[x]) | 104 | #define MIX_PLAYB(x) (vortex->mixplayb[x]) |
105 | #define MIX_SPDIF(x) (vortex->mixspdif[x]) | 105 | #define MIX_SPDIF(x) (vortex->mixspdif[x]) |
106 | 106 | ||
107 | #define NR_WTPB 0x20 /* WT channels per eahc bank. */ | 107 | #define NR_WTPB 0x20 /* WT channels per each bank. */ |
108 | 108 | ||
109 | /* Structs */ | 109 | /* Structs */ |
110 | typedef struct { | 110 | typedef struct { |
@@ -211,7 +211,7 @@ static void vortex_adbdma_startfifo(vortex_t * vortex, int adbdma); | |||
211 | //static void vortex_adbdma_stopfifo(vortex_t *vortex, int adbdma); | 211 | //static void vortex_adbdma_stopfifo(vortex_t *vortex, int adbdma); |
212 | static void vortex_adbdma_pausefifo(vortex_t * vortex, int adbdma); | 212 | static void vortex_adbdma_pausefifo(vortex_t * vortex, int adbdma); |
213 | static void vortex_adbdma_resumefifo(vortex_t * vortex, int adbdma); | 213 | static void vortex_adbdma_resumefifo(vortex_t * vortex, int adbdma); |
214 | static int inline vortex_adbdma_getlinearpos(vortex_t * vortex, int adbdma); | 214 | static inline int vortex_adbdma_getlinearpos(vortex_t * vortex, int adbdma); |
215 | static void vortex_adbdma_resetup(vortex_t *vortex, int adbdma); | 215 | static void vortex_adbdma_resetup(vortex_t *vortex, int adbdma); |
216 | 216 | ||
217 | #ifndef CHIP_AU8810 | 217 | #ifndef CHIP_AU8810 |
@@ -219,7 +219,7 @@ static void vortex_wtdma_startfifo(vortex_t * vortex, int wtdma); | |||
219 | static void vortex_wtdma_stopfifo(vortex_t * vortex, int wtdma); | 219 | static void vortex_wtdma_stopfifo(vortex_t * vortex, int wtdma); |
220 | static void vortex_wtdma_pausefifo(vortex_t * vortex, int wtdma); | 220 | static void vortex_wtdma_pausefifo(vortex_t * vortex, int wtdma); |
221 | static void vortex_wtdma_resumefifo(vortex_t * vortex, int wtdma); | 221 | static void vortex_wtdma_resumefifo(vortex_t * vortex, int wtdma); |
222 | static int inline vortex_wtdma_getlinearpos(vortex_t * vortex, int wtdma); | 222 | static inline int vortex_wtdma_getlinearpos(vortex_t * vortex, int wtdma); |
223 | #endif | 223 | #endif |
224 | 224 | ||
225 | /* global stuff. */ | 225 | /* global stuff. */ |
diff --git a/sound/pci/au88x0/au88x0_a3d.c b/sound/pci/au88x0/au88x0_a3d.c index f4aa8ff6f5f..9ae8b3b1765 100644 --- a/sound/pci/au88x0/au88x0_a3d.c +++ b/sound/pci/au88x0/au88x0_a3d.c | |||
@@ -53,7 +53,7 @@ a3dsrc_GetTimeConsts(a3dsrc_t * a, short *HrtfTrack, short *ItdTrack, | |||
53 | } | 53 | } |
54 | 54 | ||
55 | #endif | 55 | #endif |
56 | /* Atmospheric absorbtion. */ | 56 | /* Atmospheric absorption. */ |
57 | 57 | ||
58 | static void | 58 | static void |
59 | a3dsrc_SetAtmosTarget(a3dsrc_t * a, short aa, short b, short c, short d, | 59 | a3dsrc_SetAtmosTarget(a3dsrc_t * a, short aa, short b, short c, short d, |
@@ -835,7 +835,7 @@ snd_vortex_a3d_filter_put(struct snd_kcontrol *kcontrol, | |||
835 | params[i] = ucontrol->value.integer.value[i]; | 835 | params[i] = ucontrol->value.integer.value[i]; |
836 | /* Translate generic filter params to a3d filter params. */ | 836 | /* Translate generic filter params to a3d filter params. */ |
837 | vortex_a3d_translate_filter(a->filter, params); | 837 | vortex_a3d_translate_filter(a->filter, params); |
838 | /* Atmospheric absorbtion and filtering. */ | 838 | /* Atmospheric absorption and filtering. */ |
839 | a3dsrc_SetAtmosTarget(a, a->filter[0], | 839 | a3dsrc_SetAtmosTarget(a, a->filter[0], |
840 | a->filter[1], a->filter[2], | 840 | a->filter[1], a->filter[2], |
841 | a->filter[3], a->filter[4]); | 841 | a->filter[3], a->filter[4]); |
diff --git a/sound/pci/au88x0/au88x0_core.c b/sound/pci/au88x0/au88x0_core.c index 16c0bdfbb16..489150380ea 100644 --- a/sound/pci/au88x0/au88x0_core.c +++ b/sound/pci/au88x0/au88x0_core.c | |||
@@ -1249,7 +1249,7 @@ static void vortex_adbdma_resetup(vortex_t *vortex, int adbdma) { | |||
1249 | } | 1249 | } |
1250 | } | 1250 | } |
1251 | 1251 | ||
1252 | static int inline vortex_adbdma_getlinearpos(vortex_t * vortex, int adbdma) | 1252 | static inline int vortex_adbdma_getlinearpos(vortex_t * vortex, int adbdma) |
1253 | { | 1253 | { |
1254 | stream_t *dma = &vortex->dma_adb[adbdma]; | 1254 | stream_t *dma = &vortex->dma_adb[adbdma]; |
1255 | int temp, page, delta; | 1255 | int temp, page, delta; |
@@ -1506,7 +1506,7 @@ static int vortex_wtdma_getcursubuffer(vortex_t * vortex, int wtdma) | |||
1506 | POS_SHIFT) & POS_MASK); | 1506 | POS_SHIFT) & POS_MASK); |
1507 | } | 1507 | } |
1508 | #endif | 1508 | #endif |
1509 | static int inline vortex_wtdma_getlinearpos(vortex_t * vortex, int wtdma) | 1509 | static inline int vortex_wtdma_getlinearpos(vortex_t * vortex, int wtdma) |
1510 | { | 1510 | { |
1511 | stream_t *dma = &vortex->dma_wt[wtdma]; | 1511 | stream_t *dma = &vortex->dma_wt[wtdma]; |
1512 | int temp; | 1512 | int temp; |
diff --git a/sound/pci/au88x0/au88x0_eq.c b/sound/pci/au88x0/au88x0_eq.c index 38602b85874..278ed8189fc 100644 --- a/sound/pci/au88x0/au88x0_eq.c +++ b/sound/pci/au88x0/au88x0_eq.c | |||
@@ -896,7 +896,8 @@ static int __devinit vortex_eq_init(vortex_t * vortex) | |||
896 | if ((kcontrol = | 896 | if ((kcontrol = |
897 | snd_ctl_new1(&vortex_eq_kcontrol, vortex)) == NULL) | 897 | snd_ctl_new1(&vortex_eq_kcontrol, vortex)) == NULL) |
898 | return -ENOMEM; | 898 | return -ENOMEM; |
899 | strcpy(kcontrol->id.name, EqBandLabels[i]); | 899 | snprintf(kcontrol->id.name, sizeof(kcontrol->id.name), |
900 | "%s Playback Volume", EqBandLabels[i]); | ||
900 | kcontrol->private_value = i; | 901 | kcontrol->private_value = i; |
901 | if ((err = snd_ctl_add(vortex->card, kcontrol)) < 0) | 902 | if ((err = snd_ctl_add(vortex->card, kcontrol)) < 0) |
902 | return err; | 903 | return err; |
diff --git a/sound/pci/au88x0/au88x0_pcm.c b/sound/pci/au88x0/au88x0_pcm.c index 5439d662d10..62e959120c4 100644 --- a/sound/pci/au88x0/au88x0_pcm.c +++ b/sound/pci/au88x0/au88x0_pcm.c | |||
@@ -44,10 +44,10 @@ static struct snd_pcm_hardware snd_vortex_playback_hw_adb = { | |||
44 | .channels_min = 1, | 44 | .channels_min = 1, |
45 | .channels_max = 2, | 45 | .channels_max = 2, |
46 | .buffer_bytes_max = 0x10000, | 46 | .buffer_bytes_max = 0x10000, |
47 | .period_bytes_min = 0x1, | 47 | .period_bytes_min = 0x20, |
48 | .period_bytes_max = 0x1000, | 48 | .period_bytes_max = 0x1000, |
49 | .periods_min = 2, | 49 | .periods_min = 2, |
50 | .periods_max = 32, | 50 | .periods_max = 1024, |
51 | }; | 51 | }; |
52 | 52 | ||
53 | #ifndef CHIP_AU8820 | 53 | #ifndef CHIP_AU8820 |
@@ -140,6 +140,9 @@ static int snd_vortex_pcm_open(struct snd_pcm_substream *substream) | |||
140 | SNDRV_PCM_HW_PARAM_PERIOD_BYTES)) < 0) | 140 | SNDRV_PCM_HW_PARAM_PERIOD_BYTES)) < 0) |
141 | return err; | 141 | return err; |
142 | 142 | ||
143 | snd_pcm_hw_constraint_step(runtime, 0, | ||
144 | SNDRV_PCM_HW_PARAM_BUFFER_BYTES, 64); | ||
145 | |||
143 | if (VORTEX_PCM_TYPE(substream->pcm) != VORTEX_PCM_WT) { | 146 | if (VORTEX_PCM_TYPE(substream->pcm) != VORTEX_PCM_WT) { |
144 | #ifndef CHIP_AU8820 | 147 | #ifndef CHIP_AU8820 |
145 | if (VORTEX_PCM_TYPE(substream->pcm) == VORTEX_PCM_A3D) { | 148 | if (VORTEX_PCM_TYPE(substream->pcm) == VORTEX_PCM_A3D) { |
@@ -515,7 +518,7 @@ static int __devinit snd_vortex_new_pcm(vortex_t *chip, int idx, int nr) | |||
515 | return -ENODEV; | 518 | return -ENODEV; |
516 | 519 | ||
517 | /* idx indicates which kind of PCM device. ADB, SPDIF, I2S and A3D share the | 520 | /* idx indicates which kind of PCM device. ADB, SPDIF, I2S and A3D share the |
518 | * same dma engine. WT uses it own separate dma engine whcih cant capture. */ | 521 | * same dma engine. WT uses it own separate dma engine which can't capture. */ |
519 | if (idx == VORTEX_PCM_ADB) | 522 | if (idx == VORTEX_PCM_ADB) |
520 | nr_capt = nr; | 523 | nr_capt = nr; |
521 | else | 524 | else |