Jump to content

Myy

Recommended Posts

So, I tried to adapt @Kwiboo and @jernej patches on my 5.6 branch, but this made the kernel fail to boot for no visible reason.

Since I were able to boot it without the VPU patches, I'm convinced that it's their readaptation that broke something.

The patches applied are here : https://github.com/Miouyouyou/RockMyy64

If someone wants to play with them and determine which one break the boot process.



 

Link to comment
Share on other sites

Ok, turns out that the kernel was unable to find the UUID I asked for the root partition, and was waiting "forever".

 

So, it boots, but I still can't compile FFMPEG correctly. I'm trying to determine which patch added "num_entry_point_offsets" to "struct v4l2_ctrl_hevc_slice_params"

Link to comment
Share on other sites

Have you made any progress?

I have a 5.6.3 (and 5.7-rc1) kernel built with the latest patches off the list from ezequiel:

https://github.com/rubenvb/PKGBUILDs/tree/master/core/linux-aarch64-rc

 

With that, I get this output from v4l2-ctl:

# v4l2-ctl --list-devices
rockchip,rk3399-vpu-enc (platform: hantro-vpu):
        /dev/video0
        /dev/video2
        /dev/media1

rockchip-rga (platform:rga):
        /dev/video3

rkvdec (platform:rkvdec):
        /dev/video1
        /dev/media0

# v4l2-ctl -d 1 --list-formats --list-ctrls

Codec Controls

    h264_sequence_parameter_set 0x00990ce8 (unknown): type=110 flags=has-payload
     h264_picture_parameter_set 0x00990ce9 (unknown): type=111 flags=has-payload
            h264_scaling_matrix 0x00990cea (unknown): type=112 flags=has-payload
          h264_slice_parameters 0x00990ceb (unknown): type=113 flags=has-payload
         h264_decode_parameters 0x00990cec (unknown): type=114 flags=has-payload
               h264_decode_mode 0x00990ced (menu)   : min=1 max=1 default=1 value=1
                h264_start_code 0x00990cee (menu)   : min=1 max=1 default=1 value=1
ioctl: VIDIOC_ENUM_FMT
        Type: Video Capture Multiplanar

        [0]: 'NV12' (Y/CbCr 4:2:0)

Yet I can't seem to get anything like FFmpeg to actually use this device as hwaccel. I tried various Kwiboo branches and even some from bbrezillon and ezequielgarcia.

Do you have any idea what might be missing in the mix (as in: can you compare anything with a V4L2-enabled system that does work?).

 

Thanks!

Link to comment
Share on other sites

Same thing here.

 

As always, I think it will come down to :

 

  • Generating a H264 sample frame
  • Looking at the documentation about how to send this to the driver
  • Get the result

 

But everytime I think about the 2 first steps, I'm like... "Ugh... do I really have to do this ?".

 

If that's still the case with the 5.7, I'll try to build a test framework.

 

Quite frankly, I looked at the FFMPEG patches and I still don't know how the FFMPEG select the right decoder in the first place.

As with all big projects, there might be a few "magic tricks" here and there to do the whole auto-selection of each component with the least amount of code.

And that's without counting the fact that "ffmpeg -hwaccels" list another kind of "hwaccels" so you won't know anything based on that output.

 

I also heard there were a "libva" library built around V4L2 request system. I guess this might worth a try, if it still exists and is still developed.

Link to comment
Share on other sites

With the current Linux 5.6 patchset I use (including some extra v4l2/hantro patches):

https://github.com/rubenvb/PKGBUILDs/tree/ef846cee6a1c439e6d6a6560065959a5949011f5/core/linux-aarch64

This gives me the hantro-vpu (enc and dec), rga, and rkvdec devices (/dev/video[0-3] in that order)

 

And when building this @Kwiboo branch of ffmpeg:

https://github.com/Kwiboo/FFmpeg/tree/v4l2-request-hwaccel-4.0.4-m2mdecoder

 

I can get ffmpeg configured/built with

../kwiboo/configure --enable-libdrm --enable-libv4l2 --enable-v4l2-request --enable-libudev --enable-static --disable-shared

to output "{h263,h264,hevc,mpeg1,mpeg2,mpeg4,vc1}request" vdecoders. The static build is to prevent any system so's from interfering with my testing.

Strangely, for other branches such as "v4l2-request-hwaccel-master" or "v4l2-request-hwaccel-4.2.2" it seems not to register/build the v4l2request decoders with identical configure arguments.

 

Trying to decode a 4K mp4 Big Buck Bunny file to another file (with sudo, as I haven't looked into fixing whatever the permission issue with the /dev/video devices is) gives me this output:

$ sudo ./ffmpeg -c:v h264_v4l2request -i ~/satahome/video/bbb_sunflower_2160p_30fps_normal.mp4 test.mp4
ffmpeg version 4.0.4-Leia-18.4-13-g117bea3616-Kodi Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9.3.0 (GCC)
  configuration: --enable-libdrm --enable-libv4l2 --enable-v4l2-request --enable-libudev --enable-static --disable-shared
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/home/ruben/satahome/video/bbb_sunflower_2160p_30fps_normal.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2013-12-18T14:43:04.000000Z
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    composer        : Sacha Goedegebure
  Duration: 00:10:34.53, start: 0.000000, bitrate: 7980 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 3840x2160 [SAR 1:1 DAR 16:9], 7498 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2013-12-18T14:43:04.000000Z
      handler_name    : GPAC ISO Video Handler
    Stream #0:1(und): Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default)
    Metadata:
      creation_time   : 2013-12-18T14:43:06.000000Z
      handler_name    : GPAC ISO Audio Handler
    Stream #0:2(und): Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default)
    Metadata:
      creation_time   : 2013-12-18T14:43:06.000000Z
      handler_name    : GPAC ISO Audio Handler
    Side data:
      audio service type: main
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_try_format: pixelformat 875967048 not supported for type 10
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_try_format: pixelformat 875967048 not supported for type 10
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_try_format: pixelformat 875967048 not supported for type 10
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_try_format: pixelformat 875967048 not supported for type 2
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaad06a7e20] v4l2request_init: failed to initialize
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (h264_v4l2request) -> mpeg4 (native))
  Stream #0:2 -> #0:1 (ac3 (native) -> aac (native))
Error while opening decoder for input stream #0:0 : Invalid argument

This is further than I've ever gotten with any of this. Seems like pixel formats ought to be fixable. I'm just not sure what any of these numbers mean.

Maybe I just found the one video subformat that isn't supported with the current code/patches?

Or maybe it's picking the wrong device (trying to use the request api with the hantro devices or something)?

 

I hope this triggers/helps someone to puzzle together the missing pieces :).

Edited by rubenvb
added link to commit to not confuse future readers
Link to comment
Share on other sites

OK, I tried renaming /dev/video3 to /dev/video0, and then I get this last bit out of ffmpeg:

[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_try_format: pixelformat 875967048 not supported for type 10
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_try_format: pixelformat 875967048 not supported for type 10
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_probe_video_device: opening /dev/video3 failed, No such file or directory (2)
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_try_format: pixelformat 875967048 not supported for type 2
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_probe_video_device: try output format failed
[h264_v4l2request @ 0xaaaaf7b65e20] v4l2request_init: failed to initialize
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (h264_v4l2request) -> mpeg4 (native))
  Stream #0:2 -> #0:1 (ac3 (native) -> aac (native))
Error while opening decoder for input stream #0:0 : Invalid argument

Which seems to imply it does try to open /dev/video3 (which is the rkvdec I wanted it to use) but finds that the mystical "type 2" does not support "pixelformat 875967048".

 

Note I am running this on a headless SSH session, but I'm relatively sure this doesn't impact any of this (does it?).

Link to comment
Share on other sites

38 minutes ago, rubenvb said:

 

That branch was just something I played with for stateful decoding on RPi and Amlogic and not something that was finished nor do I expect it to be working.

 

https://github.com/Kwiboo/FFmpeg/commits/v4l2-request-hwaccel-4.2.2 is the branch we use in LibreELEC. I was able to hw decode h264 with that branch and vanilla linux 5.6.6 on my RK3288 Tinker Board S a few hours ago.

Also you should not need the --enable-libv4l2 configure flag, --enable-libdrm --enable-v4l2-request --enable-libudev should be enough to enable the request api hwaccels.

 

What device are you testing on? I have not done any testing with rkvdec driver and there is no rk3328/rk3399 hantro driver for h264 in upstream media tree. Mpeg-2 and VP8 should work across rk3288/rk3328/rk3399.

I do not expect h264 rkvdec to be working without changes to ffmpeg since there was some flags that got changed and now do not match between upstream rkvdec driver and my ffmpeg branch.

 

I am hoping to get some time this weekend to update ffmpeg to work with rkvdec and hopefully submit the initial hantro h264 decoder for rk3328/rk3399 vpu2 to upstream.

Link to comment
Share on other sites

14 hours ago, Kwiboo said:

 

That branch was just something I played with for stateful decoding on RPi and Amlogic and not something that was finished nor do I expect it to be working.

 

https://github.com/Kwiboo/FFmpeg/commits/v4l2-request-hwaccel-4.2.2 is the branch we use in LibreELEC. I was able to hw decode h264 with that branch and vanilla linux 5.6.6 on my RK3288 Tinker Board S a few hours ago.

Also you should not need the --enable-libv4l2 configure flag, --enable-libdrm --enable-v4l2-request --enable-libudev should be enough to enable the request api hwaccels.

 

What device are you testing on? I have not done any testing with rkvdec driver and there is no rk3328/rk3399 hantro driver for h264 in upstream media tree. Mpeg-2 and VP8 should work across rk3288/rk3328/rk3399.

I do not expect h264 rkvdec to be working without changes to ffmpeg since there was some flags that got changed and now do not match between upstream rkvdec driver and my ffmpeg branch.

 

I'm testing on a NanoPi M4 (rk3399), using the v8 H264 decoder patches together with the v2 VP9 patches that were submitted to the list in the past few weeks. I noticed these were recently pushed to the LibreELEC repository as well.

It has two VPUs, one of which is the hantro which should also be able to decode H264, but I haven't seen anything (patches or anything I've tried manually) to suggest that I can get it to work on my NanoPi M4.

 

14 hours ago, Kwiboo said:

 

I am hoping to get some time this weekend to update ffmpeg to work with rkvdec and hopefully submit the initial hantro h264 decoder for rk3328/rk3399 vpu2 to upstream.

 

Do let me know when/if you have something semi-functional. I am eager to try (and provide feedback) and get my can-just-handle-but-not-quite 1080p H264 CPU-based playback replaced by something smoother.

 

Keep up the awesome work, you are making these devices more than worthwhile!

Link to comment
Share on other sites

On 5/2/2020 at 3:26 PM, rubenvb said:

Do let me know when/if you have something semi-functional. I am eager to try (and provide feedback) and get my can-just-handle-but-not-quite 1080p H264 CPU-based playback replaced by something smoother.

 

Keep up the awesome work, you are making these devices more than worthwhile!

 

Thanks!

 

I have now updated the https://github.com/Kwiboo/FFmpeg/commits/v4l2-request-hwaccel-4.2.2 (and the -master) branch, commits have been squashed, updated and split apart to hopefully make it easier to use with mainline linux without the work-in-progress cedurs/hantro patches that has not yet been upstreamed.

 

I would recommend you to test the commits up to and including "HACK: hwcontext_drm: do not require drm device", that should be safe to use on v5.5 or newer kernel without out-of-tree patches for cedrus/hantro/rkvdec.

Also added the initial vp9 hwaccel, picked from https://github.com/bbrezillon/FFmpeg/commits/v4l2-vp9, but have not yet had time to test it more then a simple compile test. I am expecting that I will make some minor updates to the vp9 hwaccel once I have run some tests.

Link to comment
Share on other sites

On 5/2/2020 at 3:26 PM, rubenvb said:

I haven't seen anything (patches or anything I've tried manually) to suggest that I can get it to work on my NanoPi M4.

 

I have some patches for activating h264 decoding using the hantro vpu on rk3328/rk3399 at https://github.com/Kwiboo/linux-rockchip/commits/v4l2-5.4-work-in-progress-v5.4, they only ever reached mailing list as a RFC.

 

Hoping to find some time soon to rework the field encoded content (interlaced) support and also to make it possible to use the hantro vpu for h264 decoding on rk3328/rk3399.

Hantro h264 does seem to be limited to 1080p on those SoCs so will probably not bring any benefit over rkvdec.

Link to comment
Share on other sites

Using that branch and "-hwaccel drm" I get about 13fps for a 4k Big Buck Bunny H.264 file.

Reading the debug output I do see it using the v4l2_request path and the rkvdec device to decode the H.264 stream:

https://pastebin.com/Jn2mPCJr

 

Without the -hwaccel drm option, I get similar performance, but no v4l2 related output, so right now it doesn't seem to accelerate decoding as far as I can tell.

 

This was all done from an ssh terminal, with a kodi instance running in the background, but I doubt all this matters as it seems to be accessing the hardware just fine and ffmpeg was using a single Cortex A72 BIG core during decoding (in both cases).

Link to comment
Share on other sites

Hello, I join the discussion.

 

I'm trying the hantro/v4l2 system on a rk3288 tv box, Ubuntu Focal with recently compiled 5.5.19 kernel with patches coming from LibreELEC's master repository from Rockchip project applied. Hantro driver module is enabled and loaded. FFmpeg is taken from @Kwiboo's repository (v4l2-request-hwaccel-4.2.2) and compiled right now.

 

FFmpeg refuses to decode the stream with h264_v4l2m2m decoder and says it can't find a valid device.

 

Dmesg:

Spoiler

