Commit Graph

204 Commits

Author SHA1 Message Date
Maxime Ripard 5aeb07f8bf tree: Run clang-format to conform to the kernel coding style
The coding style has been a bit erratic. Enforce the linux kernel coding
style by reusing their .clang-format file, running clang-format on the
source, and ignoring the few shortcomings that clang-format has at the
moment (especially on aligning the define values).

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 10:12:15 +02:00
Maxime Ripard f831082a09 config: Add missing header
The object_config structure embeds some cedrus.h defines, without including
its header, resulting in a compilation breakage if we don't include
sunxi_cedrus.h before config.h. Fix this.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 10:12:15 +02:00
Maxime Ripard b938824c48 tree: Shorten struct sunxi_cedrus_driver_data name
This long structure name makes it quite difficult to fit within the 80
characters limit. Shorten it.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:34:15 +02:00
Maxime Ripard 6f8697cb1b cedrus: remove useless cast
malloc returns a void pointer that can be casted to any pointer type
without any warning. Remove that cast.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:33:34 +02:00
Maxime Ripard 23be0e66a3 video: Make video_v4l2_format function private
The video_v4l2_format function is defined as inline in the header, but not
static. This will lead to a linker failure when you have multiple files
including the header.

Since it's not used anywhere but in video.c, move it there.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:32:19 +02:00
Maxime Ripard 2208d57b8f h264: shorten the surface_object parameter name
Using the same words but not in the same order for both the type and the
variable name isn't particularly helpful, and prevents to stay within 80
characters. Shorten the name a bit.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:31:17 +02:00
Maxime Ripard 5b50ce871e mpeg2: remove unused includes from header
The MPEG2 header doesn't need any header, since it's only using pointers.
Remove them, and add them to the mpeg2 file when needed.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:30:35 +02:00
Maxime Ripard e968914819 h264: define properly the set controls function
The h264_fill_controls isn't used anywhere, but the h264_set_controls
function is. Since the one defined in the header is _fill_controls, this
leads to a warning at compile time. Fix it.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:29:32 +02:00
Maxime Ripard 5aa1604a6c tree: add the driver_data parameter to the BUFFER macro as well
The BUFFER macro takes an implicit driver_data argument. In order to make
it obvious that we need it, let's put it as an explicit parameter.

Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-17 09:27:57 +02:00
Maxime Ripard 6194f1e7da h264: Adjust for the latest h264 API changes
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-13 16:10:21 +02:00
Maxime Ripard 22b51f5ced h264: Fix build failure introduced by previous commit
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-13 16:10:02 +02:00
Maxime Ripard fd263773cc tree: Change the macros to take the actual arguments they are using
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-13 16:00:08 +02:00
Paul Kocialkowski 18331ff41d video: Removed unused macro
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-11 17:47:22 +02:00
Maxime Ripard 1efa9d877e Add support for H264 decoding
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-11 17:07:15 +02:00
Maxime Ripard d7d8fc744b Abstract away MPEG2 support
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-11 17:07:15 +02:00
Paul Kocialkowski 03fd51b3b3 Reduce switch/case indentation
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-11 15:32:52 +02:00
Paul Kocialkowski a9f3129298 context: Use proper error path
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-11 15:21:17 +02:00
Maxime Ripard 53a8c6e1cf context: Make it clear why we copy the ids
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-07-11 15:20:05 +02:00
Paul Kocialkowski 9f2c069f76 Rework buffer management to be more generic and support untiled format
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-11 15:16:52 +02:00
Paul Kocialkowski 2ca67372f8 Set surface destination index at context time for consistency
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-07-10 10:45:35 +02:00
Paul Kocialkowski 40fdba5c48 Fix deprecated type use for iterator
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-06-22 10:31:06 +02:00
Paul Kocialkowski 000ca7239a object_heap: Sanitize coding style
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-06-22 10:06:14 +02:00
Paul Kocialkowski e23807f928 Add dummy vaPutSurface implementation
As it turns out vaPutSurface is one of the required core functions.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-06-21 09:55:44 +02:00
Paul Kocialkowski bb73d363a3 Sync with latest definitions from the Cedrus driver and requests API
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-06-21 09:30:06 +02:00
Paul Kocialkowski c0a3cd8fcd Remove X11 support with vaPutSurface
Using VAAPI as a video output (through vaPutSurface) is deprecated and
definitely not recommended for any use case. Since we're starting to
support non-X11 pipelines, remove X11 support altogether.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-06-21 09:30:06 +02:00
Paul Kocialkowski 5bedd8d898 v4l2: Update to the latest request API definition
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-05-19 15:57:11 +02:00
Paul Kocialkowski 00c190c740 context: Include missing utils header
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-05-02 16:42:35 +02:00
Paul Kocialkowski 26536a0d8b context: Add warning about index mismatch when allocating source buffers
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
2018-05-02 14:53:42 +02:00
Paul Kocialkowski a412ee8b42 picture: Always sync surface in EndPicture
The libVA API expects rendering to be done after calling EndPicture.
Since SyncSurface calls are generally not issued in a way compatible
with dequeuing buffers (they might be called too early or too late),
always call SyncSurface from EndPicture.

Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-26 10:00:09 +02:00
Paul Kocialkowski d59da24fd9 Separate Rendering and Dsiplaying surface status
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-26 09:51:30 +02:00
Paul Kocialkowski 27b72100b9 surface: Shortcut when the surface is already ready
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 15:33:22 +02:00
Paul Kocialkowski 44bd90add9 mpeg2: Set with and height once, from context
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 15:13:28 +02:00
Paul Kocialkowski ebd5a845b1 context: Register context parameter with object
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 15:05:37 +02:00
Paul Kocialkowski 0db4f300a4 surface: Close request fd on error
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 14:07:53 +02:00
Paul Kocialkowski 3049a90d7e surface: Close request fd when destroying
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:59:34 +02:00
Paul Kocialkowski 1477ba3861 surface: Reinit media request on completion failure
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:56:38 +02:00
Paul Kocialkowski c67253d271 sunxi_cedrus: Use media path for media fd
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:46:49 +02:00
Paul Kocialkowski d716c32511 picture: Remove recurrent log message
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:46:06 +02:00
Paul Kocialkowski b470953795 surface: Avoid memset that overrides metadata
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:34:38 +02:00
Paul Kocialkowski 675b9e965e surface: Remove unused surface_id object member
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:34:22 +02:00
Paul Kocialkowski b01a66dcd8 context: Add missing new line
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:12:21 +02:00
Paul Kocialkowski ab464b4db7 object_heap: Bring back next free object id
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:08:50 +02:00
Paul Kocialkowski 294a6c958a Use all-caps macros instead of object_heap_lookup (for now)
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 11:03:58 +02:00
Paul Kocialkowski d809ff25e2 sunxi_cedrus: Fix fd for capability query
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 10:52:32 +02:00
Paul Kocialkowski f872e345d0 Centralize buffer-related ressources in surface object and avoid dynamic indexes
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 10:48:17 +02:00
Paul Kocialkowski 27c8a97901 utils: Resolve various trivial build issues
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 09:55:50 +02:00
Paul Kocialkowski 8dd3590d7a media: Resolve various trivial build issues
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 09:54:39 +02:00
Paul Kocialkowski 55cea98084 v4l2: Resolve various trivial build issues
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 09:52:29 +02:00
Paul Kocialkowski 6a2cc27acb Include newly-introduced files in automake file
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 09:44:44 +02:00
Paul Kocialkowski bce813fdaf image: Resolve various trivial build issues
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2018-04-25 09:43:14 +02:00