aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.19/950-0752-staging-bcm2835-codec-Correct-bytesperline-on-format.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm2708/patches-4.19/950-0752-staging-bcm2835-codec-Correct-bytesperline-on-format.patch')
-rw-r--r--target/linux/brcm2708/patches-4.19/950-0752-staging-bcm2835-codec-Correct-bytesperline-on-format.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.19/950-0752-staging-bcm2835-codec-Correct-bytesperline-on-format.patch b/target/linux/brcm2708/patches-4.19/950-0752-staging-bcm2835-codec-Correct-bytesperline-on-format.patch
new file mode 100644
index 0000000000..66f8266895
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.19/950-0752-staging-bcm2835-codec-Correct-bytesperline-on-format.patch
@@ -0,0 +1,30 @@
+From b90151e3519ca2e8944dd1565999ad6ac5c4fb51 Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.org>
+Date: Thu, 11 Jul 2019 14:58:35 +0100
+Subject: [PATCH 752/782] staging: bcm2835-codec: Correct bytesperline on
+ format changed
+
+The handling of format changed events incorrectly set bytesperline
+to the cropped width, which ignored padding and formats with
+more than 8bpp.
+Fix these.
+
+Reported by: zillevdr <zillevdr@gmx.de>
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
+---
+ .../staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+--- a/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
++++ b/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
+@@ -759,7 +759,9 @@ static void handle_fmt_changed(struct bc
+
+ q_data->crop_width = format->es.video.crop.width;
+ q_data->crop_height = format->es.video.crop.height;
+- q_data->bytesperline = format->es.video.crop.width;
++ q_data->bytesperline = get_bytesperline(format->es.video.width,
++ q_data->fmt);
++
+ q_data->height = format->es.video.height;
+ q_data->sizeimage = format->buffer_size_min;
+ if (format->es.video.color_space)