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