[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <43010.1437000713@turing-police.cc.vt.edu>
Date: Wed, 15 Jul 2015 18:51:53 -0400
From: Valdis Kletnieks <Valdis.Kletnieks@...edu>
To: Hans de Goede <hdegoede@...hat.com>,
Mauro Carvalho Chehab <mchehab@....samsung.com>
cc: contact@...hlyr.de, linux-media@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: [PATCH] ov519.c - allow setting i2c_detect_tries
I encountered a user who was having troubles getting a PlayStation EyeToy
(USB ID 054c:0155) working as a webcam. They reported that repeated attempts
would often make it work. Looking at the code, there was support for
repeated attempts at I2C transactions - but only if you rebuilt the
module from source.
Added module parameter support so that users running a distro kernel
can tune it for recalcitrant devices.
While we're at it, fix the comment to reflect the error message actually issued.
Testing:
[/usr/src/linux-next] insmod drivers/media/usb/gspca/gspca_ov519.ko
[/usr/src/linux-next] cat /sys/module/gspca_ov519/parameters/i2c_detect_tries
10
[/usr/src/linux-next] rmmod gspca_ov519
[/usr/src/linux-next] insmod drivers/media/usb/gspca/gspca_ov519.ko i2c_detect_tries=50
[/usr/src/linux-next] cat /sys/module/gspca_ov519/parameters/i2c_detect_tries
50
[/usr/src/linux-next] modinfo drivers/media/usb/gspca/gspca_ov519.ko | grep parm
parm: i2c_detect_tries:Number of times to try to init I2C (default 10) (int)
parm: frame_rate:Frame rate (5, 10, 15, 20 or 30 fps) (int)
Reported-By: Demhlyr <contact@...hlyr.de>
Signed-Off-By: Valdis Kletnieks <valdis.kletnieks@...edu>
--- a/drivers/media/usb/gspca/ov519.c 2014-10-21 10:06:09.359806243 -0400
+++ b/drivers/media/usb/gspca/ov519.c 2015-07-15 18:35:21.063790541 -0400
@@ -57,8 +57,10 @@ MODULE_LICENSE("GPL");
static int frame_rate;
/* Number of times to retry a failed I2C transaction. Increase this if you
- * are getting "Failed to read sensor ID..." */
+ * are getting "Can't determine sensor slave IDs" */
static int i2c_detect_tries = 10;
+module_param(i2c_detect_tries, int, 0644);
+MODULE_PARM_DESC(i2c_detect_tries,"Number of times to try to init I2C (default 10)");
/* ov519 device descriptor */
struct sd {
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists