aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.14/950-0405-staging-mmal-vchiq-Remove-check-of-the-number-of-buf.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0405-staging-mmal-vchiq-Remove-check-of-the-number-of-buf.patch')
-rw-r--r--target/linux/brcm2708/patches-4.14/950-0405-staging-mmal-vchiq-Remove-check-of-the-number-of-buf.patch39
1 files changed, 39 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0405-staging-mmal-vchiq-Remove-check-of-the-number-of-buf.patch b/target/linux/brcm2708/patches-4.14/950-0405-staging-mmal-vchiq-Remove-check-of-the-number-of-buf.patch
new file mode 100644
index 0000000000..e51626e08e
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.14/950-0405-staging-mmal-vchiq-Remove-check-of-the-number-of-buf.patch
@@ -0,0 +1,39 @@
+From 338d4e95632213c910335b0283ce52ce0643881d Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.org>
+Date: Wed, 4 Jul 2018 17:01:15 +0100
+Subject: [PATCH 405/454] staging: mmal-vchiq: Remove check of the number of
+ buffers supplied
+
+Before 9384167 there was a need to ensure that there were sufficient
+buffers supplied from the user to cover those being sent to the VPU
+(always 1).
+With 9384167 the buffers are linked 1:1 between MMAL and V4L2,
+therefore there is no need for that check, and indeed it is wrong
+as there is no need to submit all the buffers before starting streaming.
+
+Fixes: 9384167 "staging: bcm2835-camera: Remove V4L2/MMAL buffer remapping"
+
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
+---
+ .../staging/vc04_services/bcm2835-camera/mmal-vchiq.c | 10 ----------
+ 1 file changed, 10 deletions(-)
+
+--- a/drivers/staging/vc04_services/bcm2835-camera/mmal-vchiq.c
++++ b/drivers/staging/vc04_services/bcm2835-camera/mmal-vchiq.c
+@@ -1410,16 +1410,6 @@ static int port_enable(struct vchiq_mmal
+ if (port->enabled)
+ return 0;
+
+- /* ensure there are enough buffers queued to cover the buffer headers */
+- if (port->buffer_cb) {
+- hdr_count = 0;
+- list_for_each(buf_head, &port->buffers) {
+- hdr_count++;
+- }
+- if (hdr_count < port->current_buffer.num)
+- return -ENOSPC;
+- }
+-
+ ret = port_action_port(instance, port,
+ MMAL_MSG_PORT_ACTION_TYPE_ENABLE);
+ if (ret)