paolo@xt:~$ dmesg
[    0.000000] Booting Linux on physical CPU 0x500
[    0.000000] Linux version 5.5.19-rockchip (root@armbianbuild) (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36))) #trunk SMP PREEMPT Fri May 15 21:28:01 UTC 2020
[    0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: XT-Q8L-V10-RK3288
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] cma: Reserved 16 MiB at 0x7f000000
[    0.000000] On node 0 totalpages: 524288
[    0.000000]   Normal zone: 1728 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 196608 pages, LIFO batch:63
[    0.000000]   HighMem zone: 327680 pages, LIFO batch:63
[    0.000000] percpu: Embedded 20 pages/cpu s51160 r8192 d22568 u81920
[    0.000000] pcpu-alloc: s51160 r8192 d22568 u81920 alloc=20*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 522560
[    0.000000] Kernel command line: earlyprintk root=UUID=6011cf83-f999-4cb4-8ff2-c014253b73ae rootwait rootfstype=ext4 console=ttyS2,115200n8 console=tty1 panic=10 consoleblank=0 loglevel=7 ubootpart= usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u   cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] allocated 2097152 bytes of page_ext
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 2023184K/2097152K available (15360K kernel code, 1098K rwdata, 3212K rodata, 2048K init, 4695K bss, 57584K reserved, 16384K cma-reserved, 1294336K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 45744 entries in 90 pages
[    0.000000] ftrace: allocated 90 pages with 4 groups
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000]  Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] random: get_random_bytes called from start_kernel+0x340/0x504 with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000008] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000026] Switching to timer-based delay loop, resolution 41ns
[    0.001734] Console: colour dummy device 80x30
[    0.002422] printk: console [tty1] enabled
[    0.002484] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[    0.002536] pid_max: default: 32768 minimum: 301
[    0.002736] LSM: Security Framework initializing
[    0.002783] Yama: becoming mindful.
[    0.002894] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.002942] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.003059] *** VALIDATE tmpfs ***
[    0.003963] *** VALIDATE proc ***
[    0.004346] *** VALIDATE cgroup1 ***
[    0.004383] *** VALIDATE cgroup2 ***
[    0.004419] CPU: Testing write buffer coherency: ok
[    0.004481] CPU0: Spectre v2: using BPIALL workaround
[    0.004955] CPU0: thread -1, cpu 0, socket 5, mpidr 80000500
[    0.028041] Setting up static identity map for 0x100000 - 0x100060
[    0.036030] rcu: Hierarchical SRCU implementation.
[    0.052142] smp: Bringing up secondary CPUs ...
[    0.085725] CPU1: thread -1, cpu 1, socket 5, mpidr 80000501
[    0.085737] CPU1: Spectre v2: using BPIALL workaround
[    0.117914] CPU2: thread -1, cpu 2, socket 5, mpidr 80000502
[    0.117926] CPU2: Spectre v2: using BPIALL workaround
[    0.150118] CPU3: thread -1, cpu 3, socket 5, mpidr 80000503
[    0.150129] CPU3: Spectre v2: using BPIALL workaround
[    0.150394] smp: Brought up 1 node, 4 CPUs
[    0.150431] SMP: Total of 4 processors activated (192.00 BogoMIPS).
[    0.150462] CPU: All CPU(s) started in SVC mode.
[    0.151554] devtmpfs: initialized
[    0.166308] VFP support v0.3: implementor 41 architecture 3 part 30 variant d rev 0
[    0.166885] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.166949] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.168029] xor: measuring software checksum speed
[    0.205009]    arm4regs  :  1042.000 MB/sec
[    0.245117]    8regs     :   803.000 MB/sec
[    0.285234]    32regs    :   801.000 MB/sec
[    0.325349]    neon      :  1407.000 MB/sec
[    0.325379] xor: using function: neon (1407.000 MB/sec)
[    0.325471] pinctrl core: initialized pinctrl subsystem
[    0.326283] thermal_sys: Registered thermal governor 'step_wise'
[    0.327824] NET: Registered protocol family 16
[    0.330922] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.331571] audit: initializing netlink subsys (disabled)
[    0.333275] audit: type=2000 audit(0.328:1): state=initialized audit_enabled=0 res=1
[    0.333342] cpuidle: using governor ladder
[    0.333454] cpuidle: using governor menu
[    0.334797] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.334843] hw-breakpoint: maximum watchpoint size is 4 bytes.
[    0.361722] gpio gpiochip0: (gpio0): added GPIO chardev (254:0)
[    0.361862] gpiochip_setup_dev: registered GPIOs 0 to 23 on device: gpiochip0 (gpio0)
[    0.362320] gpio gpiochip1: (gpio1): added GPIO chardev (254:1)
[    0.362445] gpiochip_setup_dev: registered GPIOs 24 to 55 on device: gpiochip1 (gpio1)
[    0.362862] gpio gpiochip2: (gpio2): added GPIO chardev (254:2)
[    0.363023] gpiochip_setup_dev: registered GPIOs 56 to 87 on device: gpiochip2 (gpio2)
[    0.363451] gpio gpiochip3: (gpio3): added GPIO chardev (254:3)
[    0.363566] gpiochip_setup_dev: registered GPIOs 88 to 119 on device: gpiochip3 (gpio3)
[    0.363980] gpio gpiochip4: (gpio4): added GPIO chardev (254:4)
[    0.364105] gpiochip_setup_dev: registered GPIOs 120 to 151 on device: gpiochip4 (gpio4)
[    0.364518] gpio gpiochip5: (gpio5): added GPIO chardev (254:5)
[    0.364640] gpiochip_setup_dev: registered GPIOs 152 to 183 on device: gpiochip5 (gpio5)
[    0.365051] gpio gpiochip6: (gpio6): added GPIO chardev (254:6)
[    0.365166] gpiochip_setup_dev: registered GPIOs 184 to 215 on device: gpiochip6 (gpio6)
[    0.365598] gpio gpiochip7: (gpio7): added GPIO chardev (254:7)
[    0.365745] gpiochip_setup_dev: registered GPIOs 216 to 247 on device: gpiochip7 (gpio7)
[    0.366090] gpio gpiochip8: (gpio8): added GPIO chardev (254:8)
[    0.366214] gpiochip_setup_dev: registered GPIOs 248 to 263 on device: gpiochip8 (gpio8)
[    0.502444] raid6: neonx8   gen()   606 MB/s
[    0.570616] raid6: neonx8   xor()   617 MB/s
[    0.638811] raid6: neonx4   gen()   673 MB/s
[    0.706960] raid6: neonx4   xor()   690 MB/s
[    0.775173] raid6: neonx2   gen()   418 MB/s
[    0.843313] raid6: neonx2   xor()   623 MB/s
[    0.911486] raid6: neonx1   gen()   340 MB/s
[    0.979633] raid6: neonx1   xor()   464 MB/s
[    1.047812] raid6: int32x8  gen()   187 MB/s
[    1.116134] raid6: int32x8  xor()   134 MB/s
[    1.184322] raid6: int32x4  gen()   145 MB/s
[    1.252355] raid6: int32x4  xor()   145 MB/s
[    1.320542] raid6: int32x2  gen()   105 MB/s
[    1.388845] raid6: int32x2  xor()   128 MB/s
[    1.456971] raid6: int32x1  gen()    94 MB/s
[    1.524994] raid6: int32x1  xor()   105 MB/s
[    1.525024] raid6: using algorithm neonx4 gen() 673 MB/s
[    1.525052] raid6: .... xor() 690 MB/s, rmw enabled
[    1.525079] raid6: using neon recovery algorithm
[    1.525948] reg-fixed-voltage vsys-regulator: GPIO lookup for consumer (null)
[    1.525962] reg-fixed-voltage vsys-regulator: using device tree for GPIO lookup
[    1.525998] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/vsys-regulator[0]'
[    1.526025] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/vsys-regulator[0]'
[    1.526042] reg-fixed-voltage vsys-regulator: using lookup tables for GPIO lookup
[    1.526055] reg-fixed-voltage vsys-regulator: No GPIO consumer (null) found
[    1.526657] reg-fixed-voltage sdmmc-regulator: GPIO lookup for consumer (null)
[    1.526670] reg-fixed-voltage sdmmc-regulator: using device tree for GPIO lookup
[    1.526701] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/sdmmc-regulator[0]'
[    1.526751] of_get_named_gpiod_flags: parsed 'gpio' property of node '/sdmmc-regulator[0]' - status (0)
[    1.526795] gpio gpiochip7: Persistence not supported for GPIO 11
[    1.527292] reg-fixed-voltage flash-regulator: GPIO lookup for consumer (null)
[    1.527304] reg-fixed-voltage flash-regulator: using device tree for GPIO lookup
[    1.527334] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/flash-regulator[0]'
[    1.527359] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/flash-regulator[0]'
[    1.527376] reg-fixed-voltage flash-regulator: using lookup tables for GPIO lookup
[    1.527388] reg-fixed-voltage flash-regulator: No GPIO consumer (null) found
[    1.527866] reg-fixed-voltage usb-host-regulator: GPIO lookup for consumer (null)
[    1.527879] reg-fixed-voltage usb-host-regulator: using device tree for GPIO lookup
[    1.527908] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/usb-host-regulator[0]'
[    1.527953] of_get_named_gpiod_flags: parsed 'gpio' property of node '/usb-host-regulator[0]' - status (0)
[    1.527987] gpio gpiochip0: Persistence not supported for GPIO 14
[    1.528043] vcc_host_5v: supplied by vcc_sys
[    1.528650] reg-fixed-voltage usb-otg-regulator: GPIO lookup for consumer (null)
[    1.528664] reg-fixed-voltage usb-otg-regulator: using device tree for GPIO lookup
[    1.528695] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/usb-otg-regulator[0]'
[    1.528738] of_get_named_gpiod_flags: parsed 'gpio' property of node '/usb-otg-regulator[0]' - status (0)
[    1.528771] gpio gpiochip0: Persistence not supported for GPIO 12
[    1.528827] vcc_otg_5v: supplied by vcc_sys
[    1.529861] iommu: Default domain type: Translated
[    1.534377] SCSI subsystem initialized
[    1.534709] usbcore: registered new interface driver usbfs
[    1.534818] usbcore: registered new interface driver hub
[    1.534934] usbcore: registered new device driver usb
[    1.535080] mc: Linux media interface: v0.10
[    1.535148] videodev: Linux video capture interface: v2.00
[    1.535346] pps_core: LinuxPPS API ver. 1 registered
[    1.535378] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    1.535440] PTP clock support registered
[    1.537152] Bluetooth: Core ver 2.22
[    1.537240] NET: Registered protocol family 31
[    1.537270] Bluetooth: HCI device and connection manager initialized
[    1.537313] Bluetooth: HCI socket layer initialized
[    1.537349] Bluetooth: L2CAP socket layer initialized
[    1.537405] Bluetooth: SCO socket layer initialized
[    1.537520] NetLabel: Initializing
[    1.537549] NetLabel:  domain hash size = 128
[    1.537573] NetLabel:  protocols = UNLABELED CIPSOv4 CALIPSO
[    1.537699] NetLabel:  unlabeled traffic allowed by default
[    1.538882] clocksource: Switched to clocksource arch_sys_counter
[    2.996984] VFS: Disk quotas dquot_6.6.0
[    2.997132] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    2.997469] FS-Cache: Loaded
[    2.997500] *** VALIDATE ramfs ***
[    2.997796] CacheFiles: Loaded
[    3.013855] NET: Registered protocol family 2
[    3.014951] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 12288 bytes, linear)
[    3.015064] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    3.015197] TCP bind hash table entries: 8192 (order: 5, 163840 bytes, linear)
[    3.015521] TCP: Hash tables configured (established 8192 bind 8192)
[    3.015699] UDP hash table entries: 512 (order: 2, 24576 bytes, linear)
[    3.015800] UDP-Lite hash table entries: 512 (order: 2, 24576 bytes, linear)
[    3.016209] NET: Registered protocol family 1
[    3.017065] RPC: Registered named UNIX socket transport module.
[    3.017104] RPC: Registered udp transport module.
[    3.017131] RPC: Registered tcp transport module.
[    3.017158] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    3.018122] Trying to unpack rootfs image as initramfs...
[    3.777150] Freeing initrd memory: 8496K
[    3.778713] hw perfevents: enabled with armv7_cortex_a12 PMU driver, 7 counters available
[    3.781232] Initialise system trusted keyrings
[    3.781569] workingset: timestamp_bits=14 max_order=19 bucket_order=5
[    3.791299] zbud: loaded
[    3.793723] FS-Cache: Netfs 'nfs' registered for caching
[    3.794588] NFS: Registering the id_resolver key type
[    3.794645] Key type id_resolver registered
[    3.794674] Key type id_legacy registered
[    3.794718] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    3.795102] SGI XFS with ACLs, security attributes, realtime, scrub, quota, no debug enabled
[    3.797680] *** VALIDATE xfs ***
[    3.869116] async_tx: api initialized (async)
[    3.869160] Key type asymmetric registered
[    3.869188] Asymmetric key parser 'x509' registered
[    3.869291] bounce: pool size: 64 pages
[    3.869370] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
[    3.869660] io scheduler mq-deadline registered
[    3.869697] io scheduler kyber registered
[    3.879227] dma-pl330 ff250000.dma-controller: Loaded driver for PL330 DMAC-241330
[    3.879281] dma-pl330 ff250000.dma-controller:       DBUFF-128x8bytes Num_Chans-8 Num_Peri-20 Num_Events-16
[    3.880472] dma-pl330 ffb20000.dma-controller: Loaded driver for PL330 DMAC-241330
[    3.880525] dma-pl330 ffb20000.dma-controller:       DBUFF-64x8bytes Num_Chans-5 Num_Peri-6 Num_Events-10
[    3.881461] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    3.884029] ff180000.serial: ttyS0 at MMIO 0xff180000 (irq = 38, base_baud = 1500000) is a 16550A
[    3.885261] ff190000.serial: ttyS1 at MMIO 0xff190000 (irq = 39, base_baud = 1500000) is a 16550A
[    3.886498] ff690000.serial: ttyS2 at MMIO 0xff690000 (irq = 40, base_baud = 1500000) is a 16550A
[    4.928436] printk: console [ttyS2] enabled
[    4.934369] ff1b0000.serial: ttyS3 at MMIO 0xff1b0000 (irq = 41, base_baud = 1500000) is a 16550A
[    4.947044] rockchip-vop ff930000.vop: Adding to iommu group 0
[    4.954367] rockchip-vop ff940000.vop: Adding to iommu group 1
[    4.965160] rockchip-drm display-subsystem: bound ff930000.vop (ops 0xc10767dc)
[    4.974015] rockchip-drm display-subsystem: bound ff940000.vop (ops 0xc10767dc)
[    4.982374] rockchip-drm display-subsystem: failed to bind ff980000.hdmi (ops 0xc107971c): -517
[    4.992493] rockchip-drm display-subsystem: master bind failed: -517
[    5.000092] usbcore: registered new interface driver udl
[    5.011881] brd: module loaded
[    5.030952] loop: module loaded
[    5.037904] mdio_bus fixed-0: GPIO lookup for consumer reset
[    5.037918] mdio_bus fixed-0: using lookup tables for GPIO lookup
[    5.037931] mdio_bus fixed-0: No GPIO consumer reset found
[    5.038061] libphy: Fixed MDIO Bus: probed
[    5.042782] tun: Universal TUN/TAP device driver, 1.6
[    5.048781] CAN device driver interface
[    5.054701] rk_gmac-dwmac ff290000.ethernet: IRQ eth_lpi not found
[    5.061822] rk_gmac-dwmac ff290000.ethernet: PTP uses main clock
[    5.068630] rk_gmac-dwmac ff290000.ethernet: phy regulator is not available yet, deferred probing
[    5.080299] usbcore: registered new interface driver rt2500usb
[    5.086983] usbcore: registered new interface driver rt73usb
[    5.093430] usbcore: registered new interface driver rt2800usb
[    5.100071] usbcore: registered new interface driver rtl8xxxu
[    5.106625] usbcore: registered new interface driver rndis_wlan
[    5.113362] usbcore: registered new interface driver cdc_ether
[    5.119998] usbcore: registered new interface driver rndis_host
[    5.127164] dwc2 ff540000.usb: ff540000.usb supply vusb_d not found, using dummy regulator
[    5.136600] dwc2 ff540000.usb: ff540000.usb supply vusb_a not found, using dummy regulator
[    5.203401] dwc2 ff540000.usb: DWC OTG Controller
[    5.208762] dwc2 ff540000.usb: new USB bus registered, assigned bus number 1
[    5.216752] dwc2 ff540000.usb: irq 45, io mem 0xff540000
[    5.223128] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.05
[    5.232440] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    5.240573] usb usb1: Product: DWC OTG Controller
[    5.245881] usb usb1: Manufacturer: Linux 5.5.19-rockchip dwc2_hsotg
[    5.253027] usb usb1: SerialNumber: ff540000.usb
[    5.259121] hub 1-0:1.0: USB hub found
[    5.263425] hub 1-0:1.0: 1 port detected
[    5.268853] dwc2 ff580000.usb: ff580000.usb supply vusb_d not found, using dummy regulator
[    5.278292] dwc2 ff580000.usb: ff580000.usb supply vusb_a not found, using dummy regulator
[    5.414986] dwc2 ff580000.usb: EPs: 10, dedicated fifos, 972 entries in SPRAM
[    5.423685] dwc2 ff580000.usb: DWC OTG Controller
[    5.429036] dwc2 ff580000.usb: new USB bus registered, assigned bus number 2
[    5.437019] dwc2 ff580000.usb: irq 46, io mem 0xff580000
[    5.443351] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.05
[    5.452666] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    5.460802] usb usb2: Product: DWC OTG Controller
[    5.466109] usb usb2: Manufacturer: Linux 5.5.19-rockchip dwc2_hsotg
[    5.473263] usb usb2: SerialNumber: ff580000.usb
[    5.479453] hub 2-0:1.0: USB hub found
[    5.483765] hub 2-0:1.0: 1 port detected
[    5.490899] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    5.498248] ehci-platform: EHCI generic platform driver
[    5.504685] usbcore: registered new interface driver usb-storage
[    5.512277] usbcore: registered new interface driver iforce
[    5.518669] usbcore: registered new interface driver xpad
[    5.524923] usbcore: registered new interface driver usbtouchscreen
[    5.532693] i2c /dev entries driver
[    5.541286] fan53555-regulator 0-0040: FAN53555 Option[8] Rev[1] Detected!
[    5.549077] fan53555-reg: supplied by vcc_sys
[    5.556494] fan53555-regulator 0-0041: FAN53555 Option[8] Rev[1] Detected!
[    5.564277] fan53555-reg: supplied by vcc_sys
[    5.571871] REG1: supplied by vcc_sys
[    5.577022] REG2: supplied by vcc_sys
[    5.582207] REG3: supplied by vcc_sys
[    5.587390] REG4: supplied by vcc_sys
[    5.592733] REG5: supplied by vcc_sys
[    5.598053] REG6: supplied by vcc_sys
[    5.603394] REG7: supplied by vcc_sys
[    5.607804] vcca_18: Bringing 3300000uV into 1800000-1800000uV
[    5.616033] REG8: supplied by vcc_sys
[    5.621337] REG9: supplied by vcc_sys
[    5.626369] REG10: supplied by vcc_20
[    5.631738] REG11: supplied by vcc_20
[    5.637100] REG12: supplied by vcc_20
[    5.645788] vcc_flash: supplied by vcc_io
[    5.656486] device-mapper: ioctl: 4.41.0-ioctl (2019-09-16) initialised: dm-devel@redhat.com
[    5.666034] usb 1-1: new high-speed USB device number 2 using dwc2
[    5.673127] random: fast init done
[    5.677478] device-mapper: raid: Loading target version 1.15.1
[    5.684336] Bluetooth: HCI UART driver ver 2.3
[    5.689364] Bluetooth: HCI UART protocol H4 registered
[    5.695156] Bluetooth: HCI UART protocol ATH3K registered
[    5.695738] usb 1-1: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.00
[    5.701286] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    5.710441] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    5.717572] usbcore: registered new interface driver bfusb
[    5.725501] usb 1-1: Product: USB 2.0 Hub [MTT]
[    5.732297] hub 1-1:1.0: USB hub found
[    5.736898] usbcore: registered new interface driver btusb
[    5.741158] hub 1-1:1.0: 4 ports detected
[    5.747847] pwrseq_simple sdio0_pwrseq: GPIO lookup for consumer reset
[    5.751759] pwrseq_simple sdio0_pwrseq: using device tree for GPIO lookup
[    5.751816] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/sdio0_pwrseq[0]' - status (0)
[    5.751854] gpio gpiochip4: Persistence not supported for GPIO 28
[    5.751890] pwrseq_simple sdio0_pwrseq: GPIO lookup for consumer reset
[    5.751901] pwrseq_simple sdio0_pwrseq: using device tree for GPIO lookup
[    5.751950] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/sdio0_pwrseq[1]' - status (0)
[    5.751978] gpio gpiochip4: Persistence not supported for GPIO 29
[    5.752520] pwrseq_emmc emmc-pwrseq: GPIO lookup for consumer reset
[    5.752533] pwrseq_emmc emmc-pwrseq: using device tree for GPIO lookup
[    5.752584] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/emmc-pwrseq[0]' - status (0)
[    5.752618] gpio gpiochip3: Persistence not supported for GPIO 9
[    5.752888] sdhci: Secure Digital Host Controller Interface driver
[    5.759863] sdhci: Copyright(c) Pierre Ossman
[    5.764774] Synopsys Designware Multimedia Card Interface Driver
[    5.772761] dwmmc_rockchip ff0c0000.dwmmc: IDMAC supports 32-bit address mode.
[    5.780999] dwmmc_rockchip ff0c0000.dwmmc: Using internal DMA controller.
[    5.788659] dwmmc_rockchip ff0c0000.dwmmc: Version ID is 270a
[    5.795225] dwmmc_rockchip ff0c0000.dwmmc: DW MMC controller at irq 30,32 bit host data width,256 deep fifo
[    5.806246] vcc_sd: supplied by vcc_io
[    5.811234] dwmmc_rockchip ff0c0000.dwmmc: GPIO lookup for consumer cd
[    5.811247] dwmmc_rockchip ff0c0000.dwmmc: using device tree for GPIO lookup
[    5.811304] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/dwmmc@ff0c0000[0]' - status (0)
[    5.811340] gpio gpiochip6: Persistence not supported for GPIO 22
[    5.811378] dwmmc_rockchip ff0c0000.dwmmc: Got CD GPIO
[    5.817198] dwmmc_rockchip ff0c0000.dwmmc: GPIO lookup for consumer wp
[    5.817209] dwmmc_rockchip ff0c0000.dwmmc: using device tree for GPIO lookup
[    5.817242] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/dwmmc@ff0c0000[0]'
[    5.817270] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/dwmmc@ff0c0000[0]'
[    5.817288] dwmmc_rockchip ff0c0000.dwmmc: using lookup tables for GPIO lookup
[    5.817300] dwmmc_rockchip ff0c0000.dwmmc: No GPIO consumer wp found
[    5.886927] usb 2-1: new high-speed USB device number 2 using dwc2
[    5.912799] usb 2-1: New USB device found, idVendor=152d, idProduct=2338, bcdDevice= 1.00
[    5.922015] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=5
[    5.930051] usb 2-1: Product: USB to ATA/ATAPI Bridge
[    5.935740] usb 2-1: Manufacturer: JMicron
[    5.936263] mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    5.940365] usb 2-1: SerialNumber: D578E70881C3
[    5.941927] usb-storage 2-1:1.0: USB Mass Storage device detected
[    5.963585] scsi host0: usb-storage 2-1:1.0
[    5.964898] dwmmc_rockchip ff0d0000.dwmmc: IDMAC supports 32-bit address mode.
[    5.976600] dwmmc_rockchip ff0d0000.dwmmc: Using internal DMA controller.
[    5.984301] dwmmc_rockchip ff0d0000.dwmmc: Version ID is 270a
[    5.990855] dwmmc_rockchip ff0d0000.dwmmc: DW MMC controller at irq 31,32 bit host data width,256 deep fifo
[    6.002547] dwmmc_rockchip ff0d0000.dwmmc: GPIO lookup for consumer wp
[    6.002560] dwmmc_rockchip ff0d0000.dwmmc: using device tree for GPIO lookup
[    6.002597] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/dwmmc@ff0d0000[0]'
[    6.002625] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/dwmmc@ff0d0000[0]'
[    6.002644] dwmmc_rockchip ff0d0000.dwmmc: using lookup tables for GPIO lookup
[    6.002656] dwmmc_rockchip ff0d0000.dwmmc: No GPIO consumer wp found
[    6.002738] dwmmc_rockchip ff0d0000.dwmmc: allocated mmc-pwrseq
[    6.009429] mmc_host mmc1: card is non-removable.
[    6.135037] mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    6.142926] usb 1-1.1: new low-speed USB device number 3 using dwc2
[    6.158931] dwmmc_rockchip ff0f0000.dwmmc: IDMAC supports 32-bit address mode.
[    6.167222] dwmmc_rockchip ff0f0000.dwmmc: Using internal DMA controller.
[    6.174995] dwmmc_rockchip ff0f0000.dwmmc: Version ID is 270a
[    6.181637] dwmmc_rockchip ff0f0000.dwmmc: DW MMC controller at irq 32,32 bit host data width,256 deep fifo
[    6.193235] dwmmc_rockchip ff0f0000.dwmmc: GPIO lookup for consumer wp
[    6.193247] dwmmc_rockchip ff0f0000.dwmmc: using device tree for GPIO lookup
[    6.193284] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/dwmmc@ff0f0000[0]'
[    6.193324] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/dwmmc@ff0f0000[0]'
[    6.193364] dwmmc_rockchip ff0f0000.dwmmc: using lookup tables for GPIO lookup
[    6.193377] dwmmc_rockchip ff0f0000.dwmmc: No GPIO consumer wp found
[    6.193467] dwmmc_rockchip ff0f0000.dwmmc: allocated mmc-pwrseq
[    6.200198] mmc_host mmc2: card is non-removable.
[    6.213950] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[    6.218617] mmc_host mmc2: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    6.231918] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    6.239742] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    6.244005] sdhci-pltfm: SDHCI platform and OF driver helper
[    6.252849] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/power[0]' - status (0)
[    6.252887] gpio gpiochip7: Persistence not supported for GPIO 2
[    6.252895] no flags found for gpios
[    6.253693] ledtrig-cpu: registered to indicate activity on CPUs
[    6.260691] hid: raw HID events driver (C) Jiri Kosina
[    6.261863] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[    6.266987] usbcore: registered new interface driver usbhid
[    6.278952] usbhid: USB HID core driver
[    6.283787] ashmem: initialized
[    6.291452] NET: Registered protocol family 10
[    6.298086] Segment Routing with IPv6
[    6.302375] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    6.310910] NET: Registered protocol family 17
[    6.316012] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    6.318311] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[    6.330571] can: controller area network core (rev 20170425 abi 9)
[    6.330684] NET: Registered protocol family 29
[    6.342428] mmc_host mmc2: Bus speed (slot 0) = 50000000Hz (slot req 52000000Hz, actual 50000000HZ div = 0)
[    6.348680] Bluetooth: RFCOMM socket layer initialized
[    6.354733] mmc2: new DDR MMC card at address 0001
[    6.364546] Bluetooth: RFCOMM ver 1.11
[    6.364571] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    6.364589] Bluetooth: HIDP socket layer initialized
[    6.364859] 8021q: 802.1Q VLAN Support v1.8
[    6.364902] lib80211: common routines for IEEE802.11 drivers
[    6.364911] lib80211_crypt: registered algorithm 'NULL'
[    6.364918] lib80211_crypt: registered algorithm 'WEP'
[    6.364925] lib80211_crypt: registered algorithm 'CCMP'
[    6.364933] lib80211_crypt: registered algorithm 'TKIP'
[    6.364976] Key type dns_resolver registered
[    6.365554] ThumbEE CPU extension supported.
[    6.377000] usb 1-1.1: New USB device found, idVendor=046d, idProduct=c312, bcdDevice= 1.01
[    6.380184] mmc1: new high speed SDIO card at address 0001
[    6.380943] Registering SWP/SWPB emulation handler
[    6.382160] mmcblk2: mmc2:0001 NCard  7.22 GiB
[    6.382742] mmcblk2boot0: mmc2:0001 NCard  partition 1 4.00 MiB
[    6.383395] mmcblk2boot1: mmc2:0001 NCard  partition 2 4.00 MiB
[    6.387694] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    6.387754] mmcblk2rpmb: mmc2:0001 NCard  partition 3 128 KiB, chardev (241:0)
[    6.395111] Loading compiled-in X.509 certificates
[    6.397936] usb 1-1.1: Product: USB Multimedia Keyboard
[    6.404513] zswap: loaded using pool lzo/zbud
[    6.409090] usb 1-1.1: Manufacturer: LITEON Technology
[    6.492252] input: LITEON Technology USB Multimedia Keyboard as /devices/platform/ff540000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:046D:C312.0001/input/input0
[    6.508012] Key type ._fscrypt registered
[    6.512555] Key type .fscrypt registered
[    6.518443] Btrfs loaded, crc32c=crc32c-generic
[    6.568033] hid-generic 0003:046D:C312.0001: input,hidraw0: USB HID v1.10 Keyboard [LITEON Technology USB Multimedia Keyboard] on usb-ff540000.usb-1.1/input0
[    6.575095] rockchip-drm display-subsystem: bound ff930000.vop (ops 0xc10767dc)
[    6.592784] rockchip-drm display-subsystem: bound ff940000.vop (ops 0xc10767dc)
[    6.601343] dwhdmi-rockchip ff980000.hdmi: Detected HDMI TX controller v2.00a with HDCP (DWC MHL PHY)
[    6.612655] rockchip-drm display-subsystem: bound ff980000.hdmi (ops 0xc107971c)
[    6.621002] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    6.628443] [drm] No driver support for vblank timestamp query.
[    6.723146] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Auxiliary Video Information (AVI), version 2, length 13
[    6.723159] dwhdmi-rockchip ff980000.hdmi:     colorspace: YCbCr 4:2:2
[    6.723169] dwhdmi-rockchip ff980000.hdmi:     scan mode: Underscan
[    6.723178] dwhdmi-rockchip ff980000.hdmi:     colorimetry: ITU709
[    6.723188] dwhdmi-rockchip ff980000.hdmi:     picture aspect: 16:9
[    6.723197] dwhdmi-rockchip ff980000.hdmi:     active aspect: Same as Picture
[    6.723206] dwhdmi-rockchip ff980000.hdmi:     itc: No Data
[    6.723216] dwhdmi-rockchip ff980000.hdmi:     extended colorimetry: xvYCC 709
[    6.723225] dwhdmi-rockchip ff980000.hdmi:     quantization range: Limited
[    6.723234] dwhdmi-rockchip ff980000.hdmi:     nups: Unknown Non-uniform Scaling
[    6.723244] dwhdmi-rockchip ff980000.hdmi:     video code: 16
[    6.723253] dwhdmi-rockchip ff980000.hdmi:     ycc quantization range: Limited
[    6.723262] dwhdmi-rockchip ff980000.hdmi:     hdmi content type: Graphics
[    6.723271] dwhdmi-rockchip ff980000.hdmi:     pixel repeat: 0
[    6.723282] dwhdmi-rockchip ff980000.hdmi:     bar top 0, bottom 0, left 0, right 0
[    6.723334] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Source Product Description (SPD), version 1, length 25
[    6.723343] dwhdmi-rockchip ff980000.hdmi:     vendor: DW
[    6.723353] dwhdmi-rockchip ff980000.hdmi:     product: HDMI
[    6.723363] dwhdmi-rockchip ff980000.hdmi:     source device information: PC General (0x9)
[    6.762940] usb 1-1.2: new full-speed USB device number 4 using dwc2
[    6.787811] Console: switching to colour frame buffer device 240x67
[    6.971363] usb 1-1.2: New USB device found, idVendor=045e, idProduct=0745, bcdDevice= 6.34
[    6.974676] rockchip-drm display-subsystem: fb0: rockchipdrmfb frame buffer device
[    6.981195] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    7.032010] usb 1-1.2: Product: Microsoft\xc2\xae Nano Transceiver v2.0
[    7.032885] [drm] Initialized rockchip 1.0.0 20140818 for display-subsystem on minor 0
[    7.039065] usb 1-1.2: Manufacturer: Microsoft
[    7.040475] scsi 0:0:0:0: Direct-Access     WDC WD25 00BEVS-60UST0    1A01 PQ: 0 ANSI: 2 CCS
[    7.049607] rk_gmac-dwmac ff290000.ethernet: IRQ eth_lpi not found
[    7.055775] sd 0:0:0:0: [sda] 488397168 512-byte logical blocks: (250 GB/233 GiB)
[    7.063295] rk_gmac-dwmac ff290000.ethernet: PTP uses main clock
[    7.071926] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.0/0003:045E:0745.0002/input/input1
[    7.072242] sd 0:0:0:0: [sda] Write Protect is off
[    7.072257] sd 0:0:0:0: [sda] Mode Sense: 00 38 00 00
[    7.072865] sd 0:0:0:0: [sda] Asking for cache data failed
[    7.072878] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    7.079214] rk_gmac-dwmac ff290000.ethernet: clock input or output? (input).
[    7.089517]  sda: sda1 sda2
[    7.101845] rk_gmac-dwmac ff290000.ethernet: TX delay(0x30).
[    7.110910] sd 0:0:0:0: [sda] Attached SCSI disk
[    7.113722] rk_gmac-dwmac ff290000.ethernet: RX delay(0x10).
[    7.147810] hid-generic 0003:045E:0745.0002: input,hidraw1: USB HID v1.11 Keyboard [Microsoft Microsoft\xc2\xae Nano Transceiver v2.0] on usb-ff540000.usb-1.2/input0
[    7.149288] rk_gmac-dwmac ff290000.ethernet: integrated PHY? (no).
[    7.210321] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 Mouse as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.1/0003:045E:0745.0003/input/input2
[    7.228471] rk_gmac-dwmac ff290000.ethernet: cannot get clock clk_mac_speed
[    7.256848] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 Consumer Control as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.1/0003:045E:0745.0003/input/input3
[    7.275970] rk_gmac-dwmac ff290000.ethernet: clock input from PHY
[    7.329517] rk_gmac-dwmac ff290000.ethernet: init for RGMII
[    7.342244] random: crng init done
[    7.364598] rk_gmac-dwmac ff290000.ethernet: User ID: 0x10, Synopsys ID: 0x35
[    7.364611] hid-generic 0003:045E:0745.0003: input,hidraw2: USB HID v1.11 Mouse [Microsoft Microsoft\xc2\xae Nano Transceiver v2.0] on usb-ff540000.usb-1.2/input1
[    7.375408] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 Consumer Control as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.2/0003:045E:0745.0004/input/input4
[    7.385105] rk_gmac-dwmac ff290000.ethernet:         DWMAC1000
[    7.462192] rk_gmac-dwmac ff290000.ethernet: DMA HW capability register supported
[    7.471450] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 System Control as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.2/0003:045E:0745.0004/input/input6
[    7.483586] rk_gmac-dwmac ff290000.ethernet: RX Checksum Offload Engine supported
[    7.514994] hid-generic 0003:045E:0745.0004: input,hiddev96,hidraw3: USB HID v1.11 Device [Microsoft Microsoft\xc2\xae Nano Transceiver v2.0] on usb-ff540000.usb-1.2/input2
[    7.535925] rk_gmac-dwmac ff290000.ethernet: COE Type 2
[    7.586188] rk_gmac-dwmac ff290000.ethernet: TX Checksum insertion supported
[    7.607887] rk_gmac-dwmac ff290000.ethernet: Wake-Up On Lan supported
[    7.628823] rk_gmac-dwmac ff290000.ethernet: Normal descriptors
[    7.649012] rk_gmac-dwmac ff290000.ethernet: Ring mode enabled
[    7.668960] rk_gmac-dwmac ff290000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    7.691453] mdio_bus stmmac-0: GPIO lookup for consumer reset
[    7.691465] mdio_bus stmmac-0: using lookup tables for GPIO lookup
[    7.691477] mdio_bus stmmac-0: No GPIO consumer reset found
[    7.691490] rk_gmac-dwmac ff290000.ethernet: GPIO lookup for consumer snps,reset
[    7.691501] rk_gmac-dwmac ff290000.ethernet: using device tree for GPIO lookup
[    7.691542] of_get_named_gpiod_flags: can't parse 'snps,reset-gpios' property of node '/ethernet@ff290000[0]'
[    7.691596] of_get_named_gpiod_flags: parsed 'snps,reset-gpio' property of node '/ethernet@ff290000[0]' - status (0)
[    7.691636] gpio gpiochip4: Persistence not supported for GPIO 8
[    8.756583] mdio_bus stmmac-0:00: GPIO lookup for consumer reset
[    8.756604] mdio_bus stmmac-0:00: using lookup tables for GPIO lookup
[    8.756622] mdio_bus stmmac-0:00: No GPIO consumer reset found
[    8.769749] mdio_bus stmmac-0:01: GPIO lookup for consumer reset
[    8.769763] mdio_bus stmmac-0:01: using lookup tables for GPIO lookup
[    8.769776] mdio_bus stmmac-0:01: No GPIO consumer reset found
[    8.777614] libphy: stmmac: probed
[    8.794836] RTL8211E Gigabit Ethernet stmmac-0:00: attached PHY driver [RTL8211E Gigabit Ethernet] (mii_bus:phy_addr=stmmac-0:00, irq=POLL)
[    8.822615] RTL8211E Gigabit Ethernet stmmac-0:01: attached PHY driver [RTL8211E Gigabit Ethernet] (mii_bus:phy_addr=stmmac-0:01, irq=POLL)
[    8.851803] hctosys: unable to open rtc device (rtc0)
[    8.871305] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    8.935730] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    8.956859] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    8.980165] cfg80211: failed to load regulatory.db
[    9.005266] Freeing unused kernel memory: 2048K
[    9.031377] Run /init as init process
[    9.074608] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Auxiliary Video Information (AVI), version 2, length 13
[    9.100466] dwhdmi-rockchip ff980000.hdmi:     colorspace: YCbCr 4:2:2
[    9.100478] dwhdmi-rockchip ff980000.hdmi:     scan mode: Underscan
[    9.100487] dwhdmi-rockchip ff980000.hdmi:     colorimetry: ITU709
[    9.100497] dwhdmi-rockchip ff980000.hdmi:     picture aspect: 16:9
[    9.100506] dwhdmi-rockchip ff980000.hdmi:     active aspect: Same as Picture
[    9.100515] dwhdmi-rockchip ff980000.hdmi:     itc: No Data
[    9.100525] dwhdmi-rockchip ff980000.hdmi:     extended colorimetry: xvYCC 709
[    9.100534] dwhdmi-rockchip ff980000.hdmi:     quantization range: Limited
[    9.100548] dwhdmi-rockchip ff980000.hdmi:     nups: Unknown Non-uniform Scaling
[    9.295649] dwhdmi-rockchip ff980000.hdmi:     video code: 16
[    9.295666] dwhdmi-rockchip ff980000.hdmi:     ycc quantization range: Limited
[    9.338506] dwhdmi-rockchip ff980000.hdmi:     hdmi content type: Graphics
[    9.338517] dwhdmi-rockchip ff980000.hdmi:     pixel repeat: 0
[    9.338529] dwhdmi-rockchip ff980000.hdmi:     bar top 0, bottom 0, left 0, right 0
[    9.338607] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Source Product Description (SPD), version 1, length 25
[    9.338617] dwhdmi-rockchip ff980000.hdmi:     vendor: DW
[    9.338627] dwhdmi-rockchip ff980000.hdmi:     product: HDMI
[    9.338637] dwhdmi-rockchip ff980000.hdmi:     source device information: PC General (0x9)
[   10.683000] rtc-hym8563 0-0051: no valid clock/calendar values available
[   10.740544] rtc-hym8563 0-0051: registered as rtc0
[   10.769760] usbcore: registered new interface driver uas
[   10.913187] of_get_named_gpiod_flags: parsed 'gpios' property of node '/gpio-keys/button@0[0]' - status (0)
[   10.913226] gpio gpiochip0: Persistence not supported for GPIO 5
[   10.913611] input: gpio-keys as /devices/platform/gpio-keys/input/input7
[   27.765417] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
[   30.598730] systemd[1]: System time before build time, advancing clock.
[   30.908535] systemd[1]: systemd 245.4-4ubuntu3 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=hybrid)
[   30.960591] systemd[1]: Detected architecture arm.
[   31.174177] systemd[1]: Set hostname to <xt>.
[   31.518220] ttyS2 - failed to request DMA
[   35.422219] systemd[1]: /lib/systemd/system/dbus.socket:5: ListenStream= references a path below legacy directory /var/run/, updating /var/run/dbus/system_bus_socket \xe2\x86\x92 /run/dbus/system_bus_socket; please update the unit file accordingly.
[   36.818995] systemd[1]: system-modprobe.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
[   36.845760] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
[   36.874325] systemd[1]: Created slice system-modprobe.slice.
[   36.909514] systemd[1]: Created slice system-serial\x2dgetty.slice.
[   36.944743] systemd[1]: Created slice User and Session Slice.
[   36.977679] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   37.014055] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[   37.051290] systemd[1]: Reached target User and Group Name Lookups.
[   37.084634] systemd[1]: Reached target Remote File Systems.
[   37.116767] systemd[1]: Reached target Slices.
[   37.147386] systemd[1]: Reached target Swap.
[   37.234850] systemd[1]: Listening on Syslog Socket.
[   37.267426] systemd[1]: Listening on fsck to fsckd communication Socket.
[   37.304097] systemd[1]: Listening on initctl Compatibility Named Pipe.
[   37.341993] systemd[1]: Listening on Journal Audit Socket.
[   37.377769] systemd[1]: Listening on Journal Socket (/dev/log).
[   37.414606] systemd[1]: Listening on Journal Socket.
[   37.450273] systemd[1]: Listening on udev Control Socket.
[   37.486161] systemd[1]: Listening on udev Kernel Socket.
[   37.522124] systemd[1]: Condition check resulted in Huge Pages File System being skipped.
[   37.555136] systemd[1]: Mounting POSIX Message Queue File System...
[   37.603127] systemd[1]: Mounting Kernel Debug File System...
[   37.650795] systemd[1]: Mounting Kernel Trace File System...
[   37.700092] systemd[1]: Starting Journal Service...
[   37.754723] systemd[1]: Starting Restore / save the current clock...
[   37.804541] systemd[1]: Starting Set the console keyboard layout...
[   37.855900] systemd[1]: Starting Create list of static device nodes for the current kernel...
[   37.898342] systemd[1]: Condition check resulted in Load Kernel Module drm being skipped.
[   37.933903] systemd[1]: Started Nameserver information manager.
[   37.975614] systemd[1]: Reached target Network (Pre).
[   38.126504] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
[   38.151233] systemd[1]: Condition check resulted in File System Check on Root Device being skipped.
[   38.251480] systemd[1]: Starting Load Kernel Modules...
[   38.294456] systemd[1]: Starting Remount Root and Kernel File Systems...
[   38.340209] systemd[1]: Starting udev Coldplug all Devices...
[   38.388454] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[   38.395055] systemd[1]: Mounted POSIX Message Queue File System.
[   38.449750] systemd[1]: Mounted Kernel Debug File System.
[   38.482713] systemd[1]: Mounted Kernel Trace File System.
[   38.520741] systemd[1]: Finished Restore / save the current clock.
[   38.559708] systemd[1]: Finished Create list of static device nodes for the current kernel.
[   38.608893] systemd[1]: Finished Load Kernel Modules.
[   38.648057] systemd[1]: Finished Remount Root and Kernel File Systems.
[   38.685623] systemd[1]: Condition check resulted in FUSE Control File System being skipped.
[   38.715507] systemd[1]: Mounting Kernel Configuration File System...
[   38.803539] systemd[1]: Condition check resulted in Rebuild Hardware Database being skipped.
[   38.825502] systemd[1]: Condition check resulted in Platform Persistent Storage Archival being skipped.
[   38.856164] systemd[1]: Starting Load/Save Random Seed...
[   38.896819] systemd[1]: Starting Apply Kernel Variables...
[   38.937333] systemd[1]: Starting Create System Users...
[   38.975459] systemd[1]: Started Journal Service.
[   39.220058] systemd-journald[328]: Received client request to flush runtime journal.
[   39.906948] vcc_sd: disabling
[   40.133270] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[   44.534321] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 500000 KHz
[   44.536292] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 600000 KHz
[   45.039584] gpiomem-rk3288 ff750000.rk3288-gpiomem: Initialised: Registers at 0xff750000
[   45.421260] zram: Added device: zram0
[   45.421559] zram: Added device: zram1
[   45.421835] zram: Added device: zram2
[   45.437026] rk3288-crypto ff8a0000.cypto-controller: Crypto Accelerator successfully registered
[   46.356324] gpio_ir_recv ir-receiver: GPIO lookup for consumer (null)
[   46.356332] gpio_ir_recv ir-receiver: using device tree for GPIO lookup
[   46.356357] of_get_named_gpiod_flags: parsed 'gpios' property of node '/ir-receiver[0]' - status (0)
[   46.356377] gpio gpiochip7: Persistence not supported for GPIO 0
[   46.356431] Registered IR keymap rc-xt-q8l-v10
[   46.475824] IR NEC protocol handler initialized
[   46.486613] zram1: detected capacity change from 0 to 1049657344
[   46.502971] rc rc0: gpio_ir_recv as /devices/platform/ir-receiver/rc/rc0
[   46.503098] rc rc0: lirc_dev: driver gpio_ir_recv registered at minor = 0, raw IR receiver, no transmitter
[   46.503185] input: gpio_ir_recv as /devices/platform/ir-receiver/rc/rc0/input8
[   46.596631] hantro_vpu: module is from the staging directory, the quality is unknown, you have been warned.
[   46.597920] hantro-vpu ff9a0000.video-codec: Adding to iommu group 2
[   46.599784] hantro-vpu ff9a0000.video-codec: registered rockchip,rk3288-vpu-enc as /dev/video0
[   46.599957] hantro-vpu ff9a0000.video-codec: registered rockchip,rk3288-vpu-dec as /dev/video1
[   46.684092] panfrost ffa30000.gpu: clock rate = 400000000
[   46.685282] panfrost ffa30000.gpu: mali-t760 id 0x750 major 0x0 minor 0x0 status 0x1
[   46.685290] panfrost ffa30000.gpu: features: 00000000,100277bf, issues: 00000000,24040400
[   46.685295] panfrost ffa30000.gpu: Features: L2:0x07120206 Shader:0x00000000 Tiler:0x00000809 Mem:0x1 MMU:0x00002830 AS:0xff JS:0x7
[   46.685306] panfrost ffa30000.gpu: shader_present=0xf l2_present=0x1
[   46.687951] [drm] Initialized panfrost 1.1.0 20180908 for ffa30000.gpu on minor 1
[   46.754484] rockchip-rga ff920000.rga: HW Version: 0x00.00
[   46.755012] rockchip-rga ff920000.rga: Registered rockchip-rga as /dev/video2
[   47.374934] Adding 1025052k swap on /dev/zram1.  Priority:5 extents:1 across:1025052k SSFS
[   47.426699] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/soundcard-spdif[0]'
[   47.426712] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/soundcard-spdif[0]'
[   47.427836] asoc-simple-card soundcard-spdif: dit-hifi <-> ff8b0000.sound mapping ok
[   48.310527] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac-ap6330-sdio for chip BCM4330/4
[   48.397633] zram0: detected capacity change from 0 to 52428800
[   49.515844] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac-ap6330-sdio for chip BCM4330/4
[   49.515915] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[   49.516256] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4330/4 wl0: Jan 23 2013 17:46:35 version 5.90.195.114 FWID 01-cafa6b3e
[   49.539570] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 184
[   49.539578] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 188
[   49.539582] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 192
[   49.539586] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 196
[   49.539590] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 200
[   49.539594] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 204
[   49.539598] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 208
[   49.539601] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 212
[   49.539605] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 216
[   50.222518] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/soundcard-hdmi[0]'
[   50.222560] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/soundcard-hdmi[0]'
[   50.225047] asoc-simple-card soundcard-hdmi: i2s-hifi <-> ff890000.i2s mapping ok
[   50.839116] EXT4-fs (zram0): mounted filesystem without journal. Opts: discard
[   50.839150] ext4 filesystem being mounted at /var/log supports timestamps until 2038 (0x7fffffff)
[   73.216273] rk_gmac-dwmac ff290000.ethernet eth0: PHY [stmmac-0:00] driver [RTL8211E Gigabit Ethernet]
[   73.226937] rk_gmac-dwmac ff290000.ethernet eth0: No Safety Features support found
[   73.226948] rk_gmac-dwmac ff290000.ethernet eth0: PTP not supported by HW
[   73.226956] rk_gmac-dwmac ff290000.ethernet eth0: configuring for phy/rgmii link mode
[   75.587000] ieee80211 phy0: brcmf_p2p_create_p2pdev: timeout occurred
[   75.587031] ieee80211 phy0: brcmf_cfg80211_add_iface: add iface p2p-dev-wlan0 type 10 failed: err=-5
[   91.914473] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   99.110595] fuse: init (API version 7.31)
[   99.110743] *** VALIDATE fuse ***
[   99.110762] *** VALIDATE fuse ***

 

