Lines Matching refs:list
476 int vpdma_create_desc_list(struct vpdma_desc_list *list, size_t size, int type) in vpdma_create_desc_list() argument
480 r = vpdma_alloc_desc_buf(&list->buf, size); in vpdma_create_desc_list()
484 list->next = list->buf.addr; in vpdma_create_desc_list()
486 list->type = type; in vpdma_create_desc_list()
496 void vpdma_reset_desc_list(struct vpdma_desc_list *list) in vpdma_reset_desc_list() argument
498 list->next = list->buf.addr; in vpdma_reset_desc_list()
506 void vpdma_free_desc_list(struct vpdma_desc_list *list) in vpdma_free_desc_list() argument
508 vpdma_free_desc_buf(&list->buf); in vpdma_free_desc_list()
510 list->next = NULL; in vpdma_free_desc_list()
524 struct vpdma_desc_list *list, int list_num) in vpdma_submit_descs() argument
533 list_size = (list->next - list->buf.addr) >> 4; in vpdma_submit_descs()
536 write_reg(vpdma, VPDMA_LIST_ADDR, (u32) list->buf.dma_addr); in vpdma_submit_descs()
540 (list->type << VPDMA_LIST_TYPE_SHFT) | in vpdma_submit_descs()
551 struct vpdma_desc_list *list, dma_addr_t dma_addr, in vpdma_update_dma_addr() argument
554 struct vpdma_dtd *dtd = list->buf.addr; in vpdma_update_dma_addr()
559 vpdma_unmap_desc_buf(vpdma, &list->buf); in vpdma_update_dma_addr()
566 offset = (void *)write_dtd - list->buf.addr; in vpdma_update_dma_addr()
567 write_desc_addr = list->buf.dma_addr + offset; in vpdma_update_dma_addr()
576 vpdma_map_desc_buf(vpdma, &list->buf); in vpdma_update_dma_addr()
628 void vpdma_add_cfd_block(struct vpdma_desc_list *list, int client, in vpdma_add_cfd_block() argument
636 cfd = list->next; in vpdma_add_cfd_block()
637 WARN_ON((void *)(cfd + 1) > (list->buf.addr + list->buf.size)); in vpdma_add_cfd_block()
645 list->next = cfd + 1; in vpdma_add_cfd_block()
656 void vpdma_add_cfd_adb(struct vpdma_desc_list *list, int client, in vpdma_add_cfd_adb() argument
665 cfd = list->next; in vpdma_add_cfd_adb()
666 BUG_ON((void *)(cfd + 1) > (list->buf.addr + list->buf.size)); in vpdma_add_cfd_adb()
674 list->next = cfd + 1; in vpdma_add_cfd_adb()
698 void vpdma_add_sync_on_channel_ctd(struct vpdma_desc_list *list, in vpdma_add_sync_on_channel_ctd() argument
703 ctd = list->next; in vpdma_add_sync_on_channel_ctd()
704 WARN_ON((void *)(ctd + 1) > (list->buf.addr + list->buf.size)); in vpdma_add_sync_on_channel_ctd()
712 list->next = ctd + 1; in vpdma_add_sync_on_channel_ctd()
723 void vpdma_add_abort_channel_ctd(struct vpdma_desc_list *list, in vpdma_add_abort_channel_ctd() argument
728 ctd = list->next; in vpdma_add_abort_channel_ctd()
729 WARN_ON((void *)(ctd + 1) > (list->buf.addr + list->buf.size)); in vpdma_add_abort_channel_ctd()
737 list->next = ctd + 1; in vpdma_add_abort_channel_ctd()
802 void vpdma_add_out_dtd(struct vpdma_desc_list *list, int width, in vpdma_add_out_dtd() argument
807 vpdma_rawchan_add_out_dtd(list, width, stride, c_rect, fmt, dma_addr, in vpdma_add_out_dtd()
812 void vpdma_rawchan_add_out_dtd(struct vpdma_desc_list *list, int width, in vpdma_rawchan_add_out_dtd() argument
836 dtd = list->next; in vpdma_rawchan_add_out_dtd()
837 WARN_ON((void *)(dtd + 1) > (list->buf.addr + list->buf.size)); in vpdma_rawchan_add_out_dtd()
855 list->next = dtd + 1; in vpdma_rawchan_add_out_dtd()
880 void vpdma_add_in_dtd(struct vpdma_desc_list *list, int width, in vpdma_add_in_dtd() argument
904 dtd = list->next; in vpdma_add_in_dtd()
905 WARN_ON((void *)(dtd + 1) > (list->buf.addr + list->buf.size)); in vpdma_add_in_dtd()
926 list->next = dtd + 1; in vpdma_add_in_dtd()