aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.10/950-0582-staging-bcm2835-codec-Fix-support-for-levels-4.1-and.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.10/950-0582-staging-bcm2835-codec-Fix-support-for-levels-4.1-and.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0582-staging-bcm2835-codec-Fix-support-for-levels-4.1-and.patch36
1 files changed, 36 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.10/950-0582-staging-bcm2835-codec-Fix-support-for-levels-4.1-and.patch b/target/linux/bcm27xx/patches-5.10/950-0582-staging-bcm2835-codec-Fix-support-for-levels-4.1-and.patch
new file mode 100644
index 0000000000..a5bc882748
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.10/950-0582-staging-bcm2835-codec-Fix-support-for-levels-4.1-and.patch
@@ -0,0 +1,36 @@
+From b935f992a71593042f118d004df7afb9c7f8b2f2 Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.com>
+Date: Thu, 25 Mar 2021 18:28:40 +0000
+Subject: [PATCH] staging/bcm2835-codec: Fix support for levels 4.1 and
+ 4.2
+
+The driver said it supported H264 levels 4.1 and 4.2, but
+was missing the V4L2 to MMAL mappings.
+
+Add in those mappings.
+
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
+---
+ .../vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c | 11 +++++++++++
+ 1 file changed, 11 insertions(+)
+
+--- a/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
++++ b/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
+@@ -1789,6 +1789,17 @@ static int bcm2835_codec_set_level_profi
+ case V4L2_MPEG_VIDEO_H264_LEVEL_4_0:
+ param.level = MMAL_VIDEO_LEVEL_H264_4;
+ break;
++ /*
++ * Note that the hardware spec is level 4.0. Levels above that
++ * are there for correctly encoding the headers and may not
++ * be able to keep up with real-time.
++ */
++ case V4L2_MPEG_VIDEO_H264_LEVEL_4_1:
++ param.level = MMAL_VIDEO_LEVEL_H264_41;
++ break;
++ case V4L2_MPEG_VIDEO_H264_LEVEL_4_2:
++ param.level = MMAL_VIDEO_LEVEL_H264_42;
++ break;
+ default:
+ /* Should never get here */
+ break;