Queries with v4l2-vctl:

Spoiler

paolo@xt:~$ v4l2-ctl --list-devices && v4l2-ctl -d 1 --list-ctrls --list-formats
rockchip,rk3288-vpu-enc (platform: hantro-vpu):
        /dev/video0
        /dev/video1
        /dev/media0

rockchip-rga (platform:rga):
        /dev/video2


Codec Controls

        mpeg_2_slice_parameters 0x009909fa (unknown): type=103 flags=has-payload
   mpeg_2_quantization_matrices 0x009909fb (unknown): type=104 flags=has-payload
    h264_sequence_parameter_set 0x00990ce8 (unknown): type=110 flags=has-payload
     h264_picture_parameter_set 0x00990ce9 (unknown): type=111 flags=has-payload
            h264_scaling_matrix 0x00990cea (unknown): type=112 flags=has-payload
          h264_slice_parameters 0x00990ceb (unknown): type=113 flags=has-payload
         h264_decode_parameters 0x00990cec (unknown): type=114 flags=has-payload
               h264_decode_mode 0x00990ced (menu)   : min=1 max=1 default=1 value=1
                h264_start_code 0x00990cee (menu)   : min=1 max=1 default=1 value=1
               vp8_frame_header 0x009910d0 (unknown): type=301 flags=has-payload
ioctl: VIDIOC_ENUM_FMT
        Type: Video Capture Multiplanar

        [0]: 'NV12' (Y/CbCr 4:2:0)

 

This is the result of trying to run ffmpeg (with -loglevel debug):

Spoiler

