diff options
author | Chris Dimich <chris.dimich@boundarydevices.com> | 2023-01-09 10:52:50 -0800 |
---|---|---|
committer | Chris Dimich <chris.dimich@boundarydevices.com> | 2023-01-09 10:52:50 -0800 |
commit | 23bdb51b7858db363e56f7748f5523d44f78ac98 (patch) | |
tree | 1b45857028a39ebbaf3c4fe3875441a5257af772 /dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland/0113-V4L2VDA-Comment-some-unused-ioctl.patch | |
parent | 10c960f0eaa5fb774a676707c5148e29a6ae09b3 (diff) | |
download | meta-freescale-23bdb51b7858db363e56f7748f5523d44f78ac98.tar.gz |
chromium-ozone-wayland: add bbappend and patches as per NXP 5.15.71_2.2.0 rel
Changes include:
- support on i.MX 8 series platform.
- 8MM/8MP/8MQ support h264/hevc/vp8/vp9 hardware decoding.
- 8QM/8QXP support h264/hevc/vp8 hardware decoding.
- support seek, playrate change and resolution change.
- support video acceleration for online media platform such as
Youtube, bilibili.
Signed-off-by: Chris Dimich <chris.dimich@boundarydevices.com>
Diffstat (limited to 'dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland/0113-V4L2VDA-Comment-some-unused-ioctl.patch')
-rw-r--r-- | dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland/0113-V4L2VDA-Comment-some-unused-ioctl.patch | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland/0113-V4L2VDA-Comment-some-unused-ioctl.patch b/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland/0113-V4L2VDA-Comment-some-unused-ioctl.patch new file mode 100644 index 00000000..d587b835 --- /dev/null +++ b/dynamic-layers/chromium-browser-layer/recipes-browser/chromium/chromium-ozone-wayland/0113-V4L2VDA-Comment-some-unused-ioctl.patch | |||
@@ -0,0 +1,108 @@ | |||
1 | From 1cae59ad534e9f10f27de3d92e828be5968f1632 Mon Sep 17 00:00:00 2001 | ||
2 | From: Hou Qi <qi.hou@nxp.com> | ||
3 | Date: Mon, 5 Sep 2022 12:11:36 +0800 | ||
4 | Subject: [PATCH 13/17] V4L2VDA: Comment some unused ioctl | ||
5 | |||
6 | Upstream-Status: Inappropriate [NXP specific] | ||
7 | --- | ||
8 | media/gpu/v4l2/v4l2_device.cc | 22 ++++++++++++++++++++++ | ||
9 | 1 file changed, 22 insertions(+) | ||
10 | |||
11 | diff --git a/media/gpu/v4l2/v4l2_device.cc b/media/gpu/v4l2/v4l2_device.cc | ||
12 | index e090cad6626f7..5a1057c845e85 100644 | ||
13 | --- a/media/gpu/v4l2/v4l2_device.cc | ||
14 | +++ b/media/gpu/v4l2/v4l2_device.cc | ||
15 | @@ -1041,10 +1041,12 @@ V4L2Queue::V4L2Queue(scoped_refptr<V4L2Device> dev, | ||
16 | return; | ||
17 | } | ||
18 | |||
19 | +#if !BUILDFLAG(USE_LINUX_V4L2) | ||
20 | if (reqbufs.capabilities & V4L2_BUF_CAP_SUPPORTS_REQUESTS) { | ||
21 | supports_requests_ = true; | ||
22 | DVLOGF(4) << "Queue supports request API."; | ||
23 | } | ||
24 | +#endif | ||
25 | } | ||
26 | |||
27 | V4L2Queue::~V4L2Queue() { | ||
28 | @@ -2482,10 +2484,14 @@ bool V4L2Request::ApplyCtrls(struct v4l2_ext_controls* ctrls) { | ||
29 | return false; | ||
30 | } | ||
31 | |||
32 | +#if !BUILDFLAG(USE_LINUX_V4L2) | ||
33 | ctrls->which = V4L2_CTRL_WHICH_REQUEST_VAL; | ||
34 | ctrls->request_fd = request_fd_.get(); | ||
35 | |||
36 | return true; | ||
37 | +#else | ||
38 | + return false; | ||
39 | +#endif | ||
40 | } | ||
41 | |||
42 | bool V4L2Request::ApplyQueueBuffer(struct v4l2_buffer* buffer) { | ||
43 | @@ -2497,10 +2503,14 @@ bool V4L2Request::ApplyQueueBuffer(struct v4l2_buffer* buffer) { | ||
44 | return false; | ||
45 | } | ||
46 | |||
47 | +#if !BUILDFLAG(USE_LINUX_V4L2) | ||
48 | buffer->flags |= V4L2_BUF_FLAG_REQUEST_FD; | ||
49 | buffer->request_fd = request_fd_.get(); | ||
50 | |||
51 | return true; | ||
52 | +#else | ||
53 | + return false; | ||
54 | +#endif | ||
55 | } | ||
56 | |||
57 | bool V4L2Request::Submit() { | ||
58 | @@ -2511,7 +2521,11 @@ bool V4L2Request::Submit() { | ||
59 | return false; | ||
60 | } | ||
61 | |||
62 | +#if !BUILDFLAG(USE_LINUX_V4L2) | ||
63 | return HANDLE_EINTR(ioctl(request_fd_.get(), MEDIA_REQUEST_IOC_QUEUE)) == 0; | ||
64 | +#else | ||
65 | + return false; | ||
66 | +#endif | ||
67 | } | ||
68 | |||
69 | bool V4L2Request::IsCompleted() { | ||
70 | @@ -2554,6 +2568,7 @@ bool V4L2Request::Reset() { | ||
71 | return false; | ||
72 | } | ||
73 | |||
74 | +#if !BUILDFLAG(USE_LINUX_V4L2) | ||
75 | // Reinit the request to make sure we can use it for a new submission. | ||
76 | if (HANDLE_EINTR(ioctl(request_fd_.get(), MEDIA_REQUEST_IOC_REINIT)) < 0) { | ||
77 | VPLOGF(1) << "Failed to reinit request."; | ||
78 | @@ -2561,6 +2576,9 @@ bool V4L2Request::Reset() { | ||
79 | } | ||
80 | |||
81 | return true; | ||
82 | +#else | ||
83 | + return false; | ||
84 | +#endif | ||
85 | } | ||
86 | |||
87 | V4L2RequestRefBase::V4L2RequestRefBase(V4L2RequestRefBase&& req_base) { | ||
88 | @@ -2635,6 +2653,7 @@ V4L2RequestsQueue::~V4L2RequestsQueue() { | ||
89 | absl::optional<base::ScopedFD> V4L2RequestsQueue::CreateRequestFD() { | ||
90 | DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); | ||
91 | |||
92 | +#if !BUILDFLAG(USE_LINUX_V4L2) | ||
93 | int request_fd; | ||
94 | int ret = HANDLE_EINTR( | ||
95 | ioctl(media_fd_.get(), MEDIA_IOC_REQUEST_ALLOC, &request_fd)); | ||
96 | @@ -2644,6 +2663,9 @@ absl::optional<base::ScopedFD> V4L2RequestsQueue::CreateRequestFD() { | ||
97 | } | ||
98 | |||
99 | return base::ScopedFD(request_fd); | ||
100 | +#else | ||
101 | + return absl::nullopt; | ||
102 | +#endif | ||
103 | } | ||
104 | |||
105 | absl::optional<V4L2RequestRef> V4L2RequestsQueue::GetFreeRequest() { | ||
106 | -- | ||
107 | 2.17.1 | ||
108 | |||