Lines Matching refs:pref

86 	struct dmaengine_dlp_runtime_data *pref;  member
618 struct dmaengine_dlp_runtime_data *pref = dlp->pref; in dmaengine_dlp_setup() local
634 if (!pref) { in dmaengine_dlp_setup()
647 pref->hw_ptr_delta = delta; in dmaengine_dlp_setup()
648 kref_get(&pref->refcount); in dmaengine_dlp_setup()
650 list_add_tail(&pref->node, &dlp->ref_list); in dmaengine_dlp_setup()
670 struct dmaengine_dlp_runtime_data *pref = dlp->pref; in dmaengine_dlp_release() local
683 pref->hw_ptr = min(hw_ptr, appl_ptr); in dmaengine_dlp_release()
698 kref_put(&pref->refcount, dmaengine_free_prtd); in dmaengine_dlp_release()
699 dlp->pref = NULL; in dmaengine_dlp_release()
792 struct dmaengine_dlp_runtime_data *pref = NULL; in get_ref() local
796 pref = list_first_entry(&dlp->ref_list, struct dmaengine_dlp_runtime_data, node); in get_ref()
797 list_del(&pref->node); in get_ref()
801 return pref; in get_ref()
812 struct dmaengine_dlp_runtime_data *pref = NULL; in process_capture() local
845 pref = prtd->ref; in process_capture()
848 if (!pref) in process_capture()
851 ret = dlp_get_offset_size(pref, dlp->mode, &ofs_play, &size_play, &mix); in process_capture()
857 ofs = appl_ptr + pref->hw_ptr_delta; in process_capture()
864 if (kref_read(&pref->refcount) == 1) { in process_capture()
865 if (ofs >= pref->hw_ptr) { in process_capture()
866 kref_put(&pref->refcount, dmaengine_free_prtd); in process_capture()
869 } else if ((ofs + frames) > pref->hw_ptr) { in process_capture()
871 appl_ptr, ofs, pref->hw_ptr, frames); in process_capture()
877 frames_tmp = pref->hw_ptr - ofs; in process_capture()
906 ofs %= pref->buf_sz; in process_capture()
912 pbuf = pref->buf + dlp_frames_to_bytes(pref, ((i + ofs) % pref->buf_sz)) + ofs_play; in process_capture()
914 dlp_mix_frame_buffer(pref, pbuf); in process_capture()
922 kref_put(&pref->refcount, dmaengine_free_prtd); in process_capture()
941 struct dmaengine_dlp_runtime_data *pref; in process_playback() local
946 pref = dlp->pref; in process_playback()
947 if (!pref) { in process_playback()
952 pbuf = pref->buf + pref->buf_ofs; in process_playback()
959 pref->buf_ofs += bytes; in process_playback()
960 pref->buf_ofs %= dlp_frames_to_bytes(pref, pref->buf_sz); in process_playback()
1057 struct dmaengine_dlp_runtime_data *pref = NULL; in dmaengine_dlp_prepare() local
1061 pref = kmemdup(prtd, sizeof(*prtd), GFP_KERNEL); in dmaengine_dlp_prepare()
1062 if (!pref) in dmaengine_dlp_prepare()
1065 kref_init(&pref->refcount); in dmaengine_dlp_prepare()
1066 pref->buf_ofs = 0; in dmaengine_dlp_prepare()
1067 pref->buf = kzalloc(buf_bytes, GFP_KERNEL); in dmaengine_dlp_prepare()
1068 if (!pref->buf) { in dmaengine_dlp_prepare()
1069 kfree(pref); in dmaengine_dlp_prepare()
1074 dlp->pref = pref; in dmaengine_dlp_prepare()
1076 dlp_info("PREF-CREATE: 0x%px\n", pref); in dmaengine_dlp_prepare()