paolo@xt:~/Downloads$ ffmpeg -loglevel debug -hwaccel drm -c:v h264_v4l2m2m  -i bbb_sunflower_1080p_30fps_normal.mp4 -f null -
ffmpeg version 755190b-Kodi Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
  configuration: --arch=armhf --extra-libs='-Lpthread -Lm' --disable-debug --enable-stripping --enable-gpl --enable-nonfree --enable-logging --disable-doc --enable-pic --enable-optimizations --enable-ffmpeg --enable-avdevice --enable-avcodec --enable-avformat --enable-swscale --enable-postproc --enable-avfilter --disable-devices --enable-pthreads --disable-w32threads --enable-network --disable-gnutls --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-vaapi --disable-vdpau --enable-libdrm --enable-version3 --enable-runtime-cpudetect --enable-hardcoded-tables --enable-encoder=ac3 --enable-encoder=aac --enable-encoder=wmav2 --enable-encoder=mjpeg --enable-encoder=png --enable-hwaccels --enable-muxer=spdif --enable-muxer=adts --enable-muxer=asf --enable-muxer=ipod --enable-muxer=mpegts --enable-demuxers --enable-parsers --enable-bsfs --enable-filters --enable-bzlib --enable-libspeex --enable-libx264 --enable-libx265 --enable-zlib --enable-asm --enable-neon --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-openssl --enable-libv4l2 --enable-v4l2-request --enable-libudev
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.                                                                   
Reading option '-hwaccel' ... matched as option 'hwaccel' (use HW accelerated decoding) with argument 'drm'.                                                             
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'h264_v4l2m2m'.                                                                               
Reading option '-i' ... matched as input url with argument 'bbb_sunflower_1080p_30fps_normal.mp4'.                                                                       
Reading option '-f' ... matched as option 'f' (force format) with argument 'null'.                                                                                       
Reading option '-' ... matched as output url.                                                                                                                            
Finished splitting the commandline.                                                                                                                                      
Parsing a group of options: global .                                                                                                                                     
Applying option loglevel (set logging level) with argument debug.                                                                                                        
Successfully parsed a group of options.                                                                                                                                  
Parsing a group of options: input url bbb_sunflower_1080p_30fps_normal.mp4.                                                                                              
Applying option hwaccel (use HW accelerated decoding) with argument drm.                                                                                                 
Applying option c:v (codec name) with argument h264_v4l2m2m.                                                                                                             
Successfully parsed a group of options.                                                                                                                                  
Opening an input file: bbb_sunflower_1080p_30fps_normal.mp4.                                                                                                             
[NULL @ 0x1f47ad0] Opening 'bbb_sunflower_1080p_30fps_normal.mp4' for reading                                                                                            
[file @ 0x1f48290] Setting default whitelist 'file,crypto'                                                                                                               
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100                                                                 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] ISO: File Type Major Brand: isom                                                                                                   
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Unknown dref type 0x206c7275 size 12                                                                                               
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Setting codecpar->delay to 2 for stream st: 0                                                                                      
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Unknown dref type 0x206c7275 size 12                                                                                               
    Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Before avformat_find_stream_info() pos: 276134913 bytes read:252639 seeks:1 nb_streams:3
[h264 @ 0x1f48e90] nal_unit_type: 7(SPS), nal_ref_idc: 3                                                                                                                 
[h264 @ 0x1f48e90] nal_unit_type: 8(PPS), nal_ref_idc: 3                                                                                                                 
[h264 @ 0x1f48e90] nal_unit_type: 6(SEI), nal_ref_idc: 0                                                                                                                 
[h264 @ 0x1f48e90] nal_unit_type: 5(IDR), nal_ref_idc: 3                                                                                                                 
[h264 @ 0x1f48e90] Format yuv420p chosen by get_format().                                                                                                                
[h264 @ 0x1f48e90] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x1f48e90] no picture
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] All info found                                                                                                                     
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] After avformat_find_stream_info() pos: 305350 bytes read:350943 seeks:2 frames:38                                                  
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'bbb_sunflower_1080p_30fps_normal.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2013-12-16T17:44:39.000000Z
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    composer        : Sacha Goedegebure
  Duration: 00:10:34.53, start: 0.000000, bitrate: 3481 kb/s
    Stream #0:0(und), 16, 1/30000: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 0/1, 2998 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:39.000000Z
      handler_name    : GPAC ISO Video Handler
    Stream #0:1(und), 21, 1/48000: Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
    Stream #0:2(und), 1, 1/48000: Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
    Side data:
      audio service type: main
Successfully opened the file.
Parsing a group of options: output url -.
Applying option f (force format) with argument null.
Successfully parsed a group of options.
Opening an output file: -.
Successfully opened the file.
[h264_v4l2m2m @ 0x1f7cc10] probing device /dev/video2
[h264_v4l2m2m @ 0x1f7cc10] driver 'hantro-vpu' on card 'rockchip,rk3288-vpu-dec'
[h264_v4l2m2m @ 0x1f7cc10] v4l2 output format not supported
[h264_v4l2m2m @ 0x1f7cc10] probing device /dev/video1
[h264_v4l2m2m @ 0x1f7cc10] driver 'hantro-vpu' on card 'rockchip,rk3288-vpu-enc'
[h264_v4l2m2m @ 0x1f7cc10] v4l2 output format not supported
[h264_v4l2m2m @ 0x1f7cc10] probing device /dev/video0
[h264_v4l2m2m @ 0x1f7cc10] driver 'rockchip-rga' on card 'rockchip-rga'
[h264_v4l2m2m @ 0x1f7cc10] v4l2 output format not supported
[h264_v4l2m2m @ 0x1f7cc10] Could not find a valid device
[h264_v4l2m2m @ 0x1f7cc10] can't configure decoder
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (h264_v4l2m2m) -> wrapped_avframe (native))
  Stream #0:2 -> #0:1 (ac3 (native) -> pcm_s16le (native))
Error while opening decoder for input stream #0:0 : Invalid argument
[AVIOContext @ 0x1f504b0] Statistics: 350943 bytes read, 2 seeks

 

Link to comment
Share on other sites

On 5/16/2020 at 4:01 PM, jock said:

Hello, I join the discussion.

 

I'm trying the hantro/v4l2 system on a rk3288 tv box, Ubuntu Focal with recently compiled 5.5.19 kernel with patches coming from LibreELEC's master repository from Rockchip project applied. Hantro driver module is enabled and loaded. FFmpeg is taken from @Kwiboo's repository (v4l2-request-hwaccel-4.2.2) and compiled right now.

 

FFmpeg refuses to decode the stream with h264_v4l2m2m decoder and says it can't find a valid device.

 

Dmesg:

  Reveal hidden contents

