forked from luck/tmp_suning_uos_patched
e646e17713
We are now able to configure a pipeline directly into a local display list body. Take advantage of this fact, and create a cacheable body to store the configuration of the pipeline in the pipeline object. vsp1_video_pipeline_run() is now the last user of the pipe->dl object. Convert this function to use the cached pipe->stream_config body and obtain a local display list reference. Attach the pipe->stream_config body to the display list when needed before committing to hardware. Use a flag 'configured' to know when we should attach our stream_config to the next outgoing display list to reconfigure the hardware in the event of our first frame, or the first frame following a suspend/resume cycle. Our video DL usage now looks like the below output: dl->body0 contains our disposable runtime configuration. Max 41. dl_child->body0 is our partition specific configuration. Max 12. dl->bodies shows our constant configuration and LUTs. These two are LUT/CLU: * dl->bodies[x]->num_entries 256 / max 256 * dl->bodies[x]->num_entries 4914 / max 4914 Which shows that our 'constant' configuration cache is currently utilised to a maximum of 64 entries. trace-cmd report | \ dl->body0->num_entries 13 / max 128 dl->body0->num_entries 14 / max 128 dl->body0->num_entries 16 / max 128 dl->body0->num_entries 20 / max 128 dl->body0->num_entries 27 / max 128 dl->body0->num_entries 34 / max 128 dl->body0->num_entries 41 / max 128 dl_child->body0->num_entries 10 / max 128 dl_child->body0->num_entries 12 / max 128 dl->bodies[x]->num_entries 15 / max 128 dl->bodies[x]->num_entries 16 / max 128 dl->bodies[x]->num_entries 17 / max 128 dl->bodies[x]->num_entries 18 / max 128 dl->bodies[x]->num_entries 20 / max 128 dl->bodies[x]->num_entries 21 / max 128 dl->bodies[x]->num_entries 256 / max 256 dl->bodies[x]->num_entries 31 / max 128 dl->bodies[x]->num_entries 32 / max 128 dl->bodies[x]->num_entries 39 / max 128 dl->bodies[x]->num_entries 40 / max 128 dl->bodies[x]->num_entries 47 / max 128 dl->bodies[x]->num_entries 48 / max 128 dl->bodies[x]->num_entries 4914 / max 4914 dl->bodies[x]->num_entries 55 / max 128 dl->bodies[x]->num_entries 56 / max 128 dl->bodies[x]->num_entries 63 / max 128 dl->bodies[x]->num_entries 64 / max 128 Signed-off-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> |
||
---|---|---|
.. | ||
Makefile | ||
vsp1_brx.c | ||
vsp1_brx.h | ||
vsp1_clu.c | ||
vsp1_clu.h | ||
vsp1_dl.c | ||
vsp1_dl.h | ||
vsp1_drm.c | ||
vsp1_drm.h | ||
vsp1_drv.c | ||
vsp1_entity.c | ||
vsp1_entity.h | ||
vsp1_hgo.c | ||
vsp1_hgo.h | ||
vsp1_hgt.c | ||
vsp1_hgt.h | ||
vsp1_histo.c | ||
vsp1_histo.h | ||
vsp1_hsit.c | ||
vsp1_hsit.h | ||
vsp1_lif.c | ||
vsp1_lif.h | ||
vsp1_lut.c | ||
vsp1_lut.h | ||
vsp1_pipe.c | ||
vsp1_pipe.h | ||
vsp1_regs.h | ||
vsp1_rpf.c | ||
vsp1_rwpf.c | ||
vsp1_rwpf.h | ||
vsp1_sru.c | ||
vsp1_sru.h | ||
vsp1_uds.c | ||
vsp1_uds.h | ||
vsp1_uif.c | ||
vsp1_uif.h | ||
vsp1_video.c | ||
vsp1_video.h | ||
vsp1_wpf.c | ||
vsp1.h |