Lines Matching refs:dirty
1020 static void vmw_sou_surface_fifo_commit(struct vmw_kms_dirty *dirty) in vmw_sou_surface_fifo_commit() argument
1023 container_of(dirty, typeof(*sdirty), base); in vmw_sou_surface_fifo_commit()
1024 struct vmw_kms_sou_dirty_cmd *cmd = dirty->cmd; in vmw_sou_surface_fifo_commit()
1025 s32 trans_x = dirty->unit->crtc.x - sdirty->dst_x; in vmw_sou_surface_fifo_commit()
1026 s32 trans_y = dirty->unit->crtc.y - sdirty->dst_y; in vmw_sou_surface_fifo_commit()
1027 size_t region_size = dirty->num_hits * sizeof(SVGASignedRect); in vmw_sou_surface_fifo_commit()
1031 if (!dirty->num_hits) { in vmw_sou_surface_fifo_commit()
1032 vmw_fifo_commit(dirty->dev_priv, 0); in vmw_sou_surface_fifo_commit()
1054 cmd->body.destScreenId = dirty->unit->unit; in vmw_sou_surface_fifo_commit()
1057 for (i = 0; i < dirty->num_hits; ++i, ++blit) { in vmw_sou_surface_fifo_commit()
1064 vmw_fifo_commit(dirty->dev_priv, region_size + sizeof(*cmd)); in vmw_sou_surface_fifo_commit()
1078 static void vmw_sou_surface_clip(struct vmw_kms_dirty *dirty) in vmw_sou_surface_clip() argument
1081 container_of(dirty, typeof(*sdirty), base); in vmw_sou_surface_clip()
1082 struct vmw_kms_sou_dirty_cmd *cmd = dirty->cmd; in vmw_sou_surface_clip()
1086 blit += dirty->num_hits; in vmw_sou_surface_clip()
1087 blit->left = dirty->unit_x1; in vmw_sou_surface_clip()
1088 blit->top = dirty->unit_y1; in vmw_sou_surface_clip()
1089 blit->right = dirty->unit_x2; in vmw_sou_surface_clip()
1090 blit->bottom = dirty->unit_y2; in vmw_sou_surface_clip()
1093 sdirty->left = min_t(s32, sdirty->left, dirty->unit_x1); in vmw_sou_surface_clip()
1094 sdirty->top = min_t(s32, sdirty->top, dirty->unit_y1); in vmw_sou_surface_clip()
1095 sdirty->right = max_t(s32, sdirty->right, dirty->unit_x2); in vmw_sou_surface_clip()
1096 sdirty->bottom = max_t(s32, sdirty->bottom, dirty->unit_y2); in vmw_sou_surface_clip()
1098 dirty->num_hits++; in vmw_sou_surface_clip()
1185 static void vmw_sou_bo_fifo_commit(struct vmw_kms_dirty *dirty) in vmw_sou_bo_fifo_commit() argument
1187 if (!dirty->num_hits) { in vmw_sou_bo_fifo_commit()
1188 vmw_fifo_commit(dirty->dev_priv, 0); in vmw_sou_bo_fifo_commit()
1192 vmw_fifo_commit(dirty->dev_priv, in vmw_sou_bo_fifo_commit()
1194 dirty->num_hits); in vmw_sou_bo_fifo_commit()
1204 static void vmw_sou_bo_clip(struct vmw_kms_dirty *dirty) in vmw_sou_bo_clip() argument
1206 struct vmw_kms_sou_bo_blit *blit = dirty->cmd; in vmw_sou_bo_clip()
1208 blit += dirty->num_hits; in vmw_sou_bo_clip()
1210 blit->body.destScreenId = dirty->unit->unit; in vmw_sou_bo_clip()
1211 blit->body.srcOrigin.x = dirty->fb_x; in vmw_sou_bo_clip()
1212 blit->body.srcOrigin.y = dirty->fb_y; in vmw_sou_bo_clip()
1213 blit->body.destRect.left = dirty->unit_x1; in vmw_sou_bo_clip()
1214 blit->body.destRect.top = dirty->unit_y1; in vmw_sou_bo_clip()
1215 blit->body.destRect.right = dirty->unit_x2; in vmw_sou_bo_clip()
1216 blit->body.destRect.bottom = dirty->unit_y2; in vmw_sou_bo_clip()
1217 dirty->num_hits++; in vmw_sou_bo_clip()
1251 struct vmw_kms_dirty dirty; in vmw_kms_sou_do_bo_dirty() local
1267 dirty.crtc = crtc; in vmw_kms_sou_do_bo_dirty()
1268 dirty.fifo_commit = vmw_sou_bo_fifo_commit; in vmw_kms_sou_do_bo_dirty()
1269 dirty.clip = vmw_sou_bo_clip; in vmw_kms_sou_do_bo_dirty()
1270 dirty.fifo_reserve_size = sizeof(struct vmw_kms_sou_bo_blit) * in vmw_kms_sou_do_bo_dirty()
1273 0, 0, num_clips, increment, &dirty); in vmw_kms_sou_do_bo_dirty()
1295 static void vmw_sou_readback_fifo_commit(struct vmw_kms_dirty *dirty) in vmw_sou_readback_fifo_commit() argument
1297 if (!dirty->num_hits) { in vmw_sou_readback_fifo_commit()
1298 vmw_fifo_commit(dirty->dev_priv, 0); in vmw_sou_readback_fifo_commit()
1302 vmw_fifo_commit(dirty->dev_priv, in vmw_sou_readback_fifo_commit()
1304 dirty->num_hits); in vmw_sou_readback_fifo_commit()
1314 static void vmw_sou_readback_clip(struct vmw_kms_dirty *dirty) in vmw_sou_readback_clip() argument
1316 struct vmw_kms_sou_readback_blit *blit = dirty->cmd; in vmw_sou_readback_clip()
1318 blit += dirty->num_hits; in vmw_sou_readback_clip()
1320 blit->body.srcScreenId = dirty->unit->unit; in vmw_sou_readback_clip()
1321 blit->body.destOrigin.x = dirty->fb_x; in vmw_sou_readback_clip()
1322 blit->body.destOrigin.y = dirty->fb_y; in vmw_sou_readback_clip()
1323 blit->body.srcRect.left = dirty->unit_x1; in vmw_sou_readback_clip()
1324 blit->body.srcRect.top = dirty->unit_y1; in vmw_sou_readback_clip()
1325 blit->body.srcRect.right = dirty->unit_x2; in vmw_sou_readback_clip()
1326 blit->body.srcRect.bottom = dirty->unit_y2; in vmw_sou_readback_clip()
1327 dirty->num_hits++; in vmw_sou_readback_clip()
1357 struct vmw_kms_dirty dirty; in vmw_kms_sou_readback() local
1373 dirty.crtc = crtc; in vmw_kms_sou_readback()
1374 dirty.fifo_commit = vmw_sou_readback_fifo_commit; in vmw_kms_sou_readback()
1375 dirty.clip = vmw_sou_readback_clip; in vmw_kms_sou_readback()
1376 dirty.fifo_reserve_size = sizeof(struct vmw_kms_sou_readback_blit) * in vmw_kms_sou_readback()
1379 0, 0, num_clips, 1, &dirty); in vmw_kms_sou_readback()