Some updates and initial improvements for the VSP1 partition algorithm that remove redundant processing and variables, reducing the processing done in interrupt context slightly. Patches 1, 2 and 3 clean up the calculation of the partition windows such that they are only calculated once at streamon. Patch 4 improves the allocations with a new vsp1_partition object to track each window state. Patches 5, and 6 then go on to enhance the partition algorithm by allowing each entity to calculate the requirements for it's pipeline predecessor to successfully generate the requested output window. This system allows the entity objects to specify what they need to fulfil the output for the next entity in the pipeline. v2: - Rebased to v4.12-rc1 - Partition tables dynamically allocated - review fixups Kieran Bingham (6): v4l: vsp1: Move vsp1_video_pipeline_setup_partitions() function v4l: vsp1: Calculate partition sizes at stream start. v4l: vsp1: Remove redundant context variables v4l: vsp1: Move partition rectangles to struct and operate directly v4l: vsp1: Provide UDS register updates v4l: vsp1: Allow entities to participate in the partition algorithm drivers/media/platform/vsp1/vsp1_entity.h | 8 +- drivers/media/platform/vsp1/vsp1_pipe.c | 22 +++- drivers/media/platform/vsp1/vsp1_pipe.h | 48 ++++++- drivers/media/platform/vsp1/vsp1_regs.h | 14 ++- drivers/media/platform/vsp1/vsp1_rpf.c | 31 ++-- drivers/media/platform/vsp1/vsp1_sru.c | 30 ++++- drivers/media/platform/vsp1/vsp1_uds.c | 43 +++++- drivers/media/platform/vsp1/vsp1_video.c | 163 ++++++++++++----------- drivers/media/platform/vsp1/vsp1_wpf.c | 33 +++-- 9 files changed, 289 insertions(+), 103 deletions(-) base-commit: 70e60837e669f6fbc8bba30db9a2244d347643bc -- git-series 0.9.1