v4l: vsp1: Allow entities to participate in the partition algorithm

The configuration of the pipeline and entities directly affects the
inputs required to each entity for the partition algorithm. Thus it
makes sense to involve those entities in the decision making process.

Extend the entity ops API to provide an optional '.partition' operation.
This allows entities that effect the partition window to adapt the
window based on their configuration.

Entities implementing this operation must return their required input
parameters, which will be passed up the pipeline. This creates a process
whereby each entity describes what is required to satisfy the required
output to its predecessor in the pipeline.

Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>

---
v2:
 - vsp1_partition_rect renamed as vsp1_partition_window
 - destination vsp1_partition_window made const to prevent change
 - (currently) unused 'offset' removed.
 - partition functions made static
8 files changed