diff options
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.patch | 36 |
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; |