patch-2.3.99-pre6 linux/drivers/char/cpia.c

Next file: linux/drivers/char/efirtc.c
Previous file: linux/drivers/char/busmouse.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.99-pre5/linux/drivers/char/cpia.c linux/drivers/char/cpia.c
@@ -1577,9 +1577,13 @@
 	cmd[7] = 0;
 
 	retval = cam->ops->transferCmd(cam->lowlevel_data, cmd, data);
-	if (retval)
+	if (retval) {
 		DBG("%x - failed, retval=%d\n", command, retval);
-	else {
+		if (command == CPIA_COMMAND_GetColourParams ||
+		    command == CPIA_COMMAND_GetColourBalance ||
+		    command == CPIA_COMMAND_GetExposure)
+			up(&cam->param_lock);
+	} else {
 		switch(command) {
 		case CPIA_COMMAND_GetCPIAVersion:
 			cam->params.version.firmwareVersion = data[0];

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)