media: vsp1: Convert display lists to use new body pool
authorKieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Fri, 18 May 2018 20:41:59 +0000 (16:41 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Fri, 25 May 2018 22:42:46 +0000 (18:42 -0400)
commit5d7936b8e27dffb528bfb9e155136f2772c288f0
tree39cb0898fe9fe6adcf35c52d91a61833f93c895f
parent5de0473982aab2c0f877565a26c1803eed8d61ac
media: vsp1: Convert display lists to use new body pool

Adapt the dl->body0 object to use an object from the body pool. This
greatly reduces the pressure on the TLB for IPMMU use cases, as all of
the lists use a single allocation for the main body.

The CLU and LUT objects pre-allocate a pool containing three bodies,
allowing a userspace update before the hardware has committed a previous
set of tables.

Bodies are no longer 'freed' in interrupt context, but instead released
back to their respective pools. This allows us to remove the garbage
collector in the DLM.

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>
drivers/media/platform/vsp1/vsp1_clu.c
drivers/media/platform/vsp1/vsp1_clu.h
drivers/media/platform/vsp1/vsp1_dl.c
drivers/media/platform/vsp1/vsp1_dl.h
drivers/media/platform/vsp1/vsp1_lut.c
drivers/media/platform/vsp1/vsp1_lut.h