Lines Matching defs:cmdbuf
916 const drm_savage_cmd_header_t *cmdbuf;
919 cmdbuf = start;
920 while (cmdbuf < end) {
922 cmd_header = *cmdbuf;
923 cmdbuf++;
938 &cmd_header, (const uint16_t *)cmdbuf,
940 cmdbuf += j;
946 &cmd_header, (const uint16_t *)cmdbuf,
949 cmdbuf += j;
972 drm_savage_cmdbuf_t *cmdbuf = data;
985 if (cmdbuf->dma_idx >= dma->buf_count) {
988 cmdbuf->dma_idx, dma->buf_count - 1);
991 dmabuf = dma->buflist[cmdbuf->dma_idx];
1001 if (cmdbuf->size) {
1002 kcmd_addr = kmalloc_array(cmdbuf->size, 8, GFP_KERNEL);
1006 if (copy_from_user(kcmd_addr, cmdbuf->cmd_addr,
1007 cmdbuf->size * 8))
1012 cmdbuf->cmd_addr = kcmd_addr;
1014 if (cmdbuf->vb_size) {
1015 kvb_addr = memdup_user(cmdbuf->vb_addr, cmdbuf->vb_size);
1021 cmdbuf->vb_addr = kvb_addr;
1023 if (cmdbuf->nbox) {
1024 kbox_addr = kmalloc_array(cmdbuf->nbox, sizeof(struct drm_clip_rect),
1031 if (copy_from_user(kbox_addr, cmdbuf->box_addr,
1032 cmdbuf->nbox * sizeof(struct drm_clip_rect))) {
1036 cmdbuf->box_addr = kbox_addr;
1049 while (i < cmdbuf->size) {
1051 cmd_header = *(drm_savage_cmd_header_t *)cmdbuf->cmd_addr;
1052 cmdbuf->cmd_addr++;
1062 if (i + j > cmdbuf->size) {
1073 first_draw_cmd = cmdbuf->cmd_addr - 1;
1074 cmdbuf->cmd_addr += j;
1081 cmdbuf->cmd_addr - 1,
1082 dmabuf, cmdbuf->vb_addr, cmdbuf->vb_size,
1083 cmdbuf->vb_stride,
1084 cmdbuf->nbox, cmdbuf->box_addr);
1096 if (i + j > cmdbuf->size) {
1104 (const uint32_t *)cmdbuf->cmd_addr);
1105 cmdbuf->cmd_addr += j;
1109 if (i + 1 > cmdbuf->size) {
1117 cmdbuf->cmd_addr,
1118 cmdbuf->nbox,
1119 cmdbuf->box_addr);
1120 cmdbuf->cmd_addr++;
1124 ret = savage_dispatch_swap(dev_priv, cmdbuf->nbox,
1125 cmdbuf->box_addr);
1143 dev_priv, first_draw_cmd, cmdbuf->cmd_addr, dmabuf,
1144 cmdbuf->vb_addr, cmdbuf->vb_size, cmdbuf->vb_stride,
1145 cmdbuf->nbox, cmdbuf->box_addr);
1154 if (dmabuf && cmdbuf->discard) {