brcm2708: organize kernel patches
[openwrt/staging/dedeckeh.git] / target / linux / brcm2708 / patches-4.19 / 950-0686-staging-bcm2835-codec-Correct-bytesperline-on-format.patch
diff --git a/target/linux/brcm2708/patches-4.19/950-0686-staging-bcm2835-codec-Correct-bytesperline-on-format.patch b/target/linux/brcm2708/patches-4.19/950-0686-staging-bcm2835-codec-Correct-bytesperline-on-format.patch
new file mode 100644 (file)
index 0000000..96f3351
--- /dev/null
@@ -0,0 +1,30 @@
+From bcb6e267ca61ce685ed2debc0cee327527cea20d 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] 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)