paolo@xt:~$ dmesg
[    0.000000] Booting Linux on physical CPU 0x500
[    0.000000] Linux version 5.5.19-rockchip (root@armbianbuild) (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36))) #trunk SMP PREEMPT Fri May 15 21:28:01 UTC 2020
[    0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] OF: fdt: Machine model: XT-Q8L-V10-RK3288
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] cma: Reserved 16 MiB at 0x7f000000
[    0.000000] On node 0 totalpages: 524288
[    0.000000]   Normal zone: 1728 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 196608 pages, LIFO batch:63
[    0.000000]   HighMem zone: 327680 pages, LIFO batch:63
[    0.000000] percpu: Embedded 20 pages/cpu s51160 r8192 d22568 u81920
[    0.000000] pcpu-alloc: s51160 r8192 d22568 u81920 alloc=20*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 522560
[    0.000000] Kernel command line: earlyprintk root=UUID=6011cf83-f999-4cb4-8ff2-c014253b73ae rootwait rootfstype=ext4 console=ttyS2,115200n8 console=tty1 panic=10 consoleblank=0 loglevel=7 ubootpart= usb-storage.quirks=0x2537:0x1066:u,0x2537:0x1068:u   cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory swapaccount=1
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.000000] allocated 2097152 bytes of page_ext
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 2023184K/2097152K available (15360K kernel code, 1098K rwdata, 3212K rodata, 2048K init, 4695K bss, 57584K reserved, 16384K cma-reserved, 1294336K highmem)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] ftrace: allocating 45744 entries in 90 pages
[    0.000000] ftrace: allocated 90 pages with 4 groups
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000]  Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] random: get_random_bytes called from start_kernel+0x340/0x504 with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000008] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.000026] Switching to timer-based delay loop, resolution 41ns
[    0.001734] Console: colour dummy device 80x30
[    0.002422] printk: console [tty1] enabled
[    0.002484] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[    0.002536] pid_max: default: 32768 minimum: 301
[    0.002736] LSM: Security Framework initializing
[    0.002783] Yama: becoming mindful.
[    0.002894] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.002942] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
[    0.003059] *** VALIDATE tmpfs ***
[    0.003963] *** VALIDATE proc ***
[    0.004346] *** VALIDATE cgroup1 ***
[    0.004383] *** VALIDATE cgroup2 ***
[    0.004419] CPU: Testing write buffer coherency: ok
[    0.004481] CPU0: Spectre v2: using BPIALL workaround
[    0.004955] CPU0: thread -1, cpu 0, socket 5, mpidr 80000500
[    0.028041] Setting up static identity map for 0x100000 - 0x100060
[    0.036030] rcu: Hierarchical SRCU implementation.
[    0.052142] smp: Bringing up secondary CPUs ...
[    0.085725] CPU1: thread -1, cpu 1, socket 5, mpidr 80000501
[    0.085737] CPU1: Spectre v2: using BPIALL workaround
[    0.117914] CPU2: thread -1, cpu 2, socket 5, mpidr 80000502
[    0.117926] CPU2: Spectre v2: using BPIALL workaround
[    0.150118] CPU3: thread -1, cpu 3, socket 5, mpidr 80000503
[    0.150129] CPU3: Spectre v2: using BPIALL workaround
[    0.150394] smp: Brought up 1 node, 4 CPUs
[    0.150431] SMP: Total of 4 processors activated (192.00 BogoMIPS).
[    0.150462] CPU: All CPU(s) started in SVC mode.
[    0.151554] devtmpfs: initialized
[    0.166308] VFP support v0.3: implementor 41 architecture 3 part 30 variant d rev 0
[    0.166885] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.166949] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.168029] xor: measuring software checksum speed
[    0.205009]    arm4regs  :  1042.000 MB/sec
[    0.245117]    8regs     :   803.000 MB/sec
[    0.285234]    32regs    :   801.000 MB/sec
[    0.325349]    neon      :  1407.000 MB/sec
[    0.325379] xor: using function: neon (1407.000 MB/sec)
[    0.325471] pinctrl core: initialized pinctrl subsystem
[    0.326283] thermal_sys: Registered thermal governor 'step_wise'
[    0.327824] NET: Registered protocol family 16
[    0.330922] DMA: preallocated 256 KiB pool for atomic coherent allocations
[    0.331571] audit: initializing netlink subsys (disabled)
[    0.333275] audit: type=2000 audit(0.328:1): state=initialized audit_enabled=0 res=1
[    0.333342] cpuidle: using governor ladder
[    0.333454] cpuidle: using governor menu
[    0.334797] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[    0.334843] hw-breakpoint: maximum watchpoint size is 4 bytes.
[    0.361722] gpio gpiochip0: (gpio0): added GPIO chardev (254:0)
[    0.361862] gpiochip_setup_dev: registered GPIOs 0 to 23 on device: gpiochip0 (gpio0)
[    0.362320] gpio gpiochip1: (gpio1): added GPIO chardev (254:1)
[    0.362445] gpiochip_setup_dev: registered GPIOs 24 to 55 on device: gpiochip1 (gpio1)
[    0.362862] gpio gpiochip2: (gpio2): added GPIO chardev (254:2)
[    0.363023] gpiochip_setup_dev: registered GPIOs 56 to 87 on device: gpiochip2 (gpio2)
[    0.363451] gpio gpiochip3: (gpio3): added GPIO chardev (254:3)
[    0.363566] gpiochip_setup_dev: registered GPIOs 88 to 119 on device: gpiochip3 (gpio3)
[    0.363980] gpio gpiochip4: (gpio4): added GPIO chardev (254:4)
[    0.364105] gpiochip_setup_dev: registered GPIOs 120 to 151 on device: gpiochip4 (gpio4)
[    0.364518] gpio gpiochip5: (gpio5): added GPIO chardev (254:5)
[    0.364640] gpiochip_setup_dev: registered GPIOs 152 to 183 on device: gpiochip5 (gpio5)
[    0.365051] gpio gpiochip6: (gpio6): added GPIO chardev (254:6)
[    0.365166] gpiochip_setup_dev: registered GPIOs 184 to 215 on device: gpiochip6 (gpio6)
[    0.365598] gpio gpiochip7: (gpio7): added GPIO chardev (254:7)
[    0.365745] gpiochip_setup_dev: registered GPIOs 216 to 247 on device: gpiochip7 (gpio7)
[    0.366090] gpio gpiochip8: (gpio8): added GPIO chardev (254:8)
[    0.366214] gpiochip_setup_dev: registered GPIOs 248 to 263 on device: gpiochip8 (gpio8)
[    0.502444] raid6: neonx8   gen()   606 MB/s
[    0.570616] raid6: neonx8   xor()   617 MB/s
[    0.638811] raid6: neonx4   gen()   673 MB/s
[    0.706960] raid6: neonx4   xor()   690 MB/s
[    0.775173] raid6: neonx2   gen()   418 MB/s
[    0.843313] raid6: neonx2   xor()   623 MB/s
[    0.911486] raid6: neonx1   gen()   340 MB/s
[    0.979633] raid6: neonx1   xor()   464 MB/s
[    1.047812] raid6: int32x8  gen()   187 MB/s
[    1.116134] raid6: int32x8  xor()   134 MB/s
[    1.184322] raid6: int32x4  gen()   145 MB/s
[    1.252355] raid6: int32x4  xor()   145 MB/s
[    1.320542] raid6: int32x2  gen()   105 MB/s
[    1.388845] raid6: int32x2  xor()   128 MB/s
[    1.456971] raid6: int32x1  gen()    94 MB/s
[    1.524994] raid6: int32x1  xor()   105 MB/s
[    1.525024] raid6: using algorithm neonx4 gen() 673 MB/s
[    1.525052] raid6: .... xor() 690 MB/s, rmw enabled
[    1.525079] raid6: using neon recovery algorithm
[    1.525948] reg-fixed-voltage vsys-regulator: GPIO lookup for consumer (null)
[    1.525962] reg-fixed-voltage vsys-regulator: using device tree for GPIO lookup
[    1.525998] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/vsys-regulator[0]'
[    1.526025] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/vsys-regulator[0]'
[    1.526042] reg-fixed-voltage vsys-regulator: using lookup tables for GPIO lookup
[    1.526055] reg-fixed-voltage vsys-regulator: No GPIO consumer (null) found
[    1.526657] reg-fixed-voltage sdmmc-regulator: GPIO lookup for consumer (null)
[    1.526670] reg-fixed-voltage sdmmc-regulator: using device tree for GPIO lookup
[    1.526701] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/sdmmc-regulator[0]'
[    1.526751] of_get_named_gpiod_flags: parsed 'gpio' property of node '/sdmmc-regulator[0]' - status (0)
[    1.526795] gpio gpiochip7: Persistence not supported for GPIO 11
[    1.527292] reg-fixed-voltage flash-regulator: GPIO lookup for consumer (null)
[    1.527304] reg-fixed-voltage flash-regulator: using device tree for GPIO lookup
[    1.527334] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/flash-regulator[0]'
[    1.527359] of_get_named_gpiod_flags: can't parse 'gpio' property of node '/flash-regulator[0]'
[    1.527376] reg-fixed-voltage flash-regulator: using lookup tables for GPIO lookup
[    1.527388] reg-fixed-voltage flash-regulator: No GPIO consumer (null) found
[    1.527866] reg-fixed-voltage usb-host-regulator: GPIO lookup for consumer (null)
[    1.527879] reg-fixed-voltage usb-host-regulator: using device tree for GPIO lookup
[    1.527908] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/usb-host-regulator[0]'
[    1.527953] of_get_named_gpiod_flags: parsed 'gpio' property of node '/usb-host-regulator[0]' - status (0)
[    1.527987] gpio gpiochip0: Persistence not supported for GPIO 14
[    1.528043] vcc_host_5v: supplied by vcc_sys
[    1.528650] reg-fixed-voltage usb-otg-regulator: GPIO lookup for consumer (null)
[    1.528664] reg-fixed-voltage usb-otg-regulator: using device tree for GPIO lookup
[    1.528695] of_get_named_gpiod_flags: can't parse 'gpios' property of node '/usb-otg-regulator[0]'
[    1.528738] of_get_named_gpiod_flags: parsed 'gpio' property of node '/usb-otg-regulator[0]' - status (0)
[    1.528771] gpio gpiochip0: Persistence not supported for GPIO 12
[    1.528827] vcc_otg_5v: supplied by vcc_sys
[    1.529861] iommu: Default domain type: Translated
[    1.534377] SCSI subsystem initialized
[    1.534709] usbcore: registered new interface driver usbfs
[    1.534818] usbcore: registered new interface driver hub
[    1.534934] usbcore: registered new device driver usb
[    1.535080] mc: Linux media interface: v0.10
[    1.535148] videodev: Linux video capture interface: v2.00
[    1.535346] pps_core: LinuxPPS API ver. 1 registered
[    1.535378] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    1.535440] PTP clock support registered
[    1.537152] Bluetooth: Core ver 2.22
[    1.537240] NET: Registered protocol family 31
[    1.537270] Bluetooth: HCI device and connection manager initialized
[    1.537313] Bluetooth: HCI socket layer initialized
[    1.537349] Bluetooth: L2CAP socket layer initialized
[    1.537405] Bluetooth: SCO socket layer initialized
[    1.537520] NetLabel: Initializing
[    1.537549] NetLabel:  domain hash size = 128
[    1.537573] NetLabel:  protocols = UNLABELED CIPSOv4 CALIPSO
[    1.537699] NetLabel:  unlabeled traffic allowed by default
[    1.538882] clocksource: Switched to clocksource arch_sys_counter
[    2.996984] VFS: Disk quotas dquot_6.6.0
[    2.997132] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[    2.997469] FS-Cache: Loaded
[    2.997500] *** VALIDATE ramfs ***
[    2.997796] CacheFiles: Loaded
[    3.013855] NET: Registered protocol family 2
[    3.014951] tcp_listen_portaddr_hash hash table entries: 512 (order: 1, 12288 bytes, linear)
[    3.015064] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
[    3.015197] TCP bind hash table entries: 8192 (order: 5, 163840 bytes, linear)
[    3.015521] TCP: Hash tables configured (established 8192 bind 8192)
[    3.015699] UDP hash table entries: 512 (order: 2, 24576 bytes, linear)
[    3.015800] UDP-Lite hash table entries: 512 (order: 2, 24576 bytes, linear)
[    3.016209] NET: Registered protocol family 1
[    3.017065] RPC: Registered named UNIX socket transport module.
[    3.017104] RPC: Registered udp transport module.
[    3.017131] RPC: Registered tcp transport module.
[    3.017158] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    3.018122] Trying to unpack rootfs image as initramfs...
[    3.777150] Freeing initrd memory: 8496K
[    3.778713] hw perfevents: enabled with armv7_cortex_a12 PMU driver, 7 counters available
[    3.781232] Initialise system trusted keyrings
[    3.781569] workingset: timestamp_bits=14 max_order=19 bucket_order=5
[    3.791299] zbud: loaded
[    3.793723] FS-Cache: Netfs 'nfs' registered for caching
[    3.794588] NFS: Registering the id_resolver key type
[    3.794645] Key type id_resolver registered
[    3.794674] Key type id_legacy registered
[    3.794718] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    3.795102] SGI XFS with ACLs, security attributes, realtime, scrub, quota, no debug enabled
[    3.797680] *** VALIDATE xfs ***
[    3.869116] async_tx: api initialized (async)
[    3.869160] Key type asymmetric registered
[    3.869188] Asymmetric key parser 'x509' registered
[    3.869291] bounce: pool size: 64 pages
[    3.869370] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
[    3.869660] io scheduler mq-deadline registered
[    3.869697] io scheduler kyber registered
[    3.879227] dma-pl330 ff250000.dma-controller: Loaded driver for PL330 DMAC-241330
[    3.879281] dma-pl330 ff250000.dma-controller:       DBUFF-128x8bytes Num_Chans-8 Num_Peri-20 Num_Events-16
[    3.880472] dma-pl330 ffb20000.dma-controller: Loaded driver for PL330 DMAC-241330
[    3.880525] dma-pl330 ffb20000.dma-controller:       DBUFF-64x8bytes Num_Chans-5 Num_Peri-6 Num_Events-10
[    3.881461] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    3.884029] ff180000.serial: ttyS0 at MMIO 0xff180000 (irq = 38, base_baud = 1500000) is a 16550A
[    3.885261] ff190000.serial: ttyS1 at MMIO 0xff190000 (irq = 39, base_baud = 1500000) is a 16550A
[    3.886498] ff690000.serial: ttyS2 at MMIO 0xff690000 (irq = 40, base_baud = 1500000) is a 16550A
[    4.928436] printk: console [ttyS2] enabled
[    4.934369] ff1b0000.serial: ttyS3 at MMIO 0xff1b0000 (irq = 41, base_baud = 1500000) is a 16550A
[    4.947044] rockchip-vop ff930000.vop: Adding to iommu group 0
[    4.954367] rockchip-vop ff940000.vop: Adding to iommu group 1
[    4.965160] rockchip-drm display-subsystem: bound ff930000.vop (ops 0xc10767dc)
[    4.974015] rockchip-drm display-subsystem: bound ff940000.vop (ops 0xc10767dc)
[    4.982374] rockchip-drm display-subsystem: failed to bind ff980000.hdmi (ops 0xc107971c): -517
[    4.992493] rockchip-drm display-subsystem: master bind failed: -517
[    5.000092] usbcore: registered new interface driver udl
[    5.011881] brd: module loaded
[    5.030952] loop: module loaded
[    5.037904] mdio_bus fixed-0: GPIO lookup for consumer reset
[    5.037918] mdio_bus fixed-0: using lookup tables for GPIO lookup
[    5.037931] mdio_bus fixed-0: No GPIO consumer reset found
[    5.038061] libphy: Fixed MDIO Bus: probed
[    5.042782] tun: Universal TUN/TAP device driver, 1.6
[    5.048781] CAN device driver interface
[    5.054701] rk_gmac-dwmac ff290000.ethernet: IRQ eth_lpi not found
[    5.061822] rk_gmac-dwmac ff290000.ethernet: PTP uses main clock
[    5.068630] rk_gmac-dwmac ff290000.ethernet: phy regulator is not available yet, deferred probing
[    5.080299] usbcore: registered new interface driver rt2500usb
[    5.086983] usbcore: registered new interface driver rt73usb
[    5.093430] usbcore: registered new interface driver rt2800usb
[    5.100071] usbcore: registered new interface driver rtl8xxxu
[    5.106625] usbcore: registered new interface driver rndis_wlan
[    5.113362] usbcore: registered new interface driver cdc_ether
[    5.119998] usbcore: registered new interface driver rndis_host
[    5.127164] dwc2 ff540000.usb: ff540000.usb supply vusb_d not found, using dummy regulator
[    5.136600] dwc2 ff540000.usb: ff540000.usb supply vusb_a not found, using dummy regulator
[    5.203401] dwc2 ff540000.usb: DWC OTG Controller
[    5.208762] dwc2 ff540000.usb: new USB bus registered, assigned bus number 1
[    5.216752] dwc2 ff540000.usb: irq 45, io mem 0xff540000
[    5.223128] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.05
[    5.232440] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    5.240573] usb usb1: Product: DWC OTG Controller
[    5.245881] usb usb1: Manufacturer: Linux 5.5.19-rockchip dwc2_hsotg
[    5.253027] usb usb1: SerialNumber: ff540000.usb
[    5.259121] hub 1-0:1.0: USB hub found
[    5.263425] hub 1-0:1.0: 1 port detected
[    5.268853] dwc2 ff580000.usb: ff580000.usb supply vusb_d not found, using dummy regulator
[    5.278292] dwc2 ff580000.usb: ff580000.usb supply vusb_a not found, using dummy regulator
[    5.414986] dwc2 ff580000.usb: EPs: 10, dedicated fifos, 972 entries in SPRAM
[    5.423685] dwc2 ff580000.usb: DWC OTG Controller
[    5.429036] dwc2 ff580000.usb: new USB bus registered, assigned bus number 2
[    5.437019] dwc2 ff580000.usb: irq 46, io mem 0xff580000
[    5.443351] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.05
[    5.452666] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    5.460802] usb usb2: Product: DWC OTG Controller
[    5.466109] usb usb2: Manufacturer: Linux 5.5.19-rockchip dwc2_hsotg
[    5.473263] usb usb2: SerialNumber: ff580000.usb
[    5.479453] hub 2-0:1.0: USB hub found
[    5.483765] hub 2-0:1.0: 1 port detected
[    5.490899] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    5.498248] ehci-platform: EHCI generic platform driver
[    5.504685] usbcore: registered new interface driver usb-storage
[    5.512277] usbcore: registered new interface driver iforce
[    5.518669] usbcore: registered new interface driver xpad
[    5.524923] usbcore: registered new interface driver usbtouchscreen
[    5.532693] i2c /dev entries driver
[    5.541286] fan53555-regulator 0-0040: FAN53555 Option[8] Rev[1] Detected!
[    5.549077] fan53555-reg: supplied by vcc_sys
[    5.556494] fan53555-regulator 0-0041: FAN53555 Option[8] Rev[1] Detected!
[    5.564277] fan53555-reg: supplied by vcc_sys
[    5.571871] REG1: supplied by vcc_sys
[    5.577022] REG2: supplied by vcc_sys
[    5.582207] REG3: supplied by vcc_sys
[    5.587390] REG4: supplied by vcc_sys
[    5.592733] REG5: supplied by vcc_sys
[    5.598053] REG6: supplied by vcc_sys
[    5.603394] REG7: supplied by vcc_sys
[    5.607804] vcca_18: Bringing 3300000uV into 1800000-1800000uV
[    5.616033] REG8: supplied by vcc_sys
[    5.621337] REG9: supplied by vcc_sys
[    5.626369] REG10: supplied by vcc_20
[    5.631738] REG11: supplied by vcc_20
[    5.637100] REG12: supplied by vcc_20
[    5.645788] vcc_flash: supplied by vcc_io
[    5.656486] device-mapper: ioctl: 4.41.0-ioctl (2019-09-16) initialised: dm-devel@redhat.com
[    5.666034] usb 1-1: new high-speed USB device number 2 using dwc2
[    5.673127] random: fast init done
[    5.677478] device-mapper: raid: Loading target version 1.15.1
[    5.684336] Bluetooth: HCI UART driver ver 2.3
[    5.689364] Bluetooth: HCI UART protocol H4 registered
[    5.695156] Bluetooth: HCI UART protocol ATH3K registered
[    5.695738] usb 1-1: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.00
[    5.701286] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    5.710441] usb 1-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[    5.717572] usbcore: registered new interface driver bfusb
[    5.725501] usb 1-1: Product: USB 2.0 Hub [MTT]
[    5.732297] hub 1-1:1.0: USB hub found
[    5.736898] usbcore: registered new interface driver btusb
[    5.741158] hub 1-1:1.0: 4 ports detected
[    5.747847] pwrseq_simple sdio0_pwrseq: GPIO lookup for consumer reset
[    5.751759] pwrseq_simple sdio0_pwrseq: using device tree for GPIO lookup
[    5.751816] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/sdio0_pwrseq[0]' - status (0)
[    5.751854] gpio gpiochip4: Persistence not supported for GPIO 28
[    5.751890] pwrseq_simple sdio0_pwrseq: GPIO lookup for consumer reset
[    5.751901] pwrseq_simple sdio0_pwrseq: using device tree for GPIO lookup
[    5.751950] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/sdio0_pwrseq[1]' - status (0)
[    5.751978] gpio gpiochip4: Persistence not supported for GPIO 29
[    5.752520] pwrseq_emmc emmc-pwrseq: GPIO lookup for consumer reset
[    5.752533] pwrseq_emmc emmc-pwrseq: using device tree for GPIO lookup
[    5.752584] of_get_named_gpiod_flags: parsed 'reset-gpios' property of node '/emmc-pwrseq[0]' - status (0)
[    5.752618] gpio gpiochip3: Persistence not supported for GPIO 9
[    5.752888] sdhci: Secure Digital Host Controller Interface driver
[    5.759863] sdhci: Copyright(c) Pierre Ossman
[    5.764774] Synopsys Designware Multimedia Card Interface Driver
[    5.772761] dwmmc_rockchip ff0c0000.dwmmc: IDMAC supports 32-bit address mode.
[    5.780999] dwmmc_rockchip ff0c0000.dwmmc: Using internal DMA controller.
[    5.788659] dwmmc_rockchip ff0c0000.dwmmc: Version ID is 270a
[    5.795225] dwmmc_rockchip ff0c0000.dwmmc: DW MMC controller at irq 30,32 bit host data width,256 deep fifo
[    5.806246] vcc_sd: supplied by vcc_io
[    5.811234] dwmmc_rockchip ff0c0000.dwmmc: GPIO lookup for consumer cd
[    5.811247] dwmmc_rockchip ff0c0000.dwmmc: using device tree for GPIO lookup
[    5.811304] of_get_named_gpiod_flags: parsed 'cd-gpios' property of node '/dwmmc@ff0c0000[0]' - status (0)
[    5.811340] gpio gpiochip6: Persistence not supported for GPIO 22
[    5.811378] dwmmc_rockchip ff0c0000.dwmmc: Got CD GPIO
[    5.817198] dwmmc_rockchip ff0c0000.dwmmc: GPIO lookup for consumer wp
[    5.817209] dwmmc_rockchip ff0c0000.dwmmc: using device tree for GPIO lookup
[    5.817242] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/dwmmc@ff0c0000[0]'
[    5.817270] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/dwmmc@ff0c0000[0]'
[    5.817288] dwmmc_rockchip ff0c0000.dwmmc: using lookup tables for GPIO lookup
[    5.817300] dwmmc_rockchip ff0c0000.dwmmc: No GPIO consumer wp found
[    5.886927] usb 2-1: new high-speed USB device number 2 using dwc2
[    5.912799] usb 2-1: New USB device found, idVendor=152d, idProduct=2338, bcdDevice= 1.00
[    5.922015] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=5
[    5.930051] usb 2-1: Product: USB to ATA/ATAPI Bridge
[    5.935740] usb 2-1: Manufacturer: JMicron
[    5.936263] mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    5.940365] usb 2-1: SerialNumber: D578E70881C3
[    5.941927] usb-storage 2-1:1.0: USB Mass Storage device detected
[    5.963585] scsi host0: usb-storage 2-1:1.0
[    5.964898] dwmmc_rockchip ff0d0000.dwmmc: IDMAC supports 32-bit address mode.
[    5.976600] dwmmc_rockchip ff0d0000.dwmmc: Using internal DMA controller.
[    5.984301] dwmmc_rockchip ff0d0000.dwmmc: Version ID is 270a
[    5.990855] dwmmc_rockchip ff0d0000.dwmmc: DW MMC controller at irq 31,32 bit host data width,256 deep fifo
[    6.002547] dwmmc_rockchip ff0d0000.dwmmc: GPIO lookup for consumer wp
[    6.002560] dwmmc_rockchip ff0d0000.dwmmc: using device tree for GPIO lookup
[    6.002597] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/dwmmc@ff0d0000[0]'
[    6.002625] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/dwmmc@ff0d0000[0]'
[    6.002644] dwmmc_rockchip ff0d0000.dwmmc: using lookup tables for GPIO lookup
[    6.002656] dwmmc_rockchip ff0d0000.dwmmc: No GPIO consumer wp found
[    6.002738] dwmmc_rockchip ff0d0000.dwmmc: allocated mmc-pwrseq
[    6.009429] mmc_host mmc1: card is non-removable.
[    6.135037] mmc_host mmc1: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    6.142926] usb 1-1.1: new low-speed USB device number 3 using dwc2
[    6.158931] dwmmc_rockchip ff0f0000.dwmmc: IDMAC supports 32-bit address mode.
[    6.167222] dwmmc_rockchip ff0f0000.dwmmc: Using internal DMA controller.
[    6.174995] dwmmc_rockchip ff0f0000.dwmmc: Version ID is 270a
[    6.181637] dwmmc_rockchip ff0f0000.dwmmc: DW MMC controller at irq 32,32 bit host data width,256 deep fifo
[    6.193235] dwmmc_rockchip ff0f0000.dwmmc: GPIO lookup for consumer wp
[    6.193247] dwmmc_rockchip ff0f0000.dwmmc: using device tree for GPIO lookup
[    6.193284] of_get_named_gpiod_flags: can't parse 'wp-gpios' property of node '/dwmmc@ff0f0000[0]'
[    6.193324] of_get_named_gpiod_flags: can't parse 'wp-gpio' property of node '/dwmmc@ff0f0000[0]'
[    6.193364] dwmmc_rockchip ff0f0000.dwmmc: using lookup tables for GPIO lookup
[    6.193377] dwmmc_rockchip ff0f0000.dwmmc: No GPIO consumer wp found
[    6.193467] dwmmc_rockchip ff0f0000.dwmmc: allocated mmc-pwrseq
[    6.200198] mmc_host mmc2: card is non-removable.
[    6.213950] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[    6.218617] mmc_host mmc2: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    6.231918] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    6.239742] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    6.244005] sdhci-pltfm: SDHCI platform and OF driver helper
[    6.252849] of_get_named_gpiod_flags: parsed 'gpios' property of node '/leds/power[0]' - status (0)
[    6.252887] gpio gpiochip7: Persistence not supported for GPIO 2
[    6.252895] no flags found for gpios
[    6.253693] ledtrig-cpu: registered to indicate activity on CPUs
[    6.260691] hid: raw HID events driver (C) Jiri Kosina
[    6.261863] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[    6.266987] usbcore: registered new interface driver usbhid
[    6.278952] usbhid: USB HID core driver
[    6.283787] ashmem: initialized
[    6.291452] NET: Registered protocol family 10
[    6.298086] Segment Routing with IPv6
[    6.302375] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    6.310910] NET: Registered protocol family 17
[    6.316012] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    6.318311] mmc_host mmc1: Bus speed (slot 0) = 50000000Hz (slot req 50000000Hz, actual 50000000HZ div = 0)
[    6.330571] can: controller area network core (rev 20170425 abi 9)
[    6.330684] NET: Registered protocol family 29
[    6.342428] mmc_host mmc2: Bus speed (slot 0) = 50000000Hz (slot req 52000000Hz, actual 50000000HZ div = 0)
[    6.348680] Bluetooth: RFCOMM socket layer initialized
[    6.354733] mmc2: new DDR MMC card at address 0001
[    6.364546] Bluetooth: RFCOMM ver 1.11
[    6.364571] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    6.364589] Bluetooth: HIDP socket layer initialized
[    6.364859] 8021q: 802.1Q VLAN Support v1.8
[    6.364902] lib80211: common routines for IEEE802.11 drivers
[    6.364911] lib80211_crypt: registered algorithm 'NULL'
[    6.364918] lib80211_crypt: registered algorithm 'WEP'
[    6.364925] lib80211_crypt: registered algorithm 'CCMP'
[    6.364933] lib80211_crypt: registered algorithm 'TKIP'
[    6.364976] Key type dns_resolver registered
[    6.365554] ThumbEE CPU extension supported.
[    6.377000] usb 1-1.1: New USB device found, idVendor=046d, idProduct=c312, bcdDevice= 1.01
[    6.380184] mmc1: new high speed SDIO card at address 0001
[    6.380943] Registering SWP/SWPB emulation handler
[    6.382160] mmcblk2: mmc2:0001 NCard  7.22 GiB
[    6.382742] mmcblk2boot0: mmc2:0001 NCard  partition 1 4.00 MiB
[    6.383395] mmcblk2boot1: mmc2:0001 NCard  partition 2 4.00 MiB
[    6.387694] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    6.387754] mmcblk2rpmb: mmc2:0001 NCard  partition 3 128 KiB, chardev (241:0)
[    6.395111] Loading compiled-in X.509 certificates
[    6.397936] usb 1-1.1: Product: USB Multimedia Keyboard
[    6.404513] zswap: loaded using pool lzo/zbud
[    6.409090] usb 1-1.1: Manufacturer: LITEON Technology
[    6.492252] input: LITEON Technology USB Multimedia Keyboard as /devices/platform/ff540000.usb/usb1/1-1/1-1.1/1-1.1:1.0/0003:046D:C312.0001/input/input0
[    6.508012] Key type ._fscrypt registered
[    6.512555] Key type .fscrypt registered
[    6.518443] Btrfs loaded, crc32c=crc32c-generic
[    6.568033] hid-generic 0003:046D:C312.0001: input,hidraw0: USB HID v1.10 Keyboard [LITEON Technology USB Multimedia Keyboard] on usb-ff540000.usb-1.1/input0
[    6.575095] rockchip-drm display-subsystem: bound ff930000.vop (ops 0xc10767dc)
[    6.592784] rockchip-drm display-subsystem: bound ff940000.vop (ops 0xc10767dc)
[    6.601343] dwhdmi-rockchip ff980000.hdmi: Detected HDMI TX controller v2.00a with HDCP (DWC MHL PHY)
[    6.612655] rockchip-drm display-subsystem: bound ff980000.hdmi (ops 0xc107971c)
[    6.621002] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    6.628443] [drm] No driver support for vblank timestamp query.
[    6.723146] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Auxiliary Video Information (AVI), version 2, length 13
[    6.723159] dwhdmi-rockchip ff980000.hdmi:     colorspace: YCbCr 4:2:2
[    6.723169] dwhdmi-rockchip ff980000.hdmi:     scan mode: Underscan
[    6.723178] dwhdmi-rockchip ff980000.hdmi:     colorimetry: ITU709
[    6.723188] dwhdmi-rockchip ff980000.hdmi:     picture aspect: 16:9
[    6.723197] dwhdmi-rockchip ff980000.hdmi:     active aspect: Same as Picture
[    6.723206] dwhdmi-rockchip ff980000.hdmi:     itc: No Data
[    6.723216] dwhdmi-rockchip ff980000.hdmi:     extended colorimetry: xvYCC 709
[    6.723225] dwhdmi-rockchip ff980000.hdmi:     quantization range: Limited
[    6.723234] dwhdmi-rockchip ff980000.hdmi:     nups: Unknown Non-uniform Scaling
[    6.723244] dwhdmi-rockchip ff980000.hdmi:     video code: 16
[    6.723253] dwhdmi-rockchip ff980000.hdmi:     ycc quantization range: Limited
[    6.723262] dwhdmi-rockchip ff980000.hdmi:     hdmi content type: Graphics
[    6.723271] dwhdmi-rockchip ff980000.hdmi:     pixel repeat: 0
[    6.723282] dwhdmi-rockchip ff980000.hdmi:     bar top 0, bottom 0, left 0, right 0
[    6.723334] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Source Product Description (SPD), version 1, length 25
[    6.723343] dwhdmi-rockchip ff980000.hdmi:     vendor: DW
[    6.723353] dwhdmi-rockchip ff980000.hdmi:     product: HDMI
[    6.723363] dwhdmi-rockchip ff980000.hdmi:     source device information: PC General (0x9)
[    6.762940] usb 1-1.2: new full-speed USB device number 4 using dwc2
[    6.787811] Console: switching to colour frame buffer device 240x67
[    6.971363] usb 1-1.2: New USB device found, idVendor=045e, idProduct=0745, bcdDevice= 6.34
[    6.974676] rockchip-drm display-subsystem: fb0: rockchipdrmfb frame buffer device
[    6.981195] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    7.032010] usb 1-1.2: Product: Microsoft\xc2\xae Nano Transceiver v2.0
[    7.032885] [drm] Initialized rockchip 1.0.0 20140818 for display-subsystem on minor 0
[    7.039065] usb 1-1.2: Manufacturer: Microsoft
[    7.040475] scsi 0:0:0:0: Direct-Access     WDC WD25 00BEVS-60UST0    1A01 PQ: 0 ANSI: 2 CCS
[    7.049607] rk_gmac-dwmac ff290000.ethernet: IRQ eth_lpi not found
[    7.055775] sd 0:0:0:0: [sda] 488397168 512-byte logical blocks: (250 GB/233 GiB)
[    7.063295] rk_gmac-dwmac ff290000.ethernet: PTP uses main clock
[    7.071926] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.0/0003:045E:0745.0002/input/input1
[    7.072242] sd 0:0:0:0: [sda] Write Protect is off
[    7.072257] sd 0:0:0:0: [sda] Mode Sense: 00 38 00 00
[    7.072865] sd 0:0:0:0: [sda] Asking for cache data failed
[    7.072878] sd 0:0:0:0: [sda] Assuming drive cache: write through
[    7.079214] rk_gmac-dwmac ff290000.ethernet: clock input or output? (input).
[    7.089517]  sda: sda1 sda2
[    7.101845] rk_gmac-dwmac ff290000.ethernet: TX delay(0x30).
[    7.110910] sd 0:0:0:0: [sda] Attached SCSI disk
[    7.113722] rk_gmac-dwmac ff290000.ethernet: RX delay(0x10).
[    7.147810] hid-generic 0003:045E:0745.0002: input,hidraw1: USB HID v1.11 Keyboard [Microsoft Microsoft\xc2\xae Nano Transceiver v2.0] on usb-ff540000.usb-1.2/input0
[    7.149288] rk_gmac-dwmac ff290000.ethernet: integrated PHY? (no).
[    7.210321] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 Mouse as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.1/0003:045E:0745.0003/input/input2
[    7.228471] rk_gmac-dwmac ff290000.ethernet: cannot get clock clk_mac_speed
[    7.256848] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 Consumer Control as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.1/0003:045E:0745.0003/input/input3
[    7.275970] rk_gmac-dwmac ff290000.ethernet: clock input from PHY
[    7.329517] rk_gmac-dwmac ff290000.ethernet: init for RGMII
[    7.342244] random: crng init done
[    7.364598] rk_gmac-dwmac ff290000.ethernet: User ID: 0x10, Synopsys ID: 0x35
[    7.364611] hid-generic 0003:045E:0745.0003: input,hidraw2: USB HID v1.11 Mouse [Microsoft Microsoft\xc2\xae Nano Transceiver v2.0] on usb-ff540000.usb-1.2/input1
[    7.375408] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 Consumer Control as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.2/0003:045E:0745.0004/input/input4
[    7.385105] rk_gmac-dwmac ff290000.ethernet:         DWMAC1000
[    7.462192] rk_gmac-dwmac ff290000.ethernet: DMA HW capability register supported
[    7.471450] input: Microsoft Microsoft\xc2\xae Nano Transceiver v2.0 System Control as /devices/platform/ff540000.usb/usb1/1-1/1-1.2/1-1.2:1.2/0003:045E:0745.0004/input/input6
[    7.483586] rk_gmac-dwmac ff290000.ethernet: RX Checksum Offload Engine supported
[    7.514994] hid-generic 0003:045E:0745.0004: input,hiddev96,hidraw3: USB HID v1.11 Device [Microsoft Microsoft\xc2\xae Nano Transceiver v2.0] on usb-ff540000.usb-1.2/input2
[    7.535925] rk_gmac-dwmac ff290000.ethernet: COE Type 2
[    7.586188] rk_gmac-dwmac ff290000.ethernet: TX Checksum insertion supported
[    7.607887] rk_gmac-dwmac ff290000.ethernet: Wake-Up On Lan supported
[    7.628823] rk_gmac-dwmac ff290000.ethernet: Normal descriptors
[    7.649012] rk_gmac-dwmac ff290000.ethernet: Ring mode enabled
[    7.668960] rk_gmac-dwmac ff290000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    7.691453] mdio_bus stmmac-0: GPIO lookup for consumer reset
[    7.691465] mdio_bus stmmac-0: using lookup tables for GPIO lookup
[    7.691477] mdio_bus stmmac-0: No GPIO consumer reset found
[    7.691490] rk_gmac-dwmac ff290000.ethernet: GPIO lookup for consumer snps,reset
[    7.691501] rk_gmac-dwmac ff290000.ethernet: using device tree for GPIO lookup
[    7.691542] of_get_named_gpiod_flags: can't parse 'snps,reset-gpios' property of node '/ethernet@ff290000[0]'
[    7.691596] of_get_named_gpiod_flags: parsed 'snps,reset-gpio' property of node '/ethernet@ff290000[0]' - status (0)
[    7.691636] gpio gpiochip4: Persistence not supported for GPIO 8
[    8.756583] mdio_bus stmmac-0:00: GPIO lookup for consumer reset
[    8.756604] mdio_bus stmmac-0:00: using lookup tables for GPIO lookup
[    8.756622] mdio_bus stmmac-0:00: No GPIO consumer reset found
[    8.769749] mdio_bus stmmac-0:01: GPIO lookup for consumer reset
[    8.769763] mdio_bus stmmac-0:01: using lookup tables for GPIO lookup
[    8.769776] mdio_bus stmmac-0:01: No GPIO consumer reset found
[    8.777614] libphy: stmmac: probed
[    8.794836] RTL8211E Gigabit Ethernet stmmac-0:00: attached PHY driver [RTL8211E Gigabit Ethernet] (mii_bus:phy_addr=stmmac-0:00, irq=POLL)
[    8.822615] RTL8211E Gigabit Ethernet stmmac-0:01: attached PHY driver [RTL8211E Gigabit Ethernet] (mii_bus:phy_addr=stmmac-0:01, irq=POLL)
[    8.851803] hctosys: unable to open rtc device (rtc0)
[    8.871305] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    8.935730] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    8.956859] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    8.980165] cfg80211: failed to load regulatory.db
[    9.005266] Freeing unused kernel memory: 2048K
[    9.031377] Run /init as init process
[    9.074608] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Auxiliary Video Information (AVI), version 2, length 13
[    9.100466] dwhdmi-rockchip ff980000.hdmi:     colorspace: YCbCr 4:2:2
[    9.100478] dwhdmi-rockchip ff980000.hdmi:     scan mode: Underscan
[    9.100487] dwhdmi-rockchip ff980000.hdmi:     colorimetry: ITU709
[    9.100497] dwhdmi-rockchip ff980000.hdmi:     picture aspect: 16:9
[    9.100506] dwhdmi-rockchip ff980000.hdmi:     active aspect: Same as Picture
[    9.100515] dwhdmi-rockchip ff980000.hdmi:     itc: No Data
[    9.100525] dwhdmi-rockchip ff980000.hdmi:     extended colorimetry: xvYCC 709
[    9.100534] dwhdmi-rockchip ff980000.hdmi:     quantization range: Limited
[    9.100548] dwhdmi-rockchip ff980000.hdmi:     nups: Unknown Non-uniform Scaling
[    9.295649] dwhdmi-rockchip ff980000.hdmi:     video code: 16
[    9.295666] dwhdmi-rockchip ff980000.hdmi:     ycc quantization range: Limited
[    9.338506] dwhdmi-rockchip ff980000.hdmi:     hdmi content type: Graphics
[    9.338517] dwhdmi-rockchip ff980000.hdmi:     pixel repeat: 0
[    9.338529] dwhdmi-rockchip ff980000.hdmi:     bar top 0, bottom 0, left 0, right 0
[    9.338607] dwhdmi-rockchip ff980000.hdmi: HDMI infoframe: Source Product Description (SPD), version 1, length 25
[    9.338617] dwhdmi-rockchip ff980000.hdmi:     vendor: DW
[    9.338627] dwhdmi-rockchip ff980000.hdmi:     product: HDMI
[    9.338637] dwhdmi-rockchip ff980000.hdmi:     source device information: PC General (0x9)
[   10.683000] rtc-hym8563 0-0051: no valid clock/calendar values available
[   10.740544] rtc-hym8563 0-0051: registered as rtc0
[   10.769760] usbcore: registered new interface driver uas
[   10.913187] of_get_named_gpiod_flags: parsed 'gpios' property of node '/gpio-keys/button@0[0]' - status (0)
[   10.913226] gpio gpiochip0: Persistence not supported for GPIO 5
[   10.913611] input: gpio-keys as /devices/platform/gpio-keys/input/input7
[   27.765417] EXT4-fs (sda1): mounted filesystem with ordered data mode. Opts: (null)
[   30.598730] systemd[1]: System time before build time, advancing clock.
[   30.908535] systemd[1]: systemd 245.4-4ubuntu3 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=hybrid)
[   30.960591] systemd[1]: Detected architecture arm.
[   31.174177] systemd[1]: Set hostname to <xt>.
[   31.518220] ttyS2 - failed to request DMA
[   35.422219] systemd[1]: /lib/systemd/system/dbus.socket:5: ListenStream= references a path below legacy directory /var/run/, updating /var/run/dbus/system_bus_socket \xe2\x86\x92 /run/dbus/system_bus_socket; please update the unit file accordingly.
[   36.818995] systemd[1]: system-modprobe.slice: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
[   36.845760] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
[   36.874325] systemd[1]: Created slice system-modprobe.slice.
[   36.909514] systemd[1]: Created slice system-serial\x2dgetty.slice.
[   36.944743] systemd[1]: Created slice User and Session Slice.
[   36.977679] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[   37.014055] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[   37.051290] systemd[1]: Reached target User and Group Name Lookups.
[   37.084634] systemd[1]: Reached target Remote File Systems.
[   37.116767] systemd[1]: Reached target Slices.
[   37.147386] systemd[1]: Reached target Swap.
[   37.234850] systemd[1]: Listening on Syslog Socket.
[   37.267426] systemd[1]: Listening on fsck to fsckd communication Socket.
[   37.304097] systemd[1]: Listening on initctl Compatibility Named Pipe.
[   37.341993] systemd[1]: Listening on Journal Audit Socket.
[   37.377769] systemd[1]: Listening on Journal Socket (/dev/log).
[   37.414606] systemd[1]: Listening on Journal Socket.
[   37.450273] systemd[1]: Listening on udev Control Socket.
[   37.486161] systemd[1]: Listening on udev Kernel Socket.
[   37.522124] systemd[1]: Condition check resulted in Huge Pages File System being skipped.
[   37.555136] systemd[1]: Mounting POSIX Message Queue File System...
[   37.603127] systemd[1]: Mounting Kernel Debug File System...
[   37.650795] systemd[1]: Mounting Kernel Trace File System...
[   37.700092] systemd[1]: Starting Journal Service...
[   37.754723] systemd[1]: Starting Restore / save the current clock...
[   37.804541] systemd[1]: Starting Set the console keyboard layout...
[   37.855900] systemd[1]: Starting Create list of static device nodes for the current kernel...
[   37.898342] systemd[1]: Condition check resulted in Load Kernel Module drm being skipped.
[   37.933903] systemd[1]: Started Nameserver information manager.
[   37.975614] systemd[1]: Reached target Network (Pre).
[   38.126504] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped.
[   38.151233] systemd[1]: Condition check resulted in File System Check on Root Device being skipped.
[   38.251480] systemd[1]: Starting Load Kernel Modules...
[   38.294456] systemd[1]: Starting Remount Root and Kernel File Systems...
[   38.340209] systemd[1]: Starting udev Coldplug all Devices...
[   38.388454] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro
[   38.395055] systemd[1]: Mounted POSIX Message Queue File System.
[   38.449750] systemd[1]: Mounted Kernel Debug File System.
[   38.482713] systemd[1]: Mounted Kernel Trace File System.
[   38.520741] systemd[1]: Finished Restore / save the current clock.
[   38.559708] systemd[1]: Finished Create list of static device nodes for the current kernel.
[   38.608893] systemd[1]: Finished Load Kernel Modules.
[   38.648057] systemd[1]: Finished Remount Root and Kernel File Systems.
[   38.685623] systemd[1]: Condition check resulted in FUSE Control File System being skipped.
[   38.715507] systemd[1]: Mounting Kernel Configuration File System...
[   38.803539] systemd[1]: Condition check resulted in Rebuild Hardware Database being skipped.
[   38.825502] systemd[1]: Condition check resulted in Platform Persistent Storage Archival being skipped.
[   38.856164] systemd[1]: Starting Load/Save Random Seed...
[   38.896819] systemd[1]: Starting Apply Kernel Variables...
[   38.937333] systemd[1]: Starting Create System Users...
[   38.975459] systemd[1]: Started Journal Service.
[   39.220058] systemd-journald[328]: Received client request to flush runtime journal.
[   39.906948] vcc_sd: disabling
[   40.133270] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[   44.534321] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 500000 KHz
[   44.536292] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 600000 KHz
[   45.039584] gpiomem-rk3288 ff750000.rk3288-gpiomem: Initialised: Registers at 0xff750000
[   45.421260] zram: Added device: zram0
[   45.421559] zram: Added device: zram1
[   45.421835] zram: Added device: zram2
[   45.437026] rk3288-crypto ff8a0000.cypto-controller: Crypto Accelerator successfully registered
[   46.356324] gpio_ir_recv ir-receiver: GPIO lookup for consumer (null)
[   46.356332] gpio_ir_recv ir-receiver: using device tree for GPIO lookup
[   46.356357] of_get_named_gpiod_flags: parsed 'gpios' property of node '/ir-receiver[0]' - status (0)
[   46.356377] gpio gpiochip7: Persistence not supported for GPIO 0
[   46.356431] Registered IR keymap rc-xt-q8l-v10
[   46.475824] IR NEC protocol handler initialized
[   46.486613] zram1: detected capacity change from 0 to 1049657344
[   46.502971] rc rc0: gpio_ir_recv as /devices/platform/ir-receiver/rc/rc0
[   46.503098] rc rc0: lirc_dev: driver gpio_ir_recv registered at minor = 0, raw IR receiver, no transmitter
[   46.503185] input: gpio_ir_recv as /devices/platform/ir-receiver/rc/rc0/input8
[   46.596631] hantro_vpu: module is from the staging directory, the quality is unknown, you have been warned.
[   46.597920] hantro-vpu ff9a0000.video-codec: Adding to iommu group 2
[   46.599784] hantro-vpu ff9a0000.video-codec: registered rockchip,rk3288-vpu-enc as /dev/video0
[   46.599957] hantro-vpu ff9a0000.video-codec: registered rockchip,rk3288-vpu-dec as /dev/video1
[   46.684092] panfrost ffa30000.gpu: clock rate = 400000000
[   46.685282] panfrost ffa30000.gpu: mali-t760 id 0x750 major 0x0 minor 0x0 status 0x1
[   46.685290] panfrost ffa30000.gpu: features: 00000000,100277bf, issues: 00000000,24040400
[   46.685295] panfrost ffa30000.gpu: Features: L2:0x07120206 Shader:0x00000000 Tiler:0x00000809 Mem:0x1 MMU:0x00002830 AS:0xff JS:0x7
[   46.685306] panfrost ffa30000.gpu: shader_present=0xf l2_present=0x1
[   46.687951] [drm] Initialized panfrost 1.1.0 20180908 for ffa30000.gpu on minor 1
[   46.754484] rockchip-rga ff920000.rga: HW Version: 0x00.00
[   46.755012] rockchip-rga ff920000.rga: Registered rockchip-rga as /dev/video2
[   47.374934] Adding 1025052k swap on /dev/zram1.  Priority:5 extents:1 across:1025052k SSFS
[   47.426699] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/soundcard-spdif[0]'
[   47.426712] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/soundcard-spdif[0]'
[   47.427836] asoc-simple-card soundcard-spdif: dit-hifi <-> ff8b0000.sound mapping ok
[   48.310527] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac-ap6330-sdio for chip BCM4330/4
[   48.397633] zram0: detected capacity change from 0 to 52428800
[   49.515844] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac-ap6330-sdio for chip BCM4330/4
[   49.515915] brcmfmac: brcmf_c_process_clm_blob: no clm_blob available (err=-2), device may have limited channels available
[   49.516256] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4330/4 wl0: Jan 23 2013 17:46:35 version 5.90.195.114 FWID 01-cafa6b3e
[   49.539570] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 184
[   49.539578] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 188
[   49.539582] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 192
[   49.539586] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 196
[   49.539590] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 200
[   49.539594] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 204
[   49.539598] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 208
[   49.539601] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 212
[   49.539605] ieee80211 phy0: brcmf_construct_chaninfo: Ignoring unexpected firmware channel 216
[   50.222518] of_get_named_gpiod_flags: can't parse 'simple-audio-card,hp-det-gpio' property of node '/soundcard-hdmi[0]'
[   50.222560] of_get_named_gpiod_flags: can't parse 'simple-audio-card,mic-det-gpio' property of node '/soundcard-hdmi[0]'
[   50.225047] asoc-simple-card soundcard-hdmi: i2s-hifi <-> ff890000.i2s mapping ok
[   50.839116] EXT4-fs (zram0): mounted filesystem without journal. Opts: discard
[   50.839150] ext4 filesystem being mounted at /var/log supports timestamps until 2038 (0x7fffffff)
[   73.216273] rk_gmac-dwmac ff290000.ethernet eth0: PHY [stmmac-0:00] driver [RTL8211E Gigabit Ethernet]
[   73.226937] rk_gmac-dwmac ff290000.ethernet eth0: No Safety Features support found
[   73.226948] rk_gmac-dwmac ff290000.ethernet eth0: PTP not supported by HW
[   73.226956] rk_gmac-dwmac ff290000.ethernet eth0: configuring for phy/rgmii link mode
[   75.587000] ieee80211 phy0: brcmf_p2p_create_p2pdev: timeout occurred
[   75.587031] ieee80211 phy0: brcmf_cfg80211_add_iface: add iface p2p-dev-wlan0 type 10 failed: err=-5
[   91.914473] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   99.110595] fuse: init (API version 7.31)
[   99.110743] *** VALIDATE fuse ***
[   99.110762] *** VALIDATE fuse ***

 

