While cedrus driver accepts videos up to 3840x2160, they are not decoded correctly. Driver doesn't correctly set mode register for widths greater than 2048 (patch 1). H264 engine also needs additional buffers which are not provided currently (patch 2). Finally, there are several different resolutions which can be considered 4k. Biggest is 4096x2304 which is also supported by HW. Set that new maximum size (patch 3). HEVC engine was not yet tested with 4k video, but as far as I know, it doesn't need any special setting besides patch 1. Following video was used for H264 video testing: http://jernej.libreelec.tv/videos/h264/PUPPIES%20BATH%20IN%204K%20(ULTRA%20HD)(Original_H.264-AAC)%20(4ksamples.com).mp4 Note that at this point memory allocation is suboptimal and H264 engine allocates far more memory that it is really needed. For above video to work, I had to set CMA size to 512 MiB and add "vmalloc=512M" to kernel arguments. Memory optimizations will be done later. This series is based on top of https://patchwork.linuxtv.org/cover/59653/ Best regards, Jernej Jernej Skrabec (3): media: cedrus: Properly signal size in mode register media: cedrus: Fix H264 4k support media: cedrus: Increase maximum supported size drivers/staging/media/sunxi/cedrus/cedrus.h | 7 ++ .../staging/media/sunxi/cedrus/cedrus_h264.c | 85 +++++++++++++++++-- .../staging/media/sunxi/cedrus/cedrus_h265.c | 2 +- .../staging/media/sunxi/cedrus/cedrus_hw.c | 9 +- .../staging/media/sunxi/cedrus/cedrus_hw.h | 2 +- .../staging/media/sunxi/cedrus/cedrus_mpeg2.c | 2 +- .../staging/media/sunxi/cedrus/cedrus_regs.h | 13 +++ .../staging/media/sunxi/cedrus/cedrus_video.c | 4 +- 8 files changed, 108 insertions(+), 16 deletions(-) -- 2.23.0 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel