diff options
| -rw-r--r-- | drivers/video/tegra/host/pva/pva_ioctl.c | 4 | ||||
| -rw-r--r-- | drivers/video/tegra/host/pva/pva_queue.c | 59 | ||||
| -rw-r--r-- | drivers/video/tegra/host/pva/pva_queue.h | 12 | ||||
| -rw-r--r-- | include/uapi/linux/nvhost_pva_ioctl.h | 12 |
4 files changed, 12 insertions, 75 deletions
diff --git a/drivers/video/tegra/host/pva/pva_ioctl.c b/drivers/video/tegra/host/pva/pva_ioctl.c index f6af57ea0..f1297bfca 100644 --- a/drivers/video/tegra/host/pva/pva_ioctl.c +++ b/drivers/video/tegra/host/pva/pva_ioctl.c | |||
| @@ -87,11 +87,7 @@ static int pva_copy_task(struct pva_ioctl_submit_task *ioctl_task, | |||
| 87 | task->num_output_surfaces = ioctl_task->num_output_surfaces; | 87 | task->num_output_surfaces = ioctl_task->num_output_surfaces; |
| 88 | task->num_pointers = ioctl_task->num_pointers; | 88 | task->num_pointers = ioctl_task->num_pointers; |
| 89 | task->input_scalars = ioctl_task->input_scalars; | 89 | task->input_scalars = ioctl_task->input_scalars; |
| 90 | task->input_2dpoint = ioctl_task->input_2dpoint; | ||
| 91 | task->input_rois = ioctl_task->input_rois; | ||
| 92 | task->output_scalars = ioctl_task->output_scalars; | 90 | task->output_scalars = ioctl_task->output_scalars; |
| 93 | task->output_2dpoint = ioctl_task->output_2dpoint; | ||
| 94 | task->output_rois = ioctl_task->output_rois; | ||
| 95 | task->timeout = ioctl_task->timeout; | 91 | task->timeout = ioctl_task->timeout; |
| 96 | 92 | ||
| 97 | #define COPY_FIELD(dst, src, num, type) \ | 93 | #define COPY_FIELD(dst, src, num, type) \ |
diff --git a/drivers/video/tegra/host/pva/pva_queue.c b/drivers/video/tegra/host/pva/pva_queue.c index dac041faa..7c53ee7f8 100644 --- a/drivers/video/tegra/host/pva/pva_queue.c +++ b/drivers/video/tegra/host/pva/pva_queue.c | |||
| @@ -64,23 +64,16 @@ static void pva_task_dump(struct pva_submit_task *task) | |||
| 64 | { | 64 | { |
| 65 | int i; | 65 | int i; |
| 66 | 66 | ||
| 67 | nvhost_dbg_info("task=%p, input_scalars=(handle=%u, offset=%x), " | 67 | nvhost_dbg_info("task=%p, " |
| 68 | "input_surfaces=%p, input_points=(handle=%u, offset=%u), " | 68 | "input_scalars=(handle=%u, offset=%x), " |
| 69 | "input_rois=(handle=%u, offset=%u), " | 69 | "input_surfaces=%p, " |
| 70 | "output_scalars=(handle=%u, offset=%u), " | 70 | "output_scalars=(handle=%u, offset=%u), " |
| 71 | "output_surfaces=%p, output_points=(handle=%u, offset=%u), " | 71 | "output_surfaces=%p", |
| 72 | "output_rois=(handle=%u, offset=%u)", | 72 | task, |
| 73 | task, task->input_scalars.handle, | 73 | task->input_scalars.handle, task->input_scalars.offset, |
| 74 | task->input_scalars.offset, task->input_surfaces, | 74 | task->input_surfaces, |
| 75 | task->input_2dpoint.handle, | 75 | task->output_scalars.handle, task->output_scalars.offset, |
| 76 | task->input_2dpoint.offset, | 76 | task->output_surfaces); |
| 77 | task->input_rois.handle, task->input_rois.offset, | ||
| 78 | task->output_scalars.handle, | ||
| 79 | task->output_scalars.offset, | ||
| 80 | task->output_surfaces, | ||
| 81 | task->output_2dpoint.handle, | ||
| 82 | task->output_2dpoint.offset, | ||
| 83 | task->output_rois.handle, task->output_rois.offset); | ||
| 84 | 77 | ||
| 85 | for (i = 0; i < task->num_prefences; i++) | 78 | for (i = 0; i < task->num_prefences; i++) |
| 86 | nvhost_dbg_info("prefence %d: type=%u, " | 79 | nvhost_dbg_info("prefence %d: type=%u, " |
| @@ -223,11 +216,7 @@ static void pva_task_unpin_mem(struct pva_submit_task *task) | |||
| 223 | } | 216 | } |
| 224 | 217 | ||
| 225 | UNPIN_MEMORY(task->input_scalars_ext); | 218 | UNPIN_MEMORY(task->input_scalars_ext); |
| 226 | UNPIN_MEMORY(task->input_rois_ext); | ||
| 227 | UNPIN_MEMORY(task->input_2dpoint_ext); | ||
| 228 | UNPIN_MEMORY(task->output_scalars_ext); | 219 | UNPIN_MEMORY(task->output_scalars_ext); |
| 229 | UNPIN_MEMORY(task->output_rois_ext); | ||
| 230 | UNPIN_MEMORY(task->output_2dpoint_ext); | ||
| 231 | 220 | ||
| 232 | #undef UNPIN_MEMORY | 221 | #undef UNPIN_MEMORY |
| 233 | } | 222 | } |
| @@ -357,24 +346,10 @@ static int pva_task_pin_mem(struct pva_submit_task *task) | |||
| 357 | PIN_MEMORY(task->input_scalars_ext, | 346 | PIN_MEMORY(task->input_scalars_ext, |
| 358 | task->input_scalars.handle); | 347 | task->input_scalars.handle); |
| 359 | 348 | ||
| 360 | if (task->input_rois.handle) | ||
| 361 | PIN_MEMORY(task->input_rois_ext, task->input_rois.handle); | ||
| 362 | |||
| 363 | if (task->input_2dpoint.handle) | ||
| 364 | PIN_MEMORY(task->input_2dpoint_ext, | ||
| 365 | task->input_2dpoint.handle); | ||
| 366 | |||
| 367 | if (task->output_scalars.handle) | 349 | if (task->output_scalars.handle) |
| 368 | PIN_MEMORY(task->output_scalars_ext, | 350 | PIN_MEMORY(task->output_scalars_ext, |
| 369 | task->output_scalars.handle); | 351 | task->output_scalars.handle); |
| 370 | 352 | ||
| 371 | if (task->output_rois.handle) | ||
| 372 | PIN_MEMORY(task->output_rois_ext, task->output_rois.handle); | ||
| 373 | |||
| 374 | if (task->output_2dpoint.handle) | ||
| 375 | PIN_MEMORY(task->output_2dpoint_ext, | ||
| 376 | task->output_2dpoint.handle); | ||
| 377 | |||
| 378 | #undef PIN_MEMORY | 353 | #undef PIN_MEMORY |
| 379 | 354 | ||
| 380 | return 0; | 355 | return 0; |
| @@ -753,26 +728,10 @@ static void pva_task_write_non_surfaces(struct pva_submit_task *task, | |||
| 753 | task->input_scalars_ext, | 728 | task->input_scalars_ext, |
| 754 | PVA_PARAM_SCALAR_LIST, | 729 | PVA_PARAM_SCALAR_LIST, |
| 755 | hw_task->task.num_input_parameters); | 730 | hw_task->task.num_input_parameters); |
| 756 | COPY_PARAMETER(hw_input_parameters, task->input_rois, | ||
| 757 | task->input_rois_ext, | ||
| 758 | PVA_PARAM_ROI_LIST, | ||
| 759 | hw_task->task.num_input_parameters); | ||
| 760 | COPY_PARAMETER(hw_input_parameters, task->input_2dpoint, | ||
| 761 | task->input_2dpoint_ext, | ||
| 762 | PVA_PARAM_2DPOINTS_LIST, | ||
| 763 | hw_task->task.num_input_parameters); | ||
| 764 | COPY_PARAMETER(hw_output_parameters, task->output_scalars, | 731 | COPY_PARAMETER(hw_output_parameters, task->output_scalars, |
| 765 | task->output_scalars_ext, | 732 | task->output_scalars_ext, |
| 766 | PVA_PARAM_SCALAR_LIST, | 733 | PVA_PARAM_SCALAR_LIST, |
| 767 | hw_task->task.num_output_parameters); | 734 | hw_task->task.num_output_parameters); |
| 768 | COPY_PARAMETER(hw_output_parameters, task->output_rois, | ||
| 769 | task->output_rois_ext, | ||
| 770 | PVA_PARAM_ROI_LIST, | ||
| 771 | hw_task->task.num_output_parameters); | ||
| 772 | COPY_PARAMETER(hw_output_parameters, task->output_2dpoint, | ||
| 773 | task->output_2dpoint_ext, | ||
| 774 | PVA_PARAM_2DPOINTS_LIST, | ||
| 775 | hw_task->task.num_output_parameters); | ||
| 776 | #undef COPY_PARAMETER | 735 | #undef COPY_PARAMETER |
| 777 | } | 736 | } |
| 778 | 737 | ||
diff --git a/drivers/video/tegra/host/pva/pva_queue.h b/drivers/video/tegra/host/pva/pva_queue.h index 0b34b7842..ce8ba3d46 100644 --- a/drivers/video/tegra/host/pva/pva_queue.h +++ b/drivers/video/tegra/host/pva/pva_queue.h | |||
| @@ -63,12 +63,8 @@ struct pva_parameter_ext { | |||
| 63 | * postfences Post-fence structures | 63 | * postfences Post-fence structures |
| 64 | * input_surfaces Input surfaces structures | 64 | * input_surfaces Input surfaces structures |
| 65 | * input_scalars Information for input scalars | 65 | * input_scalars Information for input scalars |
| 66 | * input_2dpoint Information for input 2d points | ||
| 67 | * input_rois Input ROIs | ||
| 68 | * output_surfaces Output surfaces | 66 | * output_surfaces Output surfaces |
| 69 | * output_scalars Information for output scalars | 67 | * output_scalars Information for output scalars |
| 70 | * output_2dpoint Information for output 2d points | ||
| 71 | * output_rois Output ROIs | ||
| 72 | * input_task_status Input status structure | 68 | * input_task_status Input status structure |
| 73 | * output_task_status Output status structure | 69 | * output_task_status Output status structure |
| 74 | * | 70 | * |
| @@ -101,12 +97,8 @@ struct pva_submit_task { | |||
| 101 | struct pva_fence postfences[PVA_MAX_POSTFENCES]; | 97 | struct pva_fence postfences[PVA_MAX_POSTFENCES]; |
| 102 | struct pva_surface input_surfaces[PVA_MAX_INPUT_SURFACES]; | 98 | struct pva_surface input_surfaces[PVA_MAX_INPUT_SURFACES]; |
| 103 | struct pva_task_parameter input_scalars; | 99 | struct pva_task_parameter input_scalars; |
| 104 | struct pva_task_parameter input_2dpoint; | ||
| 105 | struct pva_task_parameter input_rois; | ||
| 106 | struct pva_surface output_surfaces[PVA_MAX_OUTPUT_SURFACES]; | 100 | struct pva_surface output_surfaces[PVA_MAX_OUTPUT_SURFACES]; |
| 107 | struct pva_task_parameter output_scalars; | 101 | struct pva_task_parameter output_scalars; |
| 108 | struct pva_task_parameter output_2dpoint; | ||
| 109 | struct pva_task_parameter output_rois; | ||
| 110 | struct pva_status_handle input_task_status[PVA_MAX_INPUT_STATUS]; | 102 | struct pva_status_handle input_task_status[PVA_MAX_INPUT_STATUS]; |
| 111 | struct pva_status_handle output_task_status[PVA_MAX_OUTPUT_STATUS]; | 103 | struct pva_status_handle output_task_status[PVA_MAX_OUTPUT_STATUS]; |
| 112 | struct pva_memory_handle pointers[PVA_MAX_POINTERS]; | 104 | struct pva_memory_handle pointers[PVA_MAX_POINTERS]; |
| @@ -118,12 +110,8 @@ struct pva_submit_task { | |||
| 118 | struct pva_parameter_ext postfences_sema_ext[PVA_MAX_POSTFENCES]; | 110 | struct pva_parameter_ext postfences_sema_ext[PVA_MAX_POSTFENCES]; |
| 119 | struct pva_parameter_ext input_surfaces_ext[PVA_MAX_INPUT_SURFACES]; | 111 | struct pva_parameter_ext input_surfaces_ext[PVA_MAX_INPUT_SURFACES]; |
| 120 | struct pva_parameter_ext input_scalars_ext; | 112 | struct pva_parameter_ext input_scalars_ext; |
| 121 | struct pva_parameter_ext input_2dpoint_ext; | ||
| 122 | struct pva_parameter_ext input_rois_ext; | ||
| 123 | struct pva_parameter_ext output_surfaces_ext[PVA_MAX_OUTPUT_SURFACES]; | 113 | struct pva_parameter_ext output_surfaces_ext[PVA_MAX_OUTPUT_SURFACES]; |
| 124 | struct pva_parameter_ext output_scalars_ext; | 114 | struct pva_parameter_ext output_scalars_ext; |
| 125 | struct pva_parameter_ext output_2dpoint_ext; | ||
| 126 | struct pva_parameter_ext output_rois_ext; | ||
| 127 | struct pva_parameter_ext input_task_status_ext[PVA_MAX_INPUT_STATUS]; | 115 | struct pva_parameter_ext input_task_status_ext[PVA_MAX_INPUT_STATUS]; |
| 128 | struct pva_parameter_ext output_task_status_ext[PVA_MAX_OUTPUT_STATUS]; | 116 | struct pva_parameter_ext output_task_status_ext[PVA_MAX_OUTPUT_STATUS]; |
| 129 | struct pva_parameter_ext | 117 | struct pva_parameter_ext |
diff --git a/include/uapi/linux/nvhost_pva_ioctl.h b/include/uapi/linux/nvhost_pva_ioctl.h index 6088f91d5..a8aa21c87 100644 --- a/include/uapi/linux/nvhost_pva_ioctl.h +++ b/include/uapi/linux/nvhost_pva_ioctl.h | |||
| @@ -205,12 +205,8 @@ stru | |||
