Lines Matching refs:mdl
724 static int cx18_process_idx_data(struct cx18_stream *s, struct cx18_mdl *mdl,
730 if (mdl->curr_buf == NULL)
731 mdl->curr_buf = list_first_entry(&mdl->buf_list,
734 if (list_entry_is_past_end(mdl->curr_buf, &mdl->buf_list, list)) {
740 mdl->readpos = mdl->bytesused;
744 list_for_each_entry_from(mdl->curr_buf, &mdl->buf_list, list) {
747 if (mdl->curr_buf->readpos >= mdl->curr_buf->bytesused)
750 mdl->readpos += _cx18_process_idx_data(mdl->curr_buf, idx);
754 mdl->curr_buf->readpos < mdl->curr_buf->bytesused ||
755 mdl->readpos >= mdl->bytesused)
767 struct cx18_mdl *mdl;
786 mdl = cx18_dequeue(s, &s->q_full);
787 if (mdl == NULL) /* No more IDX data right now */
791 cx18_process_idx_data(s, mdl, idx);
792 if (mdl->readpos < mdl->bytesused) {
794 cx18_push(s, mdl, &s->q_full);
799 cx18_enqueue(s, mdl, &s->q_free);