V4L/DVB (11810): em28xx: properly set packet size based on the device's eeprom config...
authorDevin Heitmueller <dheitmueller@kernellabs.com>
Sat, 16 May 2009 20:09:28 +0000 (17:09 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 16 Jun 2009 21:21:08 +0000 (18:21 -0300)
commitd18e2fda7133287bf8a81809816e646cf17c332e
treed42b038af4ed02b31add846f6731dfabb5d78123
parent027aa2c771d9fb8dc6aae95c80b50e40e3c97dc5
V4L/DVB (11810): em28xx: properly set packet size based on the device's eeprom configuration.

The em28xx actually has a register that tells the driver what the maximum
packet size is (based on a value programmed into the eeprom).  Make use of
that register instead of assuming a hardcoded value of 564 (since 564 is not
correct for devices that do QAM such as the KWorld 340u).

Note that for now the em2874 code isn't there, falling back to the 564 value,
however this is not a problem since there are not any em2874 based devices in
the current v4l-dvb tree).

Thanks to Jarod Wilson for detecting the initial problem and figuring out that
the isoc configuration was wrong for his device.

Cc: Jarod Wilson <jarod@wilsonet.com>
Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/em28xx/em28xx-core.c
drivers/media/video/em28xx/em28xx-dvb.c
drivers/media/video/em28xx/em28xx-reg.h
drivers/media/video/em28xx/em28xx.h