Queries with v4l2-vctl:

  Reveal hidden contents

paolo@xt:~$ v4l2-ctl --list-devices && v4l2-ctl -d 1 --list-ctrls --list-formats
rockchip,rk3288-vpu-enc (platform: hantro-vpu):
        /dev/video0
        /dev/video1
        /dev/media0

rockchip-rga (platform:rga):
        /dev/video2


Codec Controls

        mpeg_2_slice_parameters 0x009909fa (unknown): type=103 flags=has-payload
   mpeg_2_quantization_matrices 0x009909fb (unknown): type=104 flags=has-payload
    h264_sequence_parameter_set 0x00990ce8 (unknown): type=110 flags=has-payload
     h264_picture_parameter_set 0x00990ce9 (unknown): type=111 flags=has-payload
            h264_scaling_matrix 0x00990cea (unknown): type=112 flags=has-payload
          h264_slice_parameters 0x00990ceb (unknown): type=113 flags=has-payload
         h264_decode_parameters 0x00990cec (unknown): type=114 flags=has-payload
               h264_decode_mode 0x00990ced (menu)   : min=1 max=1 default=1 value=1
                h264_start_code 0x00990cee (menu)   : min=1 max=1 default=1 value=1
               vp8_frame_header 0x009910d0 (unknown): type=301 flags=has-payload
ioctl: VIDIOC_ENUM_FMT
        Type: Video Capture Multiplanar

        [0]: 'NV12' (Y/CbCr 4:2:0)

 

This is the result of trying to run ffmpeg (with -loglevel debug):

  Reveal hidden contents

paolo@xt:~/Downloads$ ffmpeg -loglevel debug -hwaccel drm -c:v h264_v4l2m2m  -i bbb_sunflower_1080p_30fps_normal.mp4 -f null -
ffmpeg version 755190b-Kodi Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
  configuration: --arch=armhf --extra-libs='-Lpthread -Lm' --disable-debug --enable-stripping --enable-gpl --enable-nonfree --enable-logging --disable-doc --enable-pic --enable-optimizations --enable-ffmpeg --enable-avdevice --enable-avcodec --enable-avformat --enable-swscale --enable-postproc --enable-avfilter --disable-devices --enable-pthreads --disable-w32threads --enable-network --disable-gnutls --disable-gray --enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-mdct --enable-rdft --disable-crystalhd --disable-vaapi --disable-vdpau --enable-libdrm --enable-version3 --enable-runtime-cpudetect --enable-hardcoded-tables --enable-encoder=ac3 --enable-encoder=aac --enable-encoder=wmav2 --enable-encoder=mjpeg --enable-encoder=png --enable-hwaccels --enable-muxer=spdif --enable-muxer=adts --enable-muxer=asf --enable-muxer=ipod --enable-muxer=mpegts --enable-demuxers --enable-parsers --enable-bsfs --enable-filters --enable-bzlib --enable-libspeex --enable-libx264 --enable-libx265 --enable-zlib --enable-asm --enable-neon --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libvorbis --enable-libvpx --enable-openssl --enable-libv4l2 --enable-v4l2-request --enable-libudev
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.                                                                   
Reading option '-hwaccel' ... matched as option 'hwaccel' (use HW accelerated decoding) with argument 'drm'.                                                             
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'h264_v4l2m2m'.                                                                               
Reading option '-i' ... matched as input url with argument 'bbb_sunflower_1080p_30fps_normal.mp4'.                                                                       
Reading option '-f' ... matched as option 'f' (force format) with argument 'null'.                                                                                       
Reading option '-' ... matched as output url.                                                                                                                            
Finished splitting the commandline.                                                                                                                                      
Parsing a group of options: global .                                                                                                                                     
Applying option loglevel (set logging level) with argument debug.                                                                                                        
Successfully parsed a group of options.                                                                                                                                  
Parsing a group of options: input url bbb_sunflower_1080p_30fps_normal.mp4.                                                                                              
Applying option hwaccel (use HW accelerated decoding) with argument drm.                                                                                                 
Applying option c:v (codec name) with argument h264_v4l2m2m.                                                                                                             
Successfully parsed a group of options.                                                                                                                                  
Opening an input file: bbb_sunflower_1080p_30fps_normal.mp4.                                                                                                             
[NULL @ 0x1f47ad0] Opening 'bbb_sunflower_1080p_30fps_normal.mp4' for reading                                                                                            
[file @ 0x1f48290] Setting default whitelist 'file,crypto'                                                                                                               
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100                                                                 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] ISO: File Type Major Brand: isom                                                                                                   
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Unknown dref type 0x206c7275 size 12                                                                                               
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Setting codecpar->delay to 2 for stream st: 0                                                                                      
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Unknown dref type 0x206c7275 size 12                                                                                               
    Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] Before avformat_find_stream_info() pos: 276134913 bytes read:252639 seeks:1 nb_streams:3
[h264 @ 0x1f48e90] nal_unit_type: 7(SPS), nal_ref_idc: 3                                                                                                                 
[h264 @ 0x1f48e90] nal_unit_type: 8(PPS), nal_ref_idc: 3                                                                                                                 
[h264 @ 0x1f48e90] nal_unit_type: 6(SEI), nal_ref_idc: 0                                                                                                                 
[h264 @ 0x1f48e90] nal_unit_type: 5(IDR), nal_ref_idc: 3                                                                                                                 
[h264 @ 0x1f48e90] Format yuv420p chosen by get_format().                                                                                                                
[h264 @ 0x1f48e90] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x1f48e90] no picture
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] All info found                                                                                                                     
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x1f47ad0] After avformat_find_stream_info() pos: 305350 bytes read:350943 seeks:2 frames:38                                                  
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'bbb_sunflower_1080p_30fps_normal.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2013-12-16T17:44:39.000000Z
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    composer        : Sacha Goedegebure
  Duration: 00:10:34.53, start: 0.000000, bitrate: 3481 kb/s
    Stream #0:0(und), 16, 1/30000: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 0/1, 2998 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:39.000000Z
      handler_name    : GPAC ISO Video Handler
    Stream #0:1(und), 21, 1/48000: Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
    Stream #0:2(und), 1, 1/48000: Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
    Side data:
      audio service type: main
Successfully opened the file.
Parsing a group of options: output url -.
Applying option f (force format) with argument null.
Successfully parsed a group of options.
Opening an output file: -.
Successfully opened the file.
[h264_v4l2m2m @ 0x1f7cc10] probing device /dev/video2
[h264_v4l2m2m @ 0x1f7cc10] driver 'hantro-vpu' on card 'rockchip,rk3288-vpu-dec'
[h264_v4l2m2m @ 0x1f7cc10] v4l2 output format not supported
[h264_v4l2m2m @ 0x1f7cc10] probing device /dev/video1
[h264_v4l2m2m @ 0x1f7cc10] driver 'hantro-vpu' on card 'rockchip,rk3288-vpu-enc'
[h264_v4l2m2m @ 0x1f7cc10] v4l2 output format not supported
[h264_v4l2m2m @ 0x1f7cc10] probing device /dev/video0
[h264_v4l2m2m @ 0x1f7cc10] driver 'rockchip-rga' on card 'rockchip-rga'
[h264_v4l2m2m @ 0x1f7cc10] v4l2 output format not supported
[h264_v4l2m2m @ 0x1f7cc10] Could not find a valid device
[h264_v4l2m2m @ 0x1f7cc10] can't configure decoder
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (h264_v4l2m2m) -> wrapped_avframe (native))
  Stream #0:2 -> #0:1 (ac3 (native) -> pcm_s16le (native))
Error while opening decoder for input stream #0:0 : Invalid argument
[AVIOContext @ 0x1f504b0] Statistics: 350943 bytes read, 2 seeks

 

 

The h264_v4l2m2m decoder in FFmpeg is only for stateful decoders like the Amlogic VPU. The stateless decoders hantro and rkvdec use a different approach in FFmpeg, using the "h264" decoder but with hardware acceleration using v4l2-request API. Try using this ffmpeg command, which worked for testing decoding with the rkvdec on my rk3399 board: 

ffmpeg -loglevel debug -hwaccel drm -i bbb_sunflower_1080p_30fps_normal.mp4 -f null -

or change the "-f null -" to "-pix_fmt bgra -f fbdev /dev/fb0" to output video to the Linux framebuffer device while X11 or Wayland aren't running, for example.

