You may need to dump mmio VORTEX_SMP_TIME which is tick at 48000 * 256 Hz (what is the clock printed at the oscillator on your au8820 sound card) to find out the elapsed time between periods is correct or not
- return (bytes_to_frames(substream->runtime, current_ptr)); + current_ptr = bytes_to_frames(substream->runtime, current_ptr); + if (current_ptr >= substream->runtime->buffer_size) { + dev_info(vortex->card->dev, "ptr : %x. time : %x/n", current_ptr, hwread(vortex->mmio, VORTEX_SMP_TIME )); + current_ptr = 0; + } + return current_ptr;
You may need to dump mmio VORTEX_SMP_TIME which is tick at 48000 * 256 Hz (what is the clock printed at the oscillator on your au8820 sound card) to find out the elapsed time between periods is correct or not
- return (bytes_ to_frames( substream- >runtime, current_ptr)); frames( substream- >runtime, current_ptr); >runtime- >buffer_ size) { vortex- >card-> dev, "ptr : %x. time : %x/n", current_ptr, hwread( vortex- >mmio, VORTEX_SMP_TIME ));
+ current_ptr = bytes_to_
+ if (current_ptr >= substream-
+ dev_info(
+ current_ptr = 0;
+ }
+ return current_ptr;