2021-06-19.log

mntmnAsmadeus: i wonder how the AVHWAccel is supposed to be picked up00:00
mntmnmhm configure:HWACCEL_LIST=$(find_things_extern hwaccel AVHWAccel libavcodec/hwaccels.h)00:02
mntmnoops00:04
mntmnahh it is featured in h264dec.c00:37
mntmn#if CONFIG_H264_V4L2REQUEST_HWACCEL00:37
mntmn                               HWACCEL_V4L2REQUEST(h264),00:37
mntmnok, poked enough in this for today, no success00:49
mntmnit feels like there is no real/obvious path in ffmpeg (the tool) to get this decoder to get picked up by anything01:14
mntmnthe h264 AVCodec has a .hw_configs field which is a list of AVCodecHWConfigInternal... but i don't even understand who is evaluating this list01:16
mntmni've put a breakpoint in avcodec_default_get_format() in decode.c. it gets hit. avctx->hw_device_ctx is 0x001:21
mntmnit checks a pixel format (of the input?), it is yuv420p. it does not have the AV_PIX_FMT_FLAG_HWACCEL flag. 01:22
_BnuWeird, that's typically the only one that has the hardware acceleration support.01:41
_Bnu(Since all YouTube videos/streams/etc are 4:2:0.)01:42
mntmnmakes sense01:46
_BnuWell, and DVDs and blu-rays and snake video and all that...01:55
mntmnanyway there's something fundamental i'm missing here02:01
- wiedi (QUIT: Read error: Connection reset by peer) (~wiedi@2a01:138:a015:15:3971:d225:f6e0:f8e)03:58
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.30)04:16
+ freakazoid333 (~freakazoi@72.168.176.30)04:17
+ wiedi (~wiedi@2a01:138:a015:15:30a8:5aa8:ce44:3085)08:10
+ odnes (~odnes@109-178-154-27.pat.ren.cosmote.net)08:27
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.30)09:07
+ freakazoid333 (~freakazoi@72.168.176.34)09:08
- artfwo (QUIT: Ping timeout: 272 seconds) (~artfwo@2a02:8109:8500:26d0:fd06:e800:101b:2f14)09:24
+ artfwo (~artfwo@2a02:8109:8500:26d0:ad5e:7dd5:ea9:c904)09:36
- S0rin (QUIT: Ping timeout: 268 seconds) (~S0rin@user/s0rin)10:12
+ S0rin (~S0rin@user/s0rin)10:13
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)11:06
+ freakazoid333 (~freakazoi@72.168.176.34)11:06
- odnes (QUIT: Remote host closed the connection) (~odnes@109-178-154-27.pat.ren.cosmote.net)11:36
+ odnes (~odnes@109-178-154-27.pat.ren.cosmote.net)11:36
mntmn> If a decoder supports hwaccel, then it must call ff_get_format().14:11
mntmnin pthread_frame.c14:11
mntmnh264 does not do this14:12
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)14:16
+ freakazoid333 (~freakazoi@72.168.176.34)14:17
+ rasmus (~rasmus@c83-253-223-217.bredband.tele2.se)14:19
- rasmus (PART: Disconnected: closed) (~rasmus@c83-253-223-217.bredband.tele2.se)14:36
_BnuThat's fine... no one needs it...14:39
- odnes (QUIT: Ping timeout: 268 seconds) (~odnes@109-178-154-27.pat.ren.cosmote.net)14:52
+ odnes (~odnes@109-178-154-27.pat.ren.cosmote.net)15:00
mntmnmhm so the magic has to happen in h264_slice.c get_pixel_format(H264Context *h, int force_callback) perhaps15:04
mntmnah and this also calls ff_thread_get_format() -> ff_get_format() in the end15:06
mntmnoops, #if CONFIG_H264_V4L2REQUEST_HWACCEL branch is not hit15:12
mntmnbut: configuration: --enable-v4l2-request --enable-libdrm --enable-libudev --enable-shared15:12
mntmnhuh config.h:#define CONFIG_H264_V4L2REQUEST_HWACCEL 015:13
mntmni guess the configuration line is incomplete15:15
mntmnwhat's missing is --enable-hwaccel=h264_v4l2request15:17
mntmn>:O15:18
mntmnlove how grumpy this post is https://forum.pine64.org/showthread.php?tid=1401815:39
- erlehmann (QUIT: Quit: Just say no, then the virus can not enter your body without your consent.) (~erle@dynamic-046-114-039-105.46.114.pool.telefonica.de)15:40
+ erlehmann (~erle@dynamic-046-114-039-105.46.114.pool.telefonica.de)15:40
mntmnlol > WARNING: Disabled h264_v4l2request_hwaccel because not all dependencies are satisfied: v4l2_request h264_v4l2_request15:40
mntmnwat > configure:check_cc h264_v4l2_request linux/videodev2.h "int i = V4L2_PIX_FMT_H264_SLICE;"15:42
mntmnah this needs some linux kernel header patch15:43
mntmn> #define V4L2_PIX_FMT_H264_SLICE v4l2_fourcc('S', '2', '6', '4') /* H264 parsed slices */15:45
mntmnslices sound tasty15:46
_Bnu8D15:59
_BnuYes, I love when they break V4L in every single kernel...15:59
mntmnfourcc factory goes brrrr16:00
mntmnyeah so it needs up-to-date v4l2-controls.h and videodev2.h from linux uapi headers16:11
mntmnalso, there are too many codecs in the world16:15
mntmnok progress: > [h264 @ 0x5590310b40] v4l2_request_probe_media_device: opening /dev/media0 failed, Permission denied (13)16:19
mntmnok it works!16:20
mntmn>  58:        445          0          0          0     GPCv2   7 Level     38300000.video-codec16:24
_Bnuownloading...16:29
mntmnok so mpv can do it!16:41
mntmn> ./mpv --hwdec-codecs=all --hwdec=auto --vo=gpu ~/Videos/lumixtest1.mp4 -v16:41
mntmn(had to build mpv from source to pick up the custom libavcodec.so and friends in /usr/local/lib)16:41
mntmncool, can watch movies with almost no CPU use like this16:43
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)16:58
+ freakazoid333 (~freakazoi@72.168.176.34)16:58
mntmnok here are my notes on getting H.264 HW decode to run, based on Asmadeus' work of updating the patchset: https://community.mnt.re/t/notes-on-building-ffmpeg-and-mpv-to-use-the-hardware-h-264-decoder/30517:04
_BnuNow we can finally watch 4k YouTube videos using StreamLink... except YouTube limits StreamLink to 720p, haha.17:06
mntmnhue hue17:07
mntmnwell, having almost no CPU usage with 720p is also neat 17:07
mntmnalso, the cpu was sometimes struggling with 1080p, but i don't have many 1080p videos to test, i mostly... use... 720p videos17:08
mntmn_Bnu: can mpv directly play back youtubes?17:08
_BnuIf you set it as the player in StreamLink, yeah.17:09
mntmnah oh17:09
_BnuCan also open twitch.tv links and most other streaming services that don't block it.17:09
mntmnlets give this a spin17:10
ezequielgmntmn: so so glad to read your notes.17:14
ezequielgfrom 9 to 10 how painful was that :P17:14
mntmnezequielg: haha yes :D17:15
ezequielg(also: hevc and vp9 is just around the corner)17:15
_BnuHEVC is never around the corner due to licensing issues.17:16
_BnuUnless you count select commercial streaming services.17:16
mntmnezequielg: it was a good level of pain, but not the highest17:16
ezequielgthe header stuff is due to ffmpeg not shipping its own private copy of headers. i.e. https://kernelnewbies.org/KernelHeaders17:16
mntmnyeah >:|17:16
mntmn> error: This plugin does not support protected videos, try youtube-dl instead17:16
mntmnhehe17:16
ezequielg_Bnu: what's the difference between hevc and h264 wrt to licensing issues?17:17
ezequielg(100% curiosity)17:18
_BnuHEVC is H.265, not H.264.17:18
mntmnhmm17:19
mntmnmntmn@reform:~/src$ ~/.local/bin/streamlink --subprocess-cmdline 'https://www.youtube.com/watch?v=1zZaRH00Q54' 1080p17:19
mntmnerror: The stream specified cannot be translated to a command17:19
mntmn_Bnu: i think the question was about, what's the licensing difference between the 217:19
_BnuThe difference is that you need a paid license to broadcast H.265 to anyone.17:20
_BnuIt can never be used for anything, pretty much. Except for staring at your own local recording or something.17:20
ezequielgthe thing I really haven't yet figured out is why I have customer that insist in HEVC, instead of going VP9.17:20
mntmnah hm it uses vlc17:20
ezequielgunless you tell me hevc really beats the shit out of vp9.17:21
_BnuHEVC more commonly has a hardware decoder and better quality at the same bit rate, but if this is due to the maturity of the encoders or not is unclear.17:21
ezequielgfwiw, I don't judge people/companies preferences, I just support whatever they want :)17:21
_BnuYeah I mean they might have a paid license for H.265.17:22
ezequielgwell, on the reform you have: mpeg-2, h264 and vp8 through the g1 block, and hevc and vp9 through the g2 block. (i.e. everything except av1?)17:22
_BnuBut basically for it to be used on something like Twitch, each individual person streaming would need to have a license, as would Twitch.17:22
_BnuThey just really didn't want people to use it for anything fun, I guess.17:23
mntmnok i guess i need to wrap "mpv --hwdec=auto" in a script, or does it have a config file...17:23
mntmnhas a config file.17:24
ezequielgis that really needed?17:24
ezequielgmntmn: btw, thanks a lot for putting that together.17:25
mntmnezequielg: yes, by default mpv does not use hwdec17:25
ezequielgif get any bug reports, please point people towards the linux-media ML, we are happy to support everyone.17:25
mntmnezequielg: because they argue that software decoding is better quality17:25
ezequielgO_o ok..17:26
_BnuIt's true, to some degree. Because hardware decoders often ignore video stream metadata.17:26
mntmnso what works: putting a line hwdec=auto in ~/.config/mpv/mpv.conf17:26
mntmnworks with streamlink now!17:26
_BnuSo you have to match what they expect, typically limited range BC709.17:26
_Bnu*BT17:26
mntmn~/.local/bin/streamlink --player=mpv 'https://www.youtube.com/watch?v=1zZaRH00Q54' 1080p17:27
mntmnworks!17:27
_Bnu:317:27
mntmnuses very little cpu17:27
_BnuNow I can watch 1080p Twitch all day while keeping the Reform cooler...17:27
ezequielgfwiw, the hardware decoder on the reform (hantro) is ran against a conformance test suite, although not on a CI yet. Doesn't this mean it should produce the same results as software decoding? At least for the cases where the test vectors are passing.17:28
_BnuOr maybe watch 1080p Twitch on one screen while I play Nibb... code on the other one...17:28
ezequielgmpv should try hwdec, and fallback to swdec if it fails. I guess.17:28
ezequielgshould/could.17:28
_BnuFrom what I recall, they're really against that.17:29
ezequielgas there are some features that the hw decoder doesn't support.17:29
ezequielgthinking some more, makes sense to default to swdec.17:29
_BnuBecause with hwdev they can't choose the chroma offset point for decoding, color space, color range, things like that.17:29
ezequielgyeah.17:29
_Bnu*hwdec17:29
ezequielgafter all, my dell laptop still crashes on some va-api so... :)17:29
mntmnezequielg: there are some bugs in hw decoders 17:30
mntmnezequielg: that's why they don't wanna rely on it17:30
ezequielgyeah, makes total sense.17:30
mntmnok so 1080p via streamlink->mpv is crisp. framerate is a bit low but i think it is this video... need something that has higher fps perhaps17:31
ezequielghttps://www.youtube.com/watch?v=zj7lpntqVj8 ?17:33
ezequielgalso, https://kodi.wiki/view/Samples17:33
mntmni tried this ~/.local/bin/streamlink --player=mpv 'https://www.youtube.com/watch?v=3NzKWPBEYBo' 1080p6017:34
mntmnbut audio/video desyncs17:34
mntmnit can't decode fast enough _or_ render the frames out fast enough17:34
ezequielgalso https://jell.yfish.us/17:34
mntmnah, good to have some test clips, thanks17:35
ezequielgI wonder what's the limit on the MX8MQ.17:36
mntmnyeah for example, jellyfish-20-mbps-hd-h264.mkv looks really crisp but drops a lot of frames17:36
ezequielgnot good.17:37
mntmnmaybe it's because of the blitting (i guess it's not zero copy)17:37
ezequielgshould be zero-copy by all means.17:37
mntmnUsing hardware decoding (drm-copy).17:37
mntmnVO: [gpu] 1920x1080 nv1217:37
ezequielgwhat do you run as gfx?17:38
mntmnwhat do you mean gfx?17:38
mntmni'm using sway (wayland compositor, based on wlroots)17:39
_BnuWeird, doesn't it support NV12/YV420 textures?17:39
mntmnalso tried mpv --gpu-context=wayland jellyfish-20-mbps-hd-h264.mkv17:39
ezequielgright, so there are a few things to blame.17:40
ezequielgmaybe something like perf top can give some insight?17:40
mntmnwhat's that?17:41
ezequielgjust a profiling tool17:41
mntmnbtw 720p60 is fine17:42
mntmnwait, this uses software decode lol17:42
ezequielgfwiw, "drm-copy" looks like there's a copy?17:44
_Bnu1080p60 is typically fine for me in software on VLC, as long as I go fullscreen. Windowed is like total no-go, haha.17:44
mntmnezequielg: i thought so too, but i know nothing about mpv internals17:46
ezequielgwould be interesting to test weston and sway.17:46
ezequielgmntmn: there should be an option to list the hwaccels, in mpv? (maybe not)17:47
ezequielgalso, just fyi: decoding playback can be full-zero copy, without even touching the gpu. this can be achieved if the display controller supports the pixel format (i.e. NV12), and with support from the compositor. the compositor should just "route" the client to the overlay NV12 plane. I'd say that works provided the other planes are occluded (i.e. in fullscreen only).17:48
ezequielgweston does it, dunno about sway.17:49
mntmnah, planes17:51
ezequielgyour notes could be a good starting point, in any case, for further digging :)17:51
+ ZylonMaster (~dldske@2603-7000-c601-f02e-0000-0000-0000-0353.res6.spectrum.com)17:55
ZylonMasterhmm quiet chat room17:57
mntmnZylonMaster: you are just 30 minutes late...18:02
ZylonMasteroh?18:03
ZylonMasterwhat do you mean?18:03
mntmnZylonMaster: 30 minutes ago, it was not quiet!18:03
ZylonMasterah k18:03
mntmnezequielg: ok so i don't think mpv uses planes, and instead the decoded output is copied to a texture and this is then displayed using opengl.18:03
ZylonMastercurious, but hows the pocket mnt reform development 18:03
ZylonMastergoing18:03
ZylonMaster?18:03
ZylonMasterit looks awesome18:03
mntmnZylonMaster: thanks, it is still in the user research phase. we're figuring out sizes and keyboard arrangements, pointing device18:04
ZylonMasterdo you have any estimate as to the price?18:04
ZylonMasteri assume no right?18:04
ZylonMasteryou guys work early btw it seems18:05
ZylonMaster:)18:05
mntmni do not18:05
mntmnearly?18:05
ZylonMasterk18:05
ZylonMasteryeah18:05
ZylonMasterat least in my mind its 11:30am here18:05
ZylonMasterwell 12pm18:05
ZylonMasteractually18:05
ZylonMaster11:30 wouldve been how early id need to be here for it to be busy18:06
mntmnit's saturday so i don't really work officially, and it's 18h here18:06
ZylonMasteroh18:06
ZylonMasterk18:06
ZylonMasterIts a shame FSF wont promote your product yet will promote anything from purism18:06
ZylonMasterim losing hope in them to be honest18:06
ZylonMasterwell not anything18:06
ZylonMasterbut you know what i mean18:06
ZylonMasterlol18:06
ZylonMaster:/18:07
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)18:07
ZylonMastersometime down the road do you think there will be an instruction set, for brightness control on the bios level?18:07
ZylonMasteror should I ask other users18:08
ZylonMasteror idk18:08
ZylonMaster?18:08
+ freakazoid333 (~freakazoi@72.168.176.34)18:08
ZylonMasterbattery life is important aka18:08
ZylonMaster:)18:08
mntmnZylonMaster: i'm not really a fan of FSF and don't care about RYF18:08
ZylonMasterahh18:09
ZylonMastergood call18:09
ZylonMasterthey are making themselves look bad18:09
mntmnZylonMaster: there is no bios on ARM systems.18:09
ZylonMasterright now18:09
ZylonMasteroh18:09
ZylonMasterwhat is it then18:09
ZylonMasteri guess18:09
ZylonMaster?18:09
ZylonMasteru boot?18:09
mntmnZylonMaster: yeah, u-boot or barebox for example18:09
ZylonMasteri must have gotten confused18:09
ZylonMasterk18:09
ZylonMasterI just would love to squeeze out more battery life with arm systems, 24 hours if possible18:09
ZylonMaster:)18:09
mntmnZylonMaster: well, go ahead 18:10
ZylonMasterindeed18:10
ezequielgZylonMaster: the world is round and time goes back and forth. It's 1pm here, I'm in the future.18:10
ZylonMasterhow big is that pocket reform anyways18:10
ezequielgor the past?18:10
mntmnthe brightness is controlled by a PWM output on the system-on-chip (in this case, i.MX8MQ)18:10
ZylonMaster4.5 inches?18:10
ZylonMasterah18:10
mntmnZylonMaster: the display is 5.5 inch currently18:10
ZylonMastercool18:10
ZylonMaster5.518:10
ZylonMasteris nice18:10
mntmnbut we might still change it.18:10
ZylonMasteroh18:11
ZylonMastertoo big or too small?18:11
mntmnthat's why we're doing user research18:11
ZylonMastersmaller might be good imo18:11
mntmnwe're giving it to people to test and write down what they're experiencing18:11
ZylonMaster5 inches is good enough18:11
ZylonMasterfor me anyways18:11
ZylonMasterheh18:11
ZylonMasterYou know who also btw doesnt think much of FSF in its current state now?18:12
ZylonMasterhyperbola18:12
ZylonMastergood minds think alike eh18:12
ZylonMasteranywho, you are not at beta testing yet are you?18:12
ZylonMasterfor mnt reform pocket?18:12
mntmnno.18:13
ZylonMasterah18:13
ZylonMasterjust checking18:13
mntmnalso, i don't want to go into any politics around FSF etc here. this channel is mainly about discussing problems/experiences with MNT Reform. 18:13
ZylonMasterhow much battery life do you think you can get out if it with the usual settings btw18:13
ZylonMastersorry18:13
ZylonMasteri didnt know18:13
ZylonMastermy bad18:14
ZylonMasterill say nothing more on fsf if you want18:14
mntmnno problem, i just wanted to clarify it. i also can't really discuss a lot about the pocket device yet because there is too much change happening still.18:14
ZylonMasteryeah18:14
ZylonMastersorry, about that too, I can be impatient18:14
ZylonMasterlol18:14
ZylonMasterit looks like something I will want18:14
mntmnyeah, we will still take a long time to develop it. no rush18:15
ZylonMasterlike a year or two?18:15
mntmnyeah, maybe a year18:15
ZylonMasterk18:15
ZylonMastergood to know18:15
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)18:15
ZylonMasterThat's fine with me18:15
mntmncurrently i have to focus on MNT Reform shipping and bugfixing18:15
ZylonMastersort of18:15
ZylonMasterk18:15
+ freakazoid333 (~freakazoi@72.168.176.34)18:15
ZylonMastergood things require time18:15
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)18:16
+ freakazoid333 (~freakazoi@72.168.176.34)18:16
ZylonMasterif you do that device right, I bet I won't need to squeeze to get 12 hours of battery life out of it even while its running with screen on.   screen size is like 2x smaller anyways18:17
ZylonMasteranywho, Ill stop talking now if you like18:17
ZylonMastermy curiosity is very high18:17
ZylonMasteron this18:17
- ZylonMaster (QUIT: Read error: Connection reset by peer) (~dldske@2603-7000-c601-f02e-0000-0000-0000-0353.res6.spectrum.com)18:20
+ kdhsk (~dldske@2603-7000-c601-f02e-0000-0000-0000-0353.res6.spectrum.com)18:20
* kdhsk -> ZylonMaster18:20
- ZylonMaster (QUIT: Client Quit) (~dldske@2603-7000-c601-f02e-0000-0000-0000-0353.res6.spectrum.com)18:23
- Neelfyn (QUIT: Quit: Connection closed for inactivity) (uid180106@id-180106.stonehaven.irccloud.com)18:32
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)18:42
+ freakazoid333 (~freakazoi@72.168.176.34)18:42
- odnes (QUIT: Ping timeout: 258 seconds) (~odnes@109-178-154-27.pat.ren.cosmote.net)18:47
marexmntmn: hey, I recall you had problems with mxsfb, right ?19:39
mntmnmarex: well, depends 19:47
mntmnmarex: i had a bus contention problem with lcdif19:48
marexmntmn: seems there is more to that19:48
marexmntmn: did you ever see image corruption on that lcdif ?19:48
marex(due to that contention)19:48
mntmnmarex: i think only temporary, dropouts, like pixel feed couldn't keep up19:49
marexmntmn: do you still have it ?19:49
mntmnmarex: also i had lcdif and nwl-dsi get out of sync19:49
mntmnmarex: no, i fixed it with magic secret pokes19:49
marexNOC QoS, right ?19:49
mntmnmarex: "advanced QoS" registers or something, the top level noc lumps lcdif and pcie into "other" masters19:50
mntmnfor example if cpu, gpu, vpu or something is starving your lcdif, you can probably fix that in NoC19:51
mntmnbut not pcie19:51
marexmntmn: I think there is more to it than just the NOC19:52
marexmntmn: I have a few lcdif patches already, but I didnt find the root cause yet19:53
mntmnmarex: i guess you are not on imx8mq? or are you?19:53
mntmnmarex: also, interested in what you are patching and why19:53
mntmnbtw i'm still amazed how fast and stable chromium 93 is with ANGLE... there are like zero glitches19:57
marexmntmn: 8mm , the lcdif IP is the same, I'm seeing the image on the display shifted to the right and wrapped around19:58
marexmntmn: apparently that also happened on mx6sx19:58
mntmnmarex: ah, i had this problem too and very rarely get it now19:59
marex(thats why I think there is more to it than just NOC)19:59
mntmnmarex: yes19:59
marexmntmn: excellent19:59
mntmnmarex: i have seen it under very heavy bus load maybe...19:59
marexmntmn: yep20:00
mntmnmarex: what have you found out? i know agx (guido from purism) also did 1 hack/fix for this, but i think it was not conclusive... had to do something with reset20:00
marexmntmn: there is recover_on_underflow bit in ctrl1 and outstanding_reqs field in ctrl2 register, but neither really helps to recover from it fully20:00
mntmnah20:00
marexmntmn: also, there is no underflow IRQ, which is real weird20:00
mntmnyes i remember from my experiments20:01
marexI mean, I have those enabled, but they dont fire , nor is the IRQ bit set, which is odd20:01
mntmnwith driving lcdif directly20:01
marex;-)20:01
mntmnyeah, i think the irq just goes nowhere20:01
mntmnit's kind of not implemented20:01
mntmnmaybe it was used by the older socs20:01
mntmnyou can poll for the status though, in my experience it does complain about underflow. silently20:02
mntmnmaybe you can reset it on underflow? like poll every few seconds or so20:02
marexmntmn: what is not implemented ?20:02
mntmnthe irq line20:02
marexmntmn: from the lcdif to the soc irq controller or inside the lcdif ?20:03
marexmntmn: the former is implemented, the later should be as well20:03
marexbut with this lcdif, nothing surprises me anymore20:03
mntmnmarex: ah, it is? i thought there was no way to get the irq in the soc20:03
mntmni probably remember it wrong20:04
marexmntmn: you should at least get VSYNC IRQ delivered on your SoC already20:04
marexthat's the only IRQ line the MXSFB has I think20:04
mntmnyeah, ok20:05
marexbut maybe you have a point, hold on20:06
marexthe mx8 datasheet talks about icoll, which is mx28 stuff20:06
marexhm no, all the relevant LCD irqs are wired to a single ICOLL IRQ on the MX28, so there is only one IRQ from the lcdif20:07
mntmnok20:07
mntmni remember there was some kind of urgent/alert line that you can set up that goes nowhere20:07
mntmnlike, you can say, dear lcdif please alert me if this buffer goes low20:08
mntmnbut it is not in the manual where this alert goes20:08
marexmntmn: I will look into the older datasheets a bit more, that's a good point20:08
marex33.2.4LCDIF Interrupts20:10
marexLCDIF supports a number of interrupts to aid controlling and status reporting of the20:10
marexblock. All the interrupts have individual mask bits for enabling or disabling each of them.20:10
marexThey all get funneled through a single interrupt line connected to the interrupt collector20:10
marex(ICOLL). 20:10
marexso no, there is single IRQ line20:10
mntmnah, gotcha, so it should end up in the same interrupt line that is used for vblank, yes?20:11
marexyep20:13
mntmnok... so then theoretically the driver could recover actively20:13
marexexcept there is no underflow bit set when this wraparound happens20:14
marexmntmn: so anyway, once I have some patches, I'll let you know so you can test too20:15
mntmnmarex: cool!20:15
marexmntmn: thanks for confirming this also happens on 8mq, that's good20:15
mntmnyeah. i wasn't sure if this was something mipi specific but it makes a lot of sense that it's just lcdif20:18
mntmnalso, it does not happen with DCSS20:18
marexmntmn: it is likely only lcdif, since the mx6sx had DPI directly out of the LCDIF20:19
mntmnok20:19
marexmntmn: pity, I no longer have that hardware :(20:19
- freakazoid333 (QUIT: Read error: Connection reset by peer) (~freakazoi@72.168.176.34)20:21
+ freakazoid333 (~freakazoi@72.168.176.34)20:22
mntmngiving FEX another spin https://github.com/FEX-Emu/FEX21:10
- adjtm (QUIT: Remote host closed the connection) (~adjtm@188.26.199.251)22:26
+ adjtm (~adjtm@2a0c:5a80:1b04:a00:151f:79bd:1956:4d81)22:29
Asmadeusmntmn: nice! (ffmpeg)22:55
mntmnAsmadeus: yeah! thanks for the prep work!~22:55
mntmni also got amd64 glxgears to run in FEX with native GL lib22:55
Asmadeusezequielg: you can explicitely select which hwaccel you want, and they also suggest putting hwdec=auto-safe in your config "if you really have to" so we might want to make sure v4l2 request goes into the 'safe' list at some point22:55
mntmngood to know22:56
AsmadeusI'll update my repo with the two modifications you listed on the forum for others22:57
mntmnAsmadeus: super, thanks23:00
+ adjtm_ (~adjtm@188.26.199.251)23:00
- adjtm (QUIT: Remote host closed the connection) (~adjtm@2a0c:5a80:1b04:a00:151f:79bd:1956:4d81)23:00
Asmadeushm, device == NULL probably ought to return an error instead of success? did you get a crash on this before adjusting permissions?23:01
AsmadeusSome check does seem to be needed though, other .device_create() have a check23:03
mntmnAsmadeus: i took this from another patchset but i still have to verify if its really needed23:03
Asmadeusfound it, https://patchwork.ffmpeg.org/project/ffmpeg/patch/20190903010230.96236-26-ffmpeg@tmm1.net/#45109 ?23:05
mntmnAsmadeus: yes23:05
Asmadeusbtw I was expecting configure to fail if you didn't have recent kernel headers, sorry about that.. Sonuds like we'll want to add such a check before retrying to push upstream...23:10
mntmnAsmadeus: it does fail, but only if adding the additional configure option that i was missing at first (and that wasn't mentioned in the patchset)23:11
Asmadeusah! ok23:11
mntmnAsmadeus: the full configure line is ./configure --enable-v4l2-request --enable-libdrm --enable-libudev --enable-shared --enable-hwaccel=h264_v4l2request23:12
mntmnAsmadeus: but i think the original patchset didn't mention --enable-hwaccel=h264_v4l2request23:12
mntmnand it will build anyway! but it will never activate23:12
Asmadeusevil thing, thanks for figuring it out23:13
Asmadeusok you can take that extra patch off your post if you want, I think it's also missing a 'checkout' at some point to use my v4l2-request branch?23:14
AsmadeusAnd I'll definitely play with it a bit more when the reform arrives around the end of the week :)23:14
mntmnoh, let me see23:17
mntmnyou are right, checkout is missing, and i'll remove the patch23:18
- erlehmann (QUIT: Ping timeout: 252 seconds) (~erle@dynamic-046-114-039-105.46.114.pool.telefonica.de)23:27
+ erlehmann (~erle@dynamic-046-114-038-222.46.114.pool.telefonica.de)23:41

Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!