linux_dsm_epyc7002/drivers/media/platform
Kieran Bingham e646e17713 media: vsp1: Move video configuration to a cached dlb
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>
2018-05-25 19:05:46 -04:00
..
am437x media: platform: am437x: simplify getting .drvdata 2018-05-09 16:10:48 -04:00
atmel media: atmel-isc: Make local symbol fmt_configs_list static 2018-02-26 06:56:17 -05:00
cadence media: v4l: cadence: Add Cadence MIPI-CSI2 TX driver 2018-05-17 06:22:08 -04:00
cec-gpio media: cec-gpio: use GPIOD_OUT_HIGH_OPEN_DRAIN 2018-05-09 16:15:06 -04:00
coda media: coda: set colorimetry on coded queue 2018-05-09 16:23:33 -04:00
davinci media: vpbe_venc: potential uninitialized variable in ven_sub_dev_init() 2018-05-09 16:15:59 -04:00
exynos4-is media: include/media: fix missing | operator when setting cfg 2018-05-05 09:01:22 -04:00
exynos-gsc media updates for v4.16-rc1 2018-02-06 11:27:48 -08:00
marvell-ccic media: mmp-driver: add needed __iomem marks to power_regs 2018-04-17 05:29:14 -04:00
meson media: platform: Add Amlogic Meson AO CEC Controller driver 2017-08-09 10:45:26 -04:00
mtk-jpeg media: vcodec: fix ptr_ret.cocci warnings 2018-05-09 15:58:30 -04:00
mtk-mdp License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mtk-vcodec media: mtk-vcodec: Always signal source change event on format change 2018-02-26 07:41:36 -05:00
mtk-vpu media: mtk-vpu: add description for wdt fields at struct mtk_vpu 2017-11-30 04:19:00 -05:00
omap media: omap2: allow building it with COMPILE_TEST && DRM_OMAP 2018-05-04 09:55:38 -04:00
omap3isp media: omap3isp: Don't use GFP_DMA 2018-05-09 16:38:38 -04:00
qcom remoteproc updates for v4.17 2018-04-10 12:09:27 -07:00
rcar-vin media: rcar-vin: fix crop and compose handling for Gen3 2018-05-11 11:39:51 -04:00
rockchip/rga media: rca: declare formats var as static 2018-03-23 06:28:41 -04:00
s3c-camif media: s3c-camif: fix out-of-bounds array access 2018-03-06 07:29:04 -05:00
s5p-cec media: s5p-cec: add NACK detection support 2017-09-23 07:29:30 -04:00
s5p-g2d media: platform: make video_device const 2017-08-27 08:44:30 -04:00
s5p-jpeg media: s5p-jpeg: don't return a value on a void function 2018-05-04 08:58:22 -04:00
s5p-mfc media: s5p-mfc: fix two sparse warnings 2018-05-25 15:31:00 -04:00
soc_camera media: soc_camera: fix compiler warning 2018-05-25 15:34:04 -04:00
sti media: st-hva: don't use GFP_DMA 2018-05-25 15:35:41 -04:00
stm32 media: stm32-dcmi: add JPEG support 2018-03-21 11:53:09 -04:00
tegra-cec media: tegra-cec: reset rx_buf_cnt when start bit detected 2018-03-05 07:46:24 -05:00
ti-vpe media: v4l2-async: simplify v4l2_async_subdev structure 2017-12-29 07:14:28 -05:00
vimc media: vimc: use correct subdev functions 2018-02-26 09:31:41 -05:00
vivid media: v4l: Bring back array_size parameter to v4l2_find_nearest_size 2018-04-04 06:12:53 -04:00
vsp1 media: vsp1: Move video configuration to a cached dlb 2018-05-25 19:05:46 -04:00
xilinx media: xilinx: regroup caps on querycap 2018-05-11 11:25:06 -04:00
fsl-viu.c media: platform: fix some 64-bits warnings 2018-04-17 05:50:00 -04:00
Kconfig media: vsp1: Drop OF dependency of VIDEO_RENESAS_VSP1 2018-05-25 18:37:22 -04:00
m2m-deinterlace.c media updates for v4.16-rc1 2018-02-06 11:27:48 -08:00
Makefile media: v4l: cadence: Add Cadence MIPI-CSI2 RX driver 2018-05-16 11:12:21 -04:00
mx2_emmaprp.c media: annotate ->poll() instances 2017-11-27 16:20:06 -05:00
pxa_camera.c media: v4l2-async: simplify v4l2_async_subdev structure 2017-12-29 07:14:28 -05:00
rcar_drif.c media: rcar_drif: fix error return code in rcar_drif_alloc_dmachannels() 2018-02-26 07:43:29 -05:00
rcar_fdp1.c media: drivers: remove "/**" from non-kernel-doc comments 2017-11-30 04:19:03 -05:00
rcar_jpu.c media: rcar_jpu: Add missing clk_disable_unprepare() on error in jpu_open() 2018-05-11 11:23:54 -04:00
rcar-fcp.c v4l: rcar-fcp: Add an API to retrieve the FCP device 2017-06-09 12:25:36 +01:00
renesas-ceu.c media: renesas-ceu: fix compiler warning 2018-05-25 15:33:34 -04:00
sh_veu.c media: platform: sh_veu: use 64-bit arithmetic instead of 32-bit 2018-02-26 08:09:48 -05:00
sh_vou.c media: replace all <spaces><tab> occurrences 2018-01-04 13:15:05 -05:00
via-camera.c media: platform: Use gpio_is_valid() 2018-05-09 16:17:15 -04:00
via-camera.h media: fix usage of whitespaces and on indentation 2018-01-04 13:12:01 -05:00
video-mux.c media: platform: video-mux: propagate format from sink to source 2018-05-04 15:56:15 -04:00
vim2m.c media: drivers: remove "/**" from non-kernel-doc comments 2017-11-30 04:19:03 -05:00