Link to comment
Share on other sites

1 hour ago, Hugh Cole-Baker said:

 

The h264_v4l2m2m decoder in FFmpeg is only for stateful decoders like the Amlogic VPU. The stateless decoders hantro and rkvdec use a different approach in FFmpeg, using the "h264" decoder but with hardware acceleration using v4l2-request API. Try using this ffmpeg command, which worked for testing decoding with the rkvdec on my rk3399 board: 


ffmpeg -loglevel debug -hwaccel drm -i bbb_sunflower_1080p_30fps_normal.mp4 -f null -

or change the "-f null -" to "-pix_fmt bgra -f fbdev /dev/fb0" to output video to the Linux framebuffer device while X11 or Wayland aren't running, for example.

Thanks for the answer.

The command line does not trigger any error, decoding happens but still in software: I see no references about v4l2_request in the ffmpeg output, cpu usage is close to 100% and decoding rate is around 75fps.

 

I see you say that this works for you with rkvdec module, but I have only hantro driver module at the moment. My kernel is vanilla 5.6.13.

Link to comment
Share on other sites

Been a few months since I've worked on trying to get VPU support on mainline but I was able to get pretty close working with xmixahlx on the Pine64 IRC. He made a forum post specifying all the resources we used: https://forum.pine64.org/showthread.php?tid=9171. I'll give some insight into my process:

I started with the Manjaro ARM kernel (5.5 which was very close to vanilla mainline) and applied patches created by diffing it against specific parts of
- https://github.com/bbrezillon/linux/tree/rk/vdec-h264-v9%2Bhantro-h264
- https://github.com/Kwiboo/linux-rockchip/tree/v4l2-5.5-from-list-v5.5-rkvdec
- https://github.com/LibreELEC/LibreELEC.tv/tree/master/projects/Rockchip/patches/linux/default

such that I would be able to compile
- https://github.com/pH5/libva/tree/hantro-h264
- https://github.com/pH5/libva-v4l2-request
- https://github.com/Kwiboo/FFmpeg/tree/v4l2-request-hwaccel-4.2.2

without any errors.

With this done, I began testing. MPEG2 was working with Hantro however H264 didn't have a codec for profile 100 (High) which is what most content is encoded in.

mpv -hwdec bbb_sunflower_native_60fps_normal.mp4
>>> [ffmpeg/video] h264: No support for codec h264 profile 100.

xmixahlx Has kept the thread I mentioned up to date on any new progress he finds so I suggest checking it out.

Link to comment
Share on other sites

On 5/20/2020 at 10:01 AM, jock said:

Thanks for the answer.

The command line does not trigger any error, decoding happens but still in software: I see no references about v4l2_request in the ffmpeg output, cpu usage is close to 100% and decoding rate is around 75fps.

 

I see you say that this works for you with rkvdec module, but I have only hantro driver module at the moment. My kernel is vanilla 5.6.13.

 

A couple of other reasons I can think of why it wouldn't work: Does the user you're running ffmpeg as have write permission on /dev/video*,  /dev/media* and /dev/dri/card* devices? And did the compile time checks for v4l2_request support in FFmpeg pass? (you need to see v4l2_request under "External libraries providing hardware acceleration:", and h264_v4l2request under "Enabled hwaccels:", in the output of FFmpeg's configure script when you're compiling it). For the FFmpeg configure checks to pass, AFAIK you need the kernel headers from a recent kernel with v4l2-request support installed, e.g. kernel v5.6.

Link to comment
Share on other sites

14 hours ago, Hugh Cole-Baker said:

 

A couple of other reasons I can think of why it wouldn't work: Does the user you're running ffmpeg as have write permission on /dev/video*,  /dev/media* and /dev/dri/card* devices? And did the compile time checks for v4l2_request support in FFmpeg pass? (you need to see v4l2_request under "External libraries providing hardware acceleration:", and h264_v4l2request under "Enabled hwaccels:", in the output of FFmpeg's configure script when you're compiling it). For the FFmpeg configure checks to pass, AFAIK you need the kernel headers from a recent kernel with v4l2-request support installed, e.g. kernel v5.6.

 

Thanks a lot! I never thought that kernel headers could be the problem. Looking more thoughly there was a some mess situation with headers and was able to spot some missing definitions looking into ffbuild/config.log that prevented v4l2_request to be compiled in.

I surely was not expecting that the configure script fails silently on a feature you explicitly request..

 

By the way I'm still not out of the tunnel. Ffmpeg compiles and v4l2_request works, but I get the error v4l2_request_try_format: pixelformat 875967059 not supported for type 10. 875967059 (0x34363253) is the ASCII for 462S, I don't know if this has some meaning...

 

Spoiler

paolo@xt:~/Downloads$ ffmpeg -loglevel debug  -hwaccel drm -i bbb_sunflower_1080p_30fps_normal.mp4 -f null -
ffmpeg version 755190b-Kodi Copyright (c) 2000-2019 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
  configuration: --enable-libdrm --enable-v4l2-request --enable-libudev --enable-static --disable-shared
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
Splitting the commandline.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument 'debug'.                                                                               
Reading option '-hwaccel' ... matched as option 'hwaccel' (use HW accelerated decoding) with argument 'drm'.                                                                         
Reading option '-i' ... matched as input url with argument 'bbb_sunflower_1080p_30fps_normal.mp4'.                                                                                   
Reading option '-f' ... matched as option 'f' (force format) with argument 'null'.                                                                                                   
Reading option '-' ... matched as output url.                                                                                                                                        
Finished splitting the commandline.                                                                                                                                                  
Parsing a group of options: global .                                                                                                                                                 
Applying option loglevel (set logging level) with argument debug.                                                                                                                    
Successfully parsed a group of options.                                                                                                                                              
Parsing a group of options: input url bbb_sunflower_1080p_30fps_normal.mp4.                                                                                                          
Applying option hwaccel (use HW accelerated decoding) with argument drm.                                                                                                             
Successfully parsed a group of options.                                                                                                                                              
Opening an input file: bbb_sunflower_1080p_30fps_normal.mp4.                                                                                                                         
[NULL @ 0x312d3b0] Opening 'bbb_sunflower_1080p_30fps_normal.mp4' for reading                                                                                                        
[file @ 0x312dbb0] Setting default whitelist 'file,crypto'                                                                                                                           
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100                                                                             
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] ISO: File Type Major Brand: isom                                                                                                               
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] Unknown dref type 0x206c7275 size 12                                                                                                           
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] Setting codecpar->delay to 2 for stream st: 0                                                                                                  
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] Unknown dref type 0x206c7275 size 12                                                                                                           
    Last message repeated 1 times
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] Before avformat_find_stream_info() pos: 276134913 bytes read:252639 seeks:1 nb_streams:3
[h264 @ 0x312e9c0] nal_unit_type: 7(SPS), nal_ref_idc: 3                                                                                                                             
[h264 @ 0x312e9c0] nal_unit_type: 8(PPS), nal_ref_idc: 3                                                                                                                             
[h264 @ 0x312e9c0] nal_unit_type: 6(SEI), nal_ref_idc: 0                                                                                                                             
[h264 @ 0x312e9c0] nal_unit_type: 5(IDR), nal_ref_idc: 3                                                                                                                             
[h264 @ 0x312e9c0] Format yuv420p chosen by get_format().                                                                                                                            
[h264 @ 0x312e9c0] Reinit context to 1920x1088, pix_fmt: yuv420p
[h264 @ 0x312e9c0] no picture
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] All info found                                                                                                                                 
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x312d3b0] After avformat_find_stream_info() pos: 305350 bytes read:350943 seeks:2 frames:38                                                              
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'bbb_sunflower_1080p_30fps_normal.mp4':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    creation_time   : 2013-12-16T17:44:39.000000Z
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    composer        : Sacha Goedegebure
  Duration: 00:10:34.53, start: 0.000000, bitrate: 3481 kb/s
    Stream #0:0(und), 16, 1/30000: Video: h264 (High), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 0/1, 2998 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:39.000000Z
      handler_name    : GPAC ISO Video Handler
    Stream #0:1(und), 21, 1/48000: Audio: mp3 (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 160 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
    Stream #0:2(und), 1, 1/48000: Audio: ac3 (ac-3 / 0x332D6361), 48000 Hz, 5.1(side), fltp, 320 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
    Side data:
      audio service type: main
Successfully opened the file.
Parsing a group of options: output url -.                                                                                                                                            
Applying option f (force format) with argument null.                                                                                                                                 
Successfully parsed a group of options.                                                                                                                                              
Opening an output file: -.                                                                                                                                                           
Successfully opened the file.                                                                                                                                                        
detected 4 logical cores                                                                                                                                                             
[h264 @ 0x31646e0] nal_unit_type: 7(SPS), nal_ref_idc: 3                                                                                                                             
[h264 @ 0x31646e0] nal_unit_type: 8(PPS), nal_ref_idc: 3                                                                                                                             
Stream mapping:
  Stream #0:0 -> #0:0 (h264 (native) -> wrapped_avframe (native))
  Stream #0:2 -> #0:1 (ac3 (native) -> pcm_s16le (native))
Press [q] to stop, [?] for help
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)
    Last message repeated 1 times
[h264 @ 0x31646e0] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x31646e0] nal_unit_type: 5(IDR), nal_ref_idc: 3                                                                                                                             
[h264 @ 0x31646e0] Format drm_prime chosen by get_format().                                                                                                                          
[h264 @ 0x31646e0] Format drm_prime requires hwaccel initialisation.                                                                                                                 
[h264 @ 0x31646e0] ff_v4l2_request_init: avctx=0x31646e0 hw_device_ctx=0x3162510 hw_frames_ctx=(nil)                                                                                 
[h264 @ 0x31646e0] v4l2_request_probe_media_device: avctx=0x31646e0 ctx=0xb3f46d30 path=/dev/media0 driver=hantro-vpu                                                                
[h264 @ 0x31646e0] v4l2_request_probe_video_device: avctx=0x31646e0 ctx=0xb3f46d30 path=/dev/video1 capabilities=69222400                                                            
[h264 @ 0x31646e0] v4l2_request_try_format: pixelformat 875967059 not supported for type 10
[h264 @ 0x31646e0] v4l2_request_probe_video_device: try output format failed
[h264 @ 0x31646e0] v4l2_request_probe_video_device: avctx=0x31646e0 ctx=0xb3f46d30 path=/dev/video2 capabilities=69222400
[h264 @ 0x31646e0] v4l2_request_init_context: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] ff_v4l2_request_frame_params: avctx=0x31646e0 ctx=0xb3f46d30 hw_frames_ctx=0xb3f57090 hwfc=0xb3f57cd0 pool=0xb3f57da0 width=1920 height=1088 initial_pool_size=3  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f47080                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f471b4 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f471b4 index=0 fd=-1 addr=0xb3d00000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f47218 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f47218 index=0 fd=6 addr=(nil) width=1920 height=1088 size=3655712                                                             
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f47080 request_fd=7                                                                                   
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f474b0                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f475e4 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f475e4 index=1 fd=-1 addr=0xb3b00000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f47648 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f47648 index=1 fd=8 addr=(nil) width=1920 height=1088 size=3655712                                                             
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f474b0 request_fd=9                                                                                   
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f478e0                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f47a14 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f47a14 index=2 fd=-1 addr=0xb3900000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f47a78 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f47a78 index=2 fd=10 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f478e0 request_fd=11                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f47d10                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f47e44 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f47e44 index=3 fd=-1 addr=0xb3700000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f47ea8 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f47ea8 index=3 fd=12 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f47d10 request_fd=13                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f48140                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f48274 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f48274 index=4 fd=-1 addr=0xb3500000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f482d8 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f482d8 index=4 fd=14 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f48140 request_fd=15                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f48570                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f486a4 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f486a4 index=5 fd=-1 addr=0xb3300000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f48708 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f48708 index=5 fd=16 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f48570 request_fd=17                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f489c0                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f48af4 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f48af4 index=6 fd=-1 addr=0xb3100000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f48b58 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f48b58 index=6 fd=18 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f489c0 request_fd=19                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f48e70                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f48fa4 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f48fa4 index=7 fd=-1 addr=0xb2f00000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f49008 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f49008 index=7 fd=20 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f48e70 request_fd=21                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f49320                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f49454 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f49454 index=8 fd=-1 addr=0xb2d00000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f494b8 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f494b8 index=8 fd=22 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f49320 request_fd=23                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f497d0                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f49904 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f49904 index=9 fd=-1 addr=0xb2b00000 width=1920 height=1088 size=2097152                                                       
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f49968 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f49968 index=9 fd=24 addr=(nil) width=1920 height=1088 size=3655712                                                            
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f497d0 request_fd=25                                                                                  
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f49c80                                                                                                
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f49db4 type=10                                                                                                 
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=875967059 width=1920 height=1088 bytesperline=0 sizeimage=2097152 num_planes=1                                             
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f49db4 index=10 fd=-1 addr=0xb2900000 width=1920 height=1088 size=2097152                                                      
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: avctx=0x31646e0 buf=0xb3f49e18 type=9                                                                                                  
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[h264 @ 0x31646e0] v4l2_request_buffer_alloc: buf=0xb3f49e18 index=10 fd=26 addr=(nil) width=1920 height=1088 size=3655712                                                           
[h264 @ 0x31646e0] v4l2_request_frame_alloc: avctx=0x31646e0 size=512 data=0xb3f49c80 request_fd=27                                                                                  
[h264 @ 0x31646e0] Reinit context to 1920x1088, pix_fmt: drm_prime
[h264 @ 0x31646e0] no picture
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=413 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] no picture                                                                                                                                                        
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=12283 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                           
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=12108 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                           
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=15326 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                           
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=309 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=8657 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                            
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=1836 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                            
[graph 0 input from stream 0:0 @ 0x357bfc0] Setting 'video_size' to value '1920x1080'                                                                                                
[graph 0 input from stream 0:0 @ 0x357bfc0] Setting 'pix_fmt' to value '23'                                                                                                          
[graph 0 input from stream 0:0 @ 0x357bfc0] Setting 'time_base' to value '1/30000'                                                                                                   
[graph 0 input from stream 0:0 @ 0x357bfc0] Setting 'pixel_aspect' to value '1/1'                                                                                                    
[graph 0 input from stream 0:0 @ 0x357bfc0] Setting 'sws_param' to value 'flags=2'                                                                                                   
[graph 0 input from stream 0:0 @ 0x357bfc0] Setting 'frame_rate' to value '30/1'                                                                                                     
[graph 0 input from stream 0:0 @ 0x357bfc0] w:1920 h:1080 pixfmt:nv12 tb:1/30000 fr:30/1 sar:1/1 sws_param:flags=2
[AVFilterGraph @ 0x357c090] query_formats: 3 queried, 2 merged, 0 already done, 0 delayed
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=1267 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                            
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=160 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=310 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=447 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=361 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=387 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=307 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=436 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=388 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:0 (0) [init:1 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
cur_dts is invalid st:1 (0) [init:0 i_done:0 finish:0] (this is harmless if it occurs once at the start per stream)                                                                  
[graph_1_in_0_2 @ 0x31e8590] Setting 'time_base' to value '1/48000'                                                                                                                  
[graph_1_in_0_2 @ 0x31e8590] Setting 'sample_rate' to value '48000'                                                                                                                  
[graph_1_in_0_2 @ 0x31e8590] Setting 'sample_fmt' to value 'fltp'                                                                                                                    
[graph_1_in_0_2 @ 0x31e8590] Setting 'channel_layout' to value '0x60f'                                                                                                               
[graph_1_in_0_2 @ 0x31e8590] tb:1/48000 samplefmt:fltp samplerate:48000 chlayout:0x60f
[format_out_0_1 @ 0x31f6fa0] Setting 'sample_fmts' to value 's16'
[format_out_0_1 @ 0x31f6fa0] auto-inserting filter 'auto_resampler_0' between the filter 'Parsed_anull_0' and the filter 'format_out_0_1'
[AVFilterGraph @ 0x357b490] query_formats: 4 queried, 6 merged, 3 already done, 0 delayed
[auto_resampler_0 @ 0x31fbbc0] [SWR @ 0x357e290] Using fltp internally between filters                                                                                               
[auto_resampler_0 @ 0x31fbbc0] ch:6 chl:5.1(side) fmt:fltp r:48000Hz -> ch:6 chl:5.1(side) fmt:s16 r:48000Hz
Output #0, null, to 'pipe:':
  Metadata:
    major_brand     : isom
    minor_version   : 1
    compatible_brands: isomavc1
    composer        : Sacha Goedegebure
    title           : Big Buck Bunny, Sunflower version
    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013
    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net
    genre           : Animation
    encoder         : Lavf58.29.100
    Stream #0:0(und), 0, 1/30: Video: wrapped_avframe, 1 reference frame, nv12(progressive, left), 1920x1080 [SAR 1:1 DAR 16:9], 0/1, q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:39.000000Z
      handler_name    : GPAC ISO Video Handler
      encoder         : Lavc58.54.100 wrapped_avframe
    Stream #0:1(und), 0, 1/48000: Audio: pcm_s16le, 48000 Hz, 5.1(side), s16, 4608 kb/s (default)
    Metadata:
      creation_time   : 2013-12-16T17:44:42.000000Z
      handler_name    : GPAC ISO Audio Handler
      encoder         : Lavc58.54.100 pcm_s16le
    Side data:
      audio service type: main
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=393 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=396 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=441 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=342 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=1131 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                            
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=370 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=1177 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=410 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=269 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=1169 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                            
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=366 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=207 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=227 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=902 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=515 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=339 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=1003 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=453 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=229 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=309 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=895 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=1342 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=685 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=381 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=404 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=1817 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                            
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=374 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=1835 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                            
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=381 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=272 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=201 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=860 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=129 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=168 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=141 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=79 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                              
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=647 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=211 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=89 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                              
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=81 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                              
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=87 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                              
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=110 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                             
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=1398 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                            
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=416 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=288 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=230 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=1440 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=271 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=228 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=1695 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                            
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=461 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                             
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=271 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=292 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=248 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=208 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=1006 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                            
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=136 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                            
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=1242 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                            
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=213 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=114 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=91 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                              
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=868 controls=5 index=6 fd=18 request_fd=19 first_slice=1 last_slice=1                                             
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=82 controls=5 index=10 fd=26 request_fd=27 first_slice=1 last_slice=1                                             
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=79 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                              
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=694 controls=5 index=8 fd=22 request_fd=23 first_slice=1 last_slice=1                                             
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=88 controls=5 index=9 fd=24 request_fd=25 first_slice=1 last_slice=1                                              
[h264 @ 0x31abe80] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31abe80] v4l2_request_queue_decode: avctx=0x31abe80 used=70 controls=5 index=4 fd=14 request_fd=15 first_slice=1 last_slice=1                                              
[h264 @ 0x31c48e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31c48e0] v4l2_request_queue_decode: avctx=0x31c48e0 used=69 controls=5 index=3 fd=12 request_fd=13 first_slice=1 last_slice=1                                              
[h264 @ 0x31c9360] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31c9360] v4l2_request_queue_decode: avctx=0x31c9360 used=343 controls=5 index=2 fd=10 request_fd=11 first_slice=1 last_slice=1                                             
[h264 @ 0x31646e0] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 2                                                                                                
[h264 @ 0x31646e0] v4l2_request_queue_decode: avctx=0x31646e0 used=91 controls=5 index=7 fd=20 request_fd=21 first_slice=1 last_slice=1                                              
[h264 @ 0x31eae90] nal_unit_type: 1(Coded slice of a non-IDR picture), nal_ref_idc: 0                                                                                                
[h264 @ 0x31eae90] v4l2_request_queue_decode: avctx=0x31eae90 used=78 controls=5 index=5 fd=16 request_fd=17 first_slice=1 last_slice=1                                              
frame=   81 fps= 40 q=-0.0 Lsize=N/A time=00:00:02.76 bitrate=N/A speed=1.38x    
video:32kB audio:1350kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Input file #0 (bbb_sunflower_1080p_30fps_normal.mp4):
  Input stream #0:0 (video): 87 packets read (90331 bytes); 82 frames decoded;                                                                                                       
  Input stream #0:1 (audio): 21 packets read (10080 bytes);                                                                                                                          
  Input stream #0:2 (audio): 75 packets read (96000 bytes); 75 frames decoded (115200 samples);
  Total: 183 packets (196411 bytes) demuxed
Output file #0 (pipe:):
  Output stream #0:0 (video): 81 frames encoded; 81 packets muxed (33048 bytes);
  Output stream #0:1 (audio): 75 frames encoded (115200 samples); 75 packets muxed (1382400 bytes);
  Total: 156 packets (1415448 bytes) muxed
