aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/video/em28xx/em28xx-core.c
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2011-04-07 16:04:48 -0300
committerMauro Carvalho Chehab <mchehab@redhat.com>2011-05-20 09:30:08 -0300
commitbc022694d7da1c848e395f18eaf856abc9dd0b09 (patch)
tree158b5b18c0ab8e4ad24c6122947bb274169a52b7 /drivers/media/video/em28xx/em28xx-core.c
parentf71095be6645aee0828623701e35e7e7d52910d8 (diff)
downloadkernel_samsung_smdk4412-bc022694d7da1c848e395f18eaf856abc9dd0b09.zip
kernel_samsung_smdk4412-bc022694d7da1c848e395f18eaf856abc9dd0b09.tar.gz
kernel_samsung_smdk4412-bc022694d7da1c848e395f18eaf856abc9dd0b09.tar.bz2
[media] em28xx: add support for EM28174 chip
EM28174 is very similar as already supported EM2874. I am not sure what are differences, but it could be analog support. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/em28xx/em28xx-core.c')
-rw-r--r--drivers/media/video/em28xx/em28xx-core.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/media/video/em28xx/em28xx-core.c b/drivers/media/video/em28xx/em28xx-core.c
index 44c63cb..92b6dd8 100644
--- a/drivers/media/video/em28xx/em28xx-core.c
+++ b/drivers/media/video/em28xx/em28xx-core.c
@@ -614,7 +614,7 @@ int em28xx_capture_start(struct em28xx *dev, int start)
{
int rc;
- if (dev->chip_id == CHIP_ID_EM2874) {
+ if (dev->chip_id == CHIP_ID_EM2874 || dev->chip_id == CHIP_ID_EM28174) {
/* The Transport Stream Enable Register moved in em2874 */
if (!start) {
rc = em28xx_write_reg_bits(dev, EM2874_R5F_TS_ENABLE,
@@ -1111,6 +1111,10 @@ int em28xx_isoc_dvb_max_packetsize(struct em28xx *dev)
/* FIXME - for now assume 564 like it was before, but the
em2874 code should be added to return the proper value... */
packet_size = 564;
+ } else if (dev->chip_id == CHIP_ID_EM28174) {
+ /* FIXME same as em2874. 564 was enough for 22 Mbit DVB-T
+ but too much for 44 Mbit DVB-C. */
+ packet_size = 752;
} else {
/* TS max packet size stored in bits 1-0 of R01 */
chip_cfg2 = em28xx_read_reg(dev, EM28XX_R01_CHIPCFG2);