diff -rdu cx88_orig/cx88-alsa.c cx88/cx88-alsa.c
old
|
new
|
|
507 | 507 | */ |
508 | 508 | static snd_pcm_uframes_t snd_cx88_pointer(struct snd_pcm_substream *substream) |
509 | 509 | { |
| 510 | snd_pcm_uframes_t retval; |
510 | 511 | snd_cx88_card_t *chip = snd_pcm_substream_chip(substream); |
| 512 | struct cx88_core *core=chip->core; |
511 | 513 | struct snd_pcm_runtime *runtime = substream->runtime; |
512 | 514 | |
513 | 515 | if (chip->read_count) { |
… |
… |
|
518 | 520 | } |
519 | 521 | |
520 | 522 | dprintk(2, "Pointer time, will return %li, read %li\n",chip->read_offset,chip->read_count); |
521 | | return bytes_to_frames(runtime, chip->read_offset); |
522 | | |
| 523 | /* The cx_set line is part of an attempt to work around issue 1277 in MythTV */ |
| 524 | /* suggested by mrussotto@speakeasy.net */ |
| 525 | cx_set( MO_PCI_INTMSK , 0x02 ); |
| 526 | retval = bytes_to_frames(runtime, chip->read_offset); |
| 527 | return retval; |
523 | 528 | } |
524 | 529 | |
525 | 530 | /* |
Only in cx88: cx88-alsa.c.orig
diff -rdu cx88_orig/cx88-tvaudio.c cx88/cx88-tvaudio.c
old
|
new
|
|
139 | 139 | |
140 | 140 | #ifndef CONFIG_VIDEO_CX88_ALSA |
141 | 141 | /* restart dma; This avoids buzz in NICAM and is good in others */ |
142 | | cx88_stop_audio_dma(core); |
| 142 | /* attempt to work around issue 1277 in MythTV cx88_stop_audio_dma(core);*/ |
143 | 143 | #endif |
144 | 144 | cx_write(AUD_RATE_THRES_DMD, 0x000000C0); |
145 | 145 | #ifndef CONFIG_VIDEO_CX88_ALSA |
146 | | cx88_start_audio_dma(core); |
| 146 | /* attempt to work around issue 1277 in MythTV cx88_start_audio_dma(core);*/ |
147 | 147 | #endif |
148 | 148 | |
149 | 149 | if (cx88_boards[core->board].blackbird) { |