[NULL @ 0x31fef00] ff_v4l2_request_uninit: avctx=0x31fef00 ctx=0xb3f46d30
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f47d10 request_fd=13
v4l2_request_buffer_free: buf=0xb3f47ea8 index=3 fd=12 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f47e44 index=3 fd=-1 addr=0xb3700000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f497d0 request_fd=25
v4l2_request_buffer_free: buf=0xb3f49968 index=9 fd=24 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f49904 index=9 fd=-1 addr=0xb2b00000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f478e0 request_fd=11
v4l2_request_buffer_free: buf=0xb3f47a78 index=2 fd=10 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f47a14 index=2 fd=-1 addr=0xb3900000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f489c0 request_fd=19
v4l2_request_buffer_free: buf=0xb3f48b58 index=6 fd=18 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f48af4 index=6 fd=-1 addr=0xb3100000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f49320 request_fd=23
v4l2_request_buffer_free: buf=0xb3f494b8 index=8 fd=22 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f49454 index=8 fd=-1 addr=0xb2d00000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f48e70 request_fd=21
v4l2_request_buffer_free: buf=0xb3f49008 index=7 fd=20 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f48fa4 index=7 fd=-1 addr=0xb2f00000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f48570 request_fd=17
v4l2_request_buffer_free: buf=0xb3f48708 index=5 fd=16 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f486a4 index=5 fd=-1 addr=0xb3300000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f48140 request_fd=15
v4l2_request_buffer_free: buf=0xb3f482d8 index=4 fd=14 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f48274 index=4 fd=-1 addr=0xb3500000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f49c80 request_fd=27
v4l2_request_buffer_free: buf=0xb3f49e18 index=10 fd=26 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f49db4 index=10 fd=-1 addr=0xb2900000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f474b0 request_fd=9
v4l2_request_buffer_free: buf=0xb3f47648 index=1 fd=8 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f475e4 index=1 fd=-1 addr=0xb3b00000 width=1920 height=1088 size=2097152
v4l2_request_frame_free: avctx=0x31646e0 data=0xb3f47080 request_fd=7
v4l2_request_buffer_free: buf=0xb3f47218 index=0 fd=6 addr=(nil) width=1920 height=1088 size=3655712
v4l2_request_buffer_free: buf=0xb3f471b4 index=0 fd=-1 addr=0xb3d00000 width=1920 height=1088 size=2097152
v4l2_request_hwframe_ctx_free: hwfc=0xb3f57cd0 pool=0xb3f57da0
v4l2_request_pool_free: opaque=0x31646e0
157 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x3135dd0] Statistics: 482015 bytes read, 5 seeks
Exiting normally, received signal 2.

 

Link to comment
Share on other sites

46 minutes ago, jock said:

By the way I'm still not out of the tunnel. Ffmpeg compiles and v4l2_request works, but I get the error v4l2_request_try_format: pixelformat 875967059 not supported for type 10. 875967059 (0x34363253) is the ASCII for 462S, I don't know if this has some meaning...

 

  Hide contents

[h264 @ 0x31646e0] nal_unit_type: 6(SEI), nal_ref_idc: 0
[h264 @ 0x31646e0] nal_unit_type: 5(IDR), nal_ref_idc: 3                                                                                                                             
[h264 @ 0x31646e0] Format drm_prime chosen by get_format().                                                                                                                          
[h264 @ 0x31646e0] Format drm_prime requires hwaccel initialisation.                                                                                                                 
[h264 @ 0x31646e0] ff_v4l2_request_init: avctx=0x31646e0 hw_device_ctx=0x3162510 hw_frames_ctx=(nil)                                                                                 
[h264 @ 0x31646e0] v4l2_request_probe_media_device: avctx=0x31646e0 ctx=0xb3f46d30 path=/dev/media0 driver=hantro-vpu                                                                
[h264 @ 0x31646e0] v4l2_request_probe_video_device: avctx=0x31646e0 ctx=0xb3f46d30 path=/dev/video1 capabilities=69222400                                                            
[h264 @ 0x31646e0] v4l2_request_try_format: pixelformat 875967059 not supported for type 10
[h264 @ 0x31646e0] v4l2_request_probe_video_device: try output format failed
[h264 @ 0x31646e0] v4l2_request_probe_video_device: avctx=0x31646e0 ctx=0xb3f46d30 path=/dev/video2 capabilities=69222400
[h264 @ 0x31646e0] v4l2_request_init_context: pixelformat=842094158 width=1920 height=1088 bytesperline=1920 sizeimage=3655712 num_planes=1                                          
[...]

157 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x3135dd0] Statistics: 482015 bytes read, 5 seeks
Exiting normally, received signal 2.

 

I snipped you output to highlight the relevant bits.

FFmpeg probes all devices it can find, and the first one is not useful for what it wants to do, so passes on to the next one, which does succeed.

At the end of your output you see the success message that everything went well.

 

Important here is what framerate you get (see  my message above), because that determines if you can use it to actually view your video without stuttering.

Link to comment
Share on other sites

4 hours ago, rubenvb said:

I snipped you output to highlight the relevant bits.

FFmpeg probes all devices it can find, and the first one is not useful for what it wants to do, so passes on to the next one, which does succeed.

At the end of your output you see the success message that everything went well.

 

Important here is what framerate you get (see  my message above), because that determines if you can use it to actually view your video without stuttering.

You're absolutely right.

I was misguided by the high cpu usage during decoding, in fact when I run ffmpeg with -hwaccel drm I get 45 fps decoding rate (my BBB video is 1080p) but with 25% cpu usage (a single core is maxed to 100%, others are idling).

Without -hwaccel drm I get 70 fps but with cpu usage nearly up to 100% and all cores are busy.

Besides, outputting the raw frames to framebuffer (with -pix_fmt bgra -f fbdev /dev/fb0) works in both cases

Link to comment
Share on other sites

greetings,

 

@AndreVallestero pointed me towards this thread and i wanted to share what's working for me on the pinebook pro (rk3399): mp2, vp8, vp9, h264 and h265 (8 and 10bit) hwaccel. as andre mentioned, i've collected resources and documented my testing in the mainline hardware acceleration thread on pine64 forums as well as some related system bits (mesa-git, kodi-git, etc.). hwaccel thread is here: https://forum.pine64.org/showthread.php?tid=9171

 

i was pulling patches out of kernel patchwork linux-rockchip and linux-media before finding that @Kwiboo and LibreElec were packaging these up nicely. awesome. thanks so much!

 

you can review the last few posts starting from here to be up to speed: https://forum.pine64.org/showthread.php?tid=9171&pid=65712#pid65712

 

with Kwiboo's recent linux-rockchip and ffmpeg git activity, my system is using:

manjaro pinebookpro 5.7-rc2 kernel branch patched to 5.7-rc6

LibreElec patches from Kwiboo's rk-5.6 branch (modified next/list)

Kwiboo's linux-kernel 5.6 vs 5.6-hevc branch diff

Kwiboo's ffmpeg 4.2.2 vs 4.2.2-rkvdec branch diff

ffmpeg 4.2.3

kodi-git

 

a few notable things with kodi (gbm+gles) and big buck bunny reencode samples:

h264 10bit provides kernel hard lock and forced shutdown

x265 12bit freezes the kodi interface, then recovers

vp9 10/12bit give green image and correct audio

4K 60fps h264 file plays out of sync

jellyfin-kodi working great with my htpc server, mostly x264 8bit video files

 

i realize the formats above aren't expected to work, just sharing what happens when they don't.

 

i've upped the ffmpeg log for 4.2.3-v4l2-request-hwaccel-rkvdec with a h265-10b sample here: https://pastebin.com/x7iNaY4M

 

Link to comment
Share on other sites

I am curious about your results, can you guys try this video and report the result?


 

wget https://test-videos.co.uk/vids/jellyfish/mp4/h264/1080/Jellyfish_1080_10s_30MB.mp4

ffmpeg -loglevel debug -hwaccel drm -i Jellyfish_1080_10s_30MB.mp4 -pix_fmt bgra -f fbdev /dev/fb0

 

Link to comment
Share on other sites

On 5/22/2020 at 8:06 PM, xmixahlx said:

@Kwiboo and LibreElec were packaging these up nicely. awesome. thanks so much!

 

No problems! :-)

 

On 5/22/2020 at 8:06 PM, xmixahlx said:

Kwiboo's linux-kernel 5.6 vs 5.6-hevc branch diff

 

I can recommend you to look at https://github.com/Kwiboo/linux-rockchip/commits/linuxtv-rkvdec-work-in-progress that is the branch that will continue to see updates as I prepare ongoing work for upstream.

With this updated branch (work rebased on top of media_tree master) and latest 4.2.2-rkvdec ffmpeg branch vp9, h264 (high 10 and high 422) and hevc (main 10) should be usable.

There is still one bit not properly being configured for hevc so there are some videos that produce small artifacts while decoding.

 

Hoping to have initial patchset with focus on rkvdec fixes and rkvdec/hantro support for h264 interlaced/field encoded on media mailing list before the weekend is over :-)

Link to comment
Share on other sites

@Kwiboo

 

 

awesome, thanks. LMK if I can help test.


i wanted to add that i am not seeing <format>_v4l2request in ffmpeg -decoders any longer. (this was working a few months ago.)

 

it would be amazing to see libva and libva-v4l2-request support for hantro and rkvdec. with firefox wayland/drm and vaapi support this should work on the desktop. (i am using sway on pinebookpro). Do you know if anyone is working to expand ph5's hantro work?

Link to comment
Share on other sites

On 5/23/2020 at 5:03 PM, @lex said:

I am curious about your results, can you guys try this video and report the result?

 

The Jellyfish sample decodes at about 58 fps and a reported speed per frame between 1.5-2.0x using this command:

ffmpeg -loglevel debug -hwaccel drm -i Jellyfish_1080_10s_30MB.mp4 -pix_fmt bgra -f fbdev /dev/fb0 > log.txt 2>&1

This was with my existing setup: vanilla Linux 5.6.14 with Ezequiel patches for H264 and VP8 decoding and @Kwiboo's "v4l2-request-hwaccel-4.2.2" FFmpeg.

The log reports v4l2_request being used as before: https://pastebin.com/U31f22YT

CPU usage was 1 core at 100%, which seems to me like there is too much overhead somewhere in the pipeline.

 

Using @Kwiboo's kernel branch, together with the same FFmpeg build as before, I don't seem to get any v4l2_request decoding:

https://pastebin.com/MtdcVE6g

[...]
[h264 @ 0xaaab060f2310] Format drm_prime chosen by get_format().
[h264 @ 0xaaab060f2310] Format drm_prime requires hwaccel initialisation.
[h264 @ 0xaaab060f2310] ff_v4l2_request_init: avctx=0xaaab060f2310 hw_device_ctx=0xaaab060ed500 hw_frames_ctx=(nil)
[h264 @ 0xaaab060f2310] v4l2_request_probe_media_device: avctx=0xaaab060f2310 ctx=0xffff84098070 path=/dev/media0 driver=hantro-vpu
[h264 @ 0xaaab060f2310] v4l2_request_probe_video_device: avctx=0xaaab060f2310 ctx=0xffff84098070 path=/dev/video1 capabilities=69222400
[h264 @ 0xaaab060f2310] v4l2_request_try_format: pixelformat 875967059 not supported for type 10
[h264 @ 0xaaab060f2310] v4l2_request_probe_video_device: try output format failed
[h264 @ 0xaaab060f2310] v4l2_request_probe_video_device: avctx=0xaaab060f2310 ctx=0xffff84098070 path=/dev/video2 capabilities=69222400
[h264 @ 0xaaab060f2310] v4l2_request_try_format: pixelformat 875967059 not supported for type 10
[h264 @ 0xaaab060f2310] v4l2_request_probe_video_device: try output format failed
[h264 @ 0xaaab060f2310] Failed setup for format drm_prime: hwaccel initialisation returned error.
[h264 @ 0xaaab060f2310] Format drm_prime not usable, retrying get_format() without it.
[h264 @ 0xaaab060f2310] Format yuv420p chosen by get_format().
[h264 @ 0xaaab060f2310] Reinit context to 1920x1088, pix_fmt: yuv420p
[...]

So I rebuilt FFmpeg with the "v4l2-request-hwaccel-4.2.2-rkvdec" branch and get pretty much the same output.

 

Inspecting the output of "v4l2-ctl --list-devices", @Kwiboo's kernel doesn't seem to give me the rkvdec device at all, but the hantro devices are present (they are present in the vanilla kernel as well, so that's not unexpected).

So I went and applied the patch I used to actually enable the "vdec" node in the device tree (which doesn't seem to be applied by @Kwiboo on his branch). So either he uses device tree overlays to do the same or there is some other magic I'm not seeing. With this patch applied, I get this output from "v4l2-ctl -L -d 3":

Codec Controls

                     h264_level 0x00990a67 (menu)   : min=0 max=15 default=0 value=0
                                0: 1
                                1: 1b
                                2: 1.1
                                3: 1.2
                                4: 1.3
                                5: 2
                                6: 2.1
                                7: 2.2
                                8: 3
                                9: 3.1
                                10: 3.2
                                11: 4
                                12: 4.1
                                13: 4.2
                                14: 5
                                15: 5.1
                   h264_profile 0x00990a6b (menu)   : min=0 max=6 default=2 value=2
                                0: Baseline
                                1: Constrained Baseline
                                2: Main
                                4: High
                                5: High 10
                                6: High 422
                    vp9_profile 0x00990b00 (menu)   : min=0 max=0 default=0 value=0
                                0: 0
                   hevc_profile 0x00990b67 (menu)   : min=0 max=2 default=0 value=0
                                0: Main
                                1: Main Still Picture
                                2: Main 10
                     hevc_level 0x00990b68 (menu)   : min=0 max=8 default=0 value=0
                                0: 1
                                1: 2
                                2: 2.1
                                3: 3
                                4: 3.1
                                5: 4
                                6: 4.1
                                7: 5
                                8: 5.1
    h264_sequence_parameter_set 0x00990ce8 (unknown): type=110 flags=has-payload
     h264_picture_parameter_set 0x00990ce9 (unknown): type=111 flags=has-payload
            h264_scaling_matrix 0x00990cea (unknown): type=112 flags=has-payload
          h264_slice_parameters 0x00990ceb (unknown): type=113 flags=has-payload
         h264_decode_parameters 0x00990cec (unknown): type=114 flags=has-payload
               h264_decode_mode 0x00990ced (menu)   : min=1 max=1 default=1 value=1
                                1: Frame-Based
                h264_start_code 0x00990cee (menu)   : min=1 max=1 default=1 value=1
                                1: Annex B Start Code
    hevc_sequence_parameter_set 0x00990cf0 (unknown): type=120 flags=has-payload
     hevc_picture_parameter_set 0x00990cf1 (unknown): type=121 flags=has-payload
          hevc_slice_parameters 0x00990cf2 (unknown): type=122 [16] flags=has-payload
            hevc_scaling_matrix 0x00990cf3 (unknown): type=123 flags=has-payload
               hevc_decode_mode 0x00990cf7 (menu)   : min=1 max=1 default=1 value=1
                                1: Frame-Based
                hevc_start_code 0x00990cf8 (menu)   : min=1 max=1 default=1 value=1
                                1: Annex B Start Code
            vp9_frame_context_0 0x009918a0 (unknown): type=400 flags=has-payload
            vp9_frame_context_1 0x009918a1 (unknown): type=400 flags=has-payload
            vp9_frame_context_2 0x009918a2 (unknown): type=400 flags=has-payload
            vp9_frame_context_3 0x009918a3 (unknown): type=400 flags=has-payload
    vp9_frame_decode_parameters 0x009918a4 (unknown): type=404 flags=has-payload

Which looks very promising.

 

Indeed, playing back H264 video gives speeds over 1x (I saw 1.64-3.04x in the log).

 

Playing back the only HEVC content I have laying about give me fast playback, but there is something terribly wrong with the colors:

fb.png

 

I'm guessing this is what @Kwiboo meant with "small artifacts while decoding".

I'm not at liberty to share the video file, but this is what the log shows about the stream:

Stream #0:0, 73, 1/1000: Video: hevc (Main 10), 1 reference frame, yuv420p10le(tv), 1920x1080, 0/1, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 23.98 tbc (default)
    Metadata:
      BPS             : 3017706
      BPS-eng         : 3017706
      DURATION        : 01:30:01.355000000
      DURATION-eng    : 01:30:01.355000000
      NUMBER_OF_FRAMES: 129503
      NUMBER_OF_FRAMES-eng: 129503
      NUMBER_OF_BYTES : 2037463275
      NUMBER_OF_BYTES-eng: 2037463275
      _STATISTICS_WRITING_APP: mkvmerge v20.0.0 ('I Am The Sun') 64-bit
      _STATISTICS_WRITING_APP-eng: mkvmerge v20.0.0 ('I Am The Sun') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2020-03-07 04:20:25
      _STATISTICS_WRITING_DATE_UTC-eng: 2020-03-07 04:20:25
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES

Stream #0:0, 73, 1/1000: Video: hevc (Main 10), 1 reference frame, yuv420p10le(tv), 1920x1080, 0/1, SAR 1:1 DAR 16:9, 23.98 fps, 23.98 tbr, 1k tbn, 23.98 tbc (default)
    Metadata:
      BPS             : 3017706
      BPS-eng         : 3017706
      DURATION        : 01:30:01.355000000
      DURATION-eng    : 01:30:01.355000000
      NUMBER_OF_FRAMES: 129503
      NUMBER_OF_FRAMES-eng: 129503
      NUMBER_OF_BYTES : 2037463275
      NUMBER_OF_BYTES-eng: 2037463275
      _STATISTICS_WRITING_APP: mkvmerge v20.0.0 ('I Am The Sun') 64-bit
      _STATISTICS_WRITING_APP-eng: mkvmerge v20.0.0 ('I Am The Sun') 64-bit
      _STATISTICS_WRITING_DATE_UTC: 2020-03-07 04:20:25
      _STATISTICS_WRITING_DATE_UTC-eng: 2020-03-07 04:20:25
      _STATISTICS_TAGS: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES
      _STATISTICS_TAGS-eng: BPS DURATION NUMBER_OF_FRAMES NUMBER_OF_BYTES

All in all great progress :).

 

Will linking Kodi with this FFmpeg make it automagically work or is there something else I would need to do to make this work?

 

I mostly have plain H264 content and that seems to work great already.

Link to comment
Share on other sites

42 minutes ago, rubenvb said:

So I went and applied the patch I used to actually enable the "vdec" node in the device tree (which doesn't seem to be applied by @Kwiboo on his branch).

 

Correct, the device-tree changes is not part of my media_tree branch, it is already merged for 5.8 and not something I care for in my patchset (I do not use this kernel branch as-is, only the diff from media tree master + linux-next and/or a mix of merged/work-in-progress patches).

 

42 minutes ago, rubenvb said:

I'm guessing this is what @Kwiboo meant with "small artifacts while decoding".

 

No this is not the "small artifacts while decoding" issue, this is due to the sw pixel format conversion being done, the sw pixel format may incorrectly be signaled as nv12 but is instead "nv15" for 10-bit content also there is no nv15/nv20 converter.

 

42 minutes ago, rubenvb said:

Will linking Kodi with this FFmpeg make it automagically work or is there something else I would need to do to make this work?

 

Correct, I recommend you use kodi-gbm or mpv if you want to render video as they both have support for zero-copy rendering to a dedicated drm plane, with ffmpeg command the cpu will be busy doing pixel format conversion (sw pixel conversion is also activated with null output).

Link to comment
Share on other sites

@rubenvb

 

I did some experiments with vanilla kernel + Ezequiel patches  (5.7.0-rc6) and some of my changes and with @balbes150 's kernel (5.7.0-rc6) which has the Ezequiel patches and a few more patches. I used @Kwiboo 's v4l2-request-hwaccel-4.2.2 and not the latest v4l2-request-hwaccel-4.2.2-rkvdev (i just missed that update).

 

I get minor artifacts on the H264 sample (link provided) visible on screen , that seem you don't get that artifacts. The logs are ok, no error at all. Slightly better results for the balbes's kernel.

I would like to figure out how kernel decides which driver will be used to decode, the hantro H264 driver or the rkvdec H264 driver .

 

I will try @Kwiboos Kernel with v4l2-request-hwaccel-4.2.2-rkvdev and see the results. I don't know how different these kernel are from LE.

 

 

Link to comment
Share on other sites

3 hours ago, Kwiboo said:

 

Correct, the device-tree changes is not part of my media_tree branch, it is already merged for 5.8 and not something I care for in my patchset (I do not use this kernel branch as-is, only the diff from media tree master + linux-next and/or a mix of merged/work-in-progress patches).

Makes sense, and assures me I'm not mixing two incompatible patch sets or something.

3 hours ago, Kwiboo said:

No this is not the "small artifacts while decoding" issue, this is due to the sw pixel format conversion being done, the sw pixel format may incorrectly be signaled as nv12 but is instead "nv15" for 10-bit content also there is no nv15/nv20 converter.

OK, see below.

3 hours ago, Kwiboo said:

Correct, I recommend you use kodi-gbm or mpv if you want to render video as they both have support for zero-copy rendering to a dedicated drm plane, with ffmpeg command the cpu will be busy doing pixel format conversion (sw pixel conversion is also activated with null output).

I compiled kodi-gbm using your git branch and it's running like never before!

CPU usage during playback is 20-30% for 1080p and 35-45% for 2160p downscaled to 1080p (probably the audio decoding to PCM takes a big chunk in that, and panfrost maybe the rest?).

This percentage does not seem to depend on content (H264 vs HEVC).

The HEVC file mentioned above that showed garbled output when using ffmpeg directly to framebuffer, plays back just fine in Kodi proper, so indeed it must be some software pixel format conversion  that Kodi does handle fine itself.

This is hands down incredibly awesome!

 

24 minutes ago, @lex said:

I get minor artifacts on the H264 sample (link provided) visible on screen , that seem you don't get that artifacts. The logs are ok, no error at all. Slightly better results for the balbes's kernel.

I would like to figure out how kernel decides which driver will be used to decode, the hantro H264 driver or the rkvdec H264 driver .

If you mean the Jellyfish sample, I didn't notice any artifacts either with FFmpeg directly nor through kodi-gbm (of course both using the "v4l2-request-hwaccel-4.2.2-rkvdec" FFmpeg branch).

24 minutes ago, @lex said:

I will try @Kwiboos Kernel with v4l2-request-hwaccel-4.2.2-rkvdev and see the results. I don't know how different these kernel are from LE.

I think all LibreElec releases (9.2) still use rkmpp and Rockchip kernel 4.4.x. Balbes does bring together LibreElec stuff with the mainline kernel if I'm not mistaken and Kwiboo has moved LibreElec master to kernel 5.x (which I haven't been able to build due to various software packages not building on the LibreElec master branch).

 

Now if I could only get 4k output and audio bitstreaming working I can stop tinkering (I mean, start tinkering on something else :)).

 

You guys are all awesome, don't let anyone ever tell you any different!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines