aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2009-07-12 10:56:21 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2009-07-24 14:03:23 -0300
commit8b220793d6fd309176438721088515be893630cd (patch)
tree2f587213bd745c77e159ff8135d93c7485325bb3
parent8a2e6990f44d4cebaafcc0af1a786912ae733bb2 (diff)
downloadkernel_samsung_smdk4412-8b220793d6fd309176438721088515be893630cd.zip
kernel_samsung_smdk4412-8b220793d6fd309176438721088515be893630cd.tar.gz
kernel_samsung_smdk4412-8b220793d6fd309176438721088515be893630cd.tar.bz2
V4L/DVB (12235): em28xx: detects sensors also with the generic em2750/2750 entry
Webcams in general don't have eeprom. So, the sensor hint code should be called to properly detect what sensor is inside. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
-rw-r--r--Documentation/video4linux/CARDLIST.em28xx2
-rw-r--r--drivers/media/video/em28xx/em28xx-cards.c9
2 files changed, 6 insertions, 5 deletions
diff --git a/Documentation/video4linux/CARDLIST.em28xx b/Documentation/video4linux/CARDLIST.em28xx
index 014d255..68c236c 100644
--- a/Documentation/video4linux/CARDLIST.em28xx
+++ b/Documentation/video4linux/CARDLIST.em28xx
@@ -20,7 +20,7 @@
19 -> EM2860/SAA711X Reference Design (em2860)
20 -> AMD ATI TV Wonder HD 600 (em2880) [0438:b002]
21 -> eMPIA Technology, Inc. GrabBeeX+ Video Encoder (em2800) [eb1a:2801]
- 22 -> Unknown EM2750/EM2751 webcam grabber (em2750) [eb1a:2750,eb1a:2751]
+ 22 -> EM2710/EM2750/EM2751 webcam grabber (em2750) [eb1a:2750,eb1a:2751]
23 -> Huaqi DLCW-130 (em2750)
24 -> D-Link DUB-T210 TV Tuner (em2820/em2840) [2001:f112]
25 -> Gadmei UTV310 (em2820/em2840)
diff --git a/drivers/media/video/em28xx/em28xx-cards.c b/drivers/media/video/em28xx/em28xx-cards.c
index 9e71f03..e64e124 100644
--- a/drivers/media/video/em28xx/em28xx-cards.c
+++ b/drivers/media/video/em28xx/em28xx-cards.c
@@ -205,7 +205,7 @@ static struct em28xx_reg_seq silvercrest_reg_seq[] = {
*/
struct em28xx_board em28xx_boards[] = {
[EM2750_BOARD_UNKNOWN] = {
- .name = "Unknown EM2750/EM2751 webcam grabber",
+ .name = "EM2710/EM2750/EM2751 webcam grabber",
.xclk = EM28XX_XCLK_FREQUENCY_48MHZ,
.tuner_type = TUNER_ABSENT,
.is_webcam = 1,
@@ -1720,7 +1720,8 @@ static int em28xx_hint_sensor(struct em28xx *dev)
__be16 version_be;
u16 version;
- if (dev->model != EM2820_BOARD_UNKNOWN)
+ if (dev->model != EM2820_BOARD_UNKNOWN &&
+ dev->model != EM2750_BOARD_UNKNOWN)
return 0;
dev->i2c_client.addr = 0xba >> 1;
@@ -1738,11 +1739,11 @@ static int em28xx_hint_sensor(struct em28xx *dev)
sensor_name = "mt9v011";
break;
default:
- printk("Unknown Sensor 0x%04x\n", be16_to_cpu(version));
+ printk("Unknown Micron Sensor 0x%04x\n", be16_to_cpu(version));
return -EINVAL;
}
- em28xx_errdev("Sensor is %s, assuming that webcam is %s\n",
+ em28xx_errdev("Sensor is %s, using model %s entry.\n",
sensor_name, em28xx_boards[dev->model].name);
return 0;