aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-4.19/950-0306-staging-mmal-vchiq-If-the-VPU-returns-an-error-don-t.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-4.19/950-0306-staging-mmal-vchiq-If-the-VPU-returns-an-error-don-t.patch')
-rw-r--r--target/linux/bcm27xx/patches-4.19/950-0306-staging-mmal-vchiq-If-the-VPU-returns-an-error-don-t.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-4.19/950-0306-staging-mmal-vchiq-If-the-VPU-returns-an-error-don-t.patch b/target/linux/bcm27xx/patches-4.19/950-0306-staging-mmal-vchiq-If-the-VPU-returns-an-error-don-t.patch
new file mode 100644
index 0000000000..603b394b0f
--- /dev/null
+++ b/target/linux/bcm27xx/patches-4.19/950-0306-staging-mmal-vchiq-If-the-VPU-returns-an-error-don-t.patch
@@ -0,0 +1,29 @@
+From 78c34cf60b9ae8bf8aa797c72d2f1abdc0a0bb9d Mon Sep 17 00:00:00 2001
+From: Dave Stevenson <dave.stevenson@raspberrypi.org>
+Date: Wed, 13 Feb 2019 12:51:03 +0000
+Subject: [PATCH] staging: mmal-vchiq: If the VPU returns an error,
+ don't negate it
+
+There is an enum for the errors that the VPU can return.
+port_parameter_get was negating that value, but also using -EINVAL
+from the Linux error codes.
+Pass the VPU error code as positive values. Should the function
+need to pass a Linux failure, then return that as negative.
+
+Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
+---
+ drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+--- a/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
++++ b/drivers/staging/vc04_services/vchiq-mmal/mmal-vchiq.c
+@@ -1401,7 +1401,8 @@ static int port_parameter_get(struct vch
+ goto release_msg;
+ }
+
+- ret = -rmsg->u.port_parameter_get_reply.status;
++ ret = rmsg->u.port_parameter_get_reply.status;
++
+ /* port_parameter_get_reply.size includes the header,
+ * whilst *value_size doesn't.
+ */