[00:28] *** eelstrebor has quit IRC (Quit: Ex-Chat)
[00:29] *** djrscally has quit IRC (Ping timeout: 480 seconds)
[01:38] *** xiaer1921 has quit IRC (Ping timeout: 480 seconds)
[02:21] *** BrianG61UK has quit IRC (Quit: Leaving)
[02:21] *** BrianG61UK_ has quit IRC (Quit: Leaving)
[02:33] *** BrianG61UK has joined #linux-media
[02:34] *** BrianG61UK_ has joined #linux-media
[02:53] *** darkapex2 has joined #linux-media
[02:56] *** darkapex1 has quit IRC (Ping timeout: 480 seconds)
[02:59] *** jarthur has quit IRC (Ping timeout: 480 seconds)
[03:31] *** camus1 has joined #linux-media
[03:35] *** camus has quit IRC (Ping timeout: 480 seconds)
[04:02] *** eelstrebor has joined #linux-media
[04:12] *** eelstrebor has quit IRC (Ping timeout: 480 seconds)
[04:16] *** camus1 has quit IRC (Ping timeout: 480 seconds)
[04:17] *** camus has joined #linux-media
[04:24] *** eelstrebor has joined #linux-media
[04:42] *** eelstrebor has quit IRC (Quit: Ex-Chat)
[05:15] *** camus1 has joined #linux-media
[05:17] *** camus has quit IRC (Ping timeout: 480 seconds)
[05:51] *** camus has joined #linux-media
[05:56] *** camus1 has quit IRC (Ping timeout: 480 seconds)
[06:19] *** xiaer1921 has joined #linux-media
[06:25] *** camus1 has joined #linux-media
[06:26] *** sailorek1234 has joined #linux-media
[06:30] *** camus has quit IRC (Ping timeout: 480 seconds)
[06:31] *** jm_h has joined #linux-media
[06:41] *** xiaer1922 has joined #linux-media
[06:46] *** xiaer1921 has quit IRC (Ping timeout: 480 seconds)
[06:46] *** xiaer1922 is now known as xiaer1921
[07:18] <wens> question about MMAP buffers: is DQBUF expected to fill in offset/mem_offset fields? I know the API spec explicitly states QUERYBUF fills them in, but the spec on DQBUF only says that drivers fill in _some_ fields
[07:46] <pinchartl> wens: good question. I think vb2 will fill the offset (to be verified). we may want to specify that in the documentation, although I'm not sure we want to push applications to use the offset at DQBUF time
[07:55] *** djrscally has joined #linux-media
[08:02] <wens> looks like it does, so maybe I'm missing something downstream :/
[08:14] *** GBenji has joined #linux-media
[08:34] <wens> pinchartl: what I am actually interested in is DST_QUEUE_OFF_BASE applied to offset/mem_offset, which does seem to only be done for QUERYBUF in v4l2-mem2mem. See https://elixir.bootlin.com/linux/latest/source/drivers/media/v4l2-core/v4l2-mem2mem.c#L603
[08:40] <pinchartl> ah for M2M
[08:40] <pinchartl> I haven't looked at that
[08:42] <wens> I'm guessing we should apply DST_QUEUE_OFF_BASE in the other code paths that touch buffers as well?
[08:43] <wens> for consistency that is
[09:51] <hverkuil> wens: no, the offsets are only used by mmap, and there you are expected to pass the value given to you by QUERYBUF. For QBUF/DQBUF etc. these fields are ignored.
[09:53] <hverkuil> I think the spec is clear on this: if I look at the VIDIOC_DQBUF description it says: "They just set the type, memory and reserved fields of a struct v4l2_buffer as above, when VIDIOC_DQBUF is called with a pointer to this structure the driver fills the remaining fields or returns an error code."
[09:57] <pratyush> Is there any documentation on set of controls generally expected on a camera sensor driver?
[09:59] *** ao2 has joined #linux-media
[10:06] <djrscally> Looking more at the ancillary links stuff; there'll be some necessary changes to v4l-utils tools too. Can they go in the same series?
[10:07] <djrscally> I guess not actually
[10:07] <hverkuil> djrscally: separate series, but to the same mailinglist.
[10:10] <djrscally> ack, ta
[10:14] <wens> hverkuil: "remaining fields" meaning whatever fields the driver would have filled in for QBUF? or every field? For capture buffers it would also fill in bytesused? It seems a bit ambiguous to me.
[10:15] <hverkuil> I guess it shoudl read: 'all remaining fields'
[10:16] <wens> shouldn't that include mem_offset then? with the offset applied?
[10:20] <wens> tfiga seems to think so # https://crrev.com/c/3308617/comments/de3aee79_4f2072ba
[10:21] <hverkuil> Yes, that includes mem_offset. That said, v4l2-mem2mem.c doesn't add the DST_QUEUE_OFF_BASE in v4l2_m2m_dqbuf or v4l2_m2m_prepare_buf. That's a bug in v4l2-mem2mem.c
[10:21] <wens> hverkuil: Right. I'll send a patch to fix said bug. Thanks for clearing things up.
[10:22] <hverkuil> Note: v4l2_m2m_querybuf, v4l2_m2m_dqbuf and v4l2_m2m_prepare_buf all need to adjust the offsets.
[10:23] <hverkuil> Good catch.
[10:23] <hverkuil> If you are going to make a patch, then can you also update the VIDIOC_DQBUF doc to say "all remaining"?
[10:23] <wens> Should qbuf do it as well? for consistency? AFAICT __fill_v4l2_buffers is called in that code path as well.
[10:23] <wens> hverkuil: Sure.
[10:25] <hverkuil> wens: indeed, v4l2_m2m_qbuf calls it as well.
[10:40] *** hiroh has joined #linux-media
[11:07] *** BrianG61UK has quit IRC (Read error: Connection reset by peer)
[11:10] *** BrianG61UK_ has quit IRC (Read error: Connection reset by peer)
[11:11] *** camus has joined #linux-media
[11:16] *** camus1 has quit IRC (Ping timeout: 480 seconds)
[11:16] *** camus has quit IRC (Remote host closed the connection)
[11:17] *** camus has joined #linux-media
[11:18] *** Bugies has joined #linux-media
[11:38] *** camus has quit IRC (Ping timeout: 480 seconds)
[11:38] *** camus has joined #linux-media
[11:47] *** darkapex3 has joined #linux-media
[11:52] *** darkapex2 has quit IRC (Ping timeout: 480 seconds)
[11:53] *** hiroh has quit IRC (Remote host closed the connection)
[14:09] *** hiroh has joined #linux-media
[14:20] *** eelstrebor has joined #linux-media
[14:22] *** eelstrebor has quit IRC ()
[14:33] *** hiroh has quit IRC (Remote host closed the connection)
[15:10] <GBenji> ezequielg: hi, can you review this patch ? https://patchwork.kernel.org/project/linux-media/list/?series=589375 without it HEVC is broken, thanks 
[15:10] *** sailorek1234 has quit IRC (Quit: sailorek1234)
[15:14] <ezequielg> GBenji: oh! how come HEVC is broken1
[15:14] <ezequielg> !
[15:14] <ezequielg> GBenji: the patch doesn't have a Fixes tag, and it also doesn't say that it's fixing anything that is currently broken.
[15:18] <GBenji> ezequielg: I haven't notice before this morning (while testing Adam patches for power domain) but since the changes about G2 postproc for VP9, HEVC pixel format is wrong (NV12 vs NV12_4L4)
[15:18] <ezequielg> that's clearly unintended.
[15:19] <ezequielg> so I that means we didn't test HEVC properly after merging VP9?
[15:19] <ezequielg> well, before not after.
[15:19] <ezequielg> I guess it's natural given HEVC userspace isn't easy to build.
[15:20] <ezequielg> ndufresne: not having HEVC in GStreamer (or Ffmpeg for that matter) really makes our life harder supporting HEVC.
[15:20] <ezequielg> i am not sure there's any way we can avoid HEVC from breaking often.
[15:21] <ezequielg> GBenji: if HEVC is broken, the standard path is to fix it with a small change that only fixes that, and which has a Fixes tag. That's because patches need to go stable, and your patch above is not -stable material.  
[15:22] <GBenji> I have MR for HEVC decoder: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1079
[15:22] <ndufresne> Don't feel shame, I failed to notice we had broken MPEG2 in gstreamer by merging the VP9 support
[15:22] <ndufresne> (all fixed now)
[15:22] <ndufresne> we all suffer the lack of CI ;-P
[15:23] <ezequielg> well, no shame, it's a staging driver, no CI, bleeding-edge stuff. Just trying to think how to approach this properly.
[15:23] <ndufresne> ezequielg: would you really go backport HEVC patches here ?
[15:23] <ezequielg> absolutely.
[15:24] <ezequielg> but in this case, I'm 99% sure getting a simple fix is easy.
[15:28] <GBenji> since VP9 and HEVC share the same structure it won't be simple to fix the problem. 
[15:29] <GBenji> ezequeilg: I believe it is coming from patch "media: hantro: Add quirk for NV12/NV12_4L4 capture format" but I'm not sure 
[15:32] <GBenji> this patch isn't yet in mainline, only on media_tree
[15:32] * ezequielg yeah, but the idea was specifically to address this.
[15:32] <ezequielg> actually, since we added this specifically for that... how come this is broken?
[15:32] <ezequielg> it was meant to avoid this issue in particular.
[15:32] <ezequielg> if you can be more specific about the issue I have some time now to look at the code.
[15:33] <ezequielg> ... I'll get suck into meetings in a few.
[15:33] <GBenji> the output pixel format isn't correct 
[15:34] <ezequielg> ioctl / traces?
[15:34] <GBenji> no
[15:34] <ezequielg> the output format you mean the CAPTURE queue format?
[15:36] <GBenji> yes, HEVC part of the driver alway generate NV12 but the driver claims it is NV12_4L4
[15:36] <ezequielg> so this is likely correct on vidioc_enum_fmt
[15:36] <ezequielg> but maybe it's incorrect on vidioc_try_fmt
[15:36] <ezequielg> anyway, I can't fix without traces.
[15:37] <ezequielg> ndufresne: I know it's kind of extreme, but the other option I have been considering is to get rid of HEVC in the driver :(
[15:38] <ndufresne> I have no opinion on that, won't that generate more work then reduce ?
[15:38] <ndufresne> my general recommendation is break the API one last time, and port drivers
[15:38] <GBenji> maybe just review my patch that fix the problem and use the same method than VP9 ? won't it be simple ? 
[15:39] <ndufresne> About this NV12_4L4, how come it didn't break in VP9 ?
[15:39] <ezequielg> GBenji: I just explained why your patch cannot be merged as-is.
[15:39] *** camus1 has joined #linux-media
[15:39] <ezequielg> and can't be backported to -stable.
[15:40] <GBenji> the issue isn't yet in -stable anyway 
[15:40] <ezequielg> merging things blindly, without detailed info about what is currently wrong and what they are fixing......
[15:40] <ezequielg> if you send a new version, with a detailed commit description, with traces about what exactly is broken.
[15:40] <ndufresne> so just a better commit message ?
[15:40] *** camus has quit IRC (Ping timeout: 480 seconds)
[15:40] <ezequielg> .. plus a Fixes: tag.
[15:41] <ndufresne> Fixes is good, even if not for backports, its a cross-reference
[15:41] <ezequielg> this is specifically taken care of in the driver, and the driver should enumerate NV12 for G2/HEVC.
[15:41] <ezequielg> so if this is broken, it's clearly a bug that we failed to test.
[15:42] <ezequielg> the negotiation is just 3 or 4 ioctls, one of them is wrong :)
[15:42] <ezequielg> getting a decent commit is really easy, and it's actually daily business.
[16:33] <GBenji> ezequielg: I have added log and tag in v5
[18:24] *** camus1 has quit IRC (Remote host closed the connection)
[18:24] *** camus has joined #linux-media
[18:28] *** broonie has quit IRC (Read error: Connection reset by peer)
[18:28] *** pratyush has quit IRC (Read error: Connection reset by peer)
[18:30] *** pratyush has joined #linux-media
[18:30] *** broonie has joined #linux-media
[18:37] *** broonie has quit IRC (Remote host closed the connection)
[18:38] *** broonie has joined #linux-media
[18:56] <ezequielg> mchehab: hverkuil: any chance we get this hotfix queued https://patchwork.linuxtv.org/project/linux-media/patch/20211208164418.848790-1-benjamin.gaignard@collabora.com/ ?
[19:08] *** gouchi has joined #linux-media
[19:16] *** gouchi has quit IRC (Remote host closed the connection)
[19:17] *** jarthur has joined #linux-media
[19:25] *** gouchi has joined #linux-media
[19:29] *** gouchi has quit IRC (Remote host closed the connection)
[20:00] *** gouchi has joined #linux-media
[20:06] *** ndufresne0 has joined #linux-media
[20:08] *** mmind00_ has joined #linux-media
[20:09] *** swegener_ has joined #linux-media
[20:10] *** mtretter_ has joined #linux-media
[20:10] *** gouchi has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** Bugies has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** djrscally has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** sailus has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** kos_tom has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** mtretter has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** swegener has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** el0y has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** dv_ has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** mmind00 has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** kbingham has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** ndufresne has quit IRC (charon.oftc.net helix.oftc.net)
[20:10] *** djrscally has joined #linux-media
[20:12] *** camus1 has joined #linux-media
[20:13] *** camus has quit IRC (Ping timeout: 480 seconds)
[20:15] *** Bugies has joined #linux-media
[20:15] *** gouchi has joined #linux-media
[20:16] *** sailus has joined #linux-media
[20:16] *** kos_tom has joined #linux-media
[20:16] *** el0y has joined #linux-media
[20:19] *** ndufresne0 is now known as ndufresne
[20:19] *** eelstrebor has joined #linux-media
[20:22] *** dv_ has joined #linux-media
[20:53] *** mmind00_ is now known as mmind00
[20:53] *** mmind00 has quit IRC (Quit: mmind00)
[20:53] *** mmind00 has joined #linux-media
[21:05] *** BrianG61UK has joined #linux-media
[21:41] *** camus1 has quit IRC (Remote host closed the connection)
[21:42] *** camus has joined #linux-media
[22:18] *** gouchi has quit IRC (Remote host closed the connection)
[22:28] *** jm_h has quit IRC (Quit: Leaving)
[22:35] *** ao2 has quit IRC (Quit: Leaving)
[22:47] *** BrianG61UK_ has joined #linux-media
[23:01] *** Bugies has quit IRC (Ping timeout: 480 seconds)