summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/em28xx/em28xx-reg.h
AgeCommit message (Collapse)Author
2009-09-01em28xx: make video isoc stream work when VBI is enabledDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Add code enabling the VBI registers for variants of the em28xx chip that support VBI, and make sure the isoc streaming code continues to work for the video component of the stream (note the video and vbi data arrive intermixed on the same isoc pipe). Note that this version just drops the actual VBI data onto the floor as opposed to processing it. The "#ifdef 0" tags are for the videobuf code that appears in the next patch in this series. We created a separate version of the isoc_copy version for parsing the version of the stream that includes VBI data. In theory, they might be able to be merged at some point in the future, but the initial goal is to ensure that we do not cause any regressions with devices that do not have VBI support. This work was sponsored by EyeMagnet Limited. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-08-31em28xx: better describe vinctrl registersDevin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> Properly document the video input control register, in preparation for the addition of VBI support. Note this patch makes no functional changes. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com>
2009-08-07em28xx: properly reports some em2710 chipsMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> As reported by hermann pitton <hermann-pitton@arcor.de>, some devices has a different chip id for em2710 (likely the older ones): em28xx: New device @ 480 Mbps (eb1a:2710, interface 0, class 0) em28xx #0: Identified as EM2710/EM2750/EM2751 webcam grabber (card=22) em28xx #0: em28xx chip ID = 17 Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2009-05-16em28xx: properly set packet size based on the device's eeprom configuration.Devin Heitmueller
From: Devin Heitmueller <dheitmueller@kernellabs.com> 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. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Cc: Jarod Wilson <jarod@wilsonet.com>
2008-12-31em28xx: update chip id for em2710Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-12-29em28xx: expand output formats availableDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add additional output formats, which will be useful for the Pinnacle PCTV Ultimate 880e integration with the saa7136. Thanks to Ray Lu from Empia for providing the em2860/em2880 datasheet. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2008-12-29em28xx: fix reversed definitions of I2S audio modesDevin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Noticed when doing the audio support for the Pinnacle PCTV HD Ultimate 808e that the modes were incorrect (the 808e uses I2S in 5 sample mode) Thanks for Ray Lu from Empia for providing the em2860/em2880 datasheet. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2008-12-16em28xx: add chip id for em2874Devin Heitmueller
From: Devin Heitmueller <dheitmueller@linuxtv.org> Add the em2870 to the list of known em28xx chip ids. Priority: normal Signed-off-by: Devin Heitmueller <dheitmueller@linuxtv.org>
2008-11-25em28xx: cleanup XCLK register usageMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> Convert over to setting the XCLK register usage with the new em28xx_write_reg() function. Thanks to Ray Lu from Empia for providing the em2860/2880 datasheet. Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-20Convert the calls that write the i2c clock register over to the newMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> em28xx_write_reg() function that allows for or'ing bits Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-20em28xx: improve AC97 handlingMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> AC97 devices provide several input and outputs. However, before this patch, em28xx device weren't properly allowing the usage of ac97 possible combinations. Also, several input volumes were left untouched, instead of making sure that the volumes were set on mute state. This patch improves support for ac97 devices by allowing to use any inputs, and making sure that unused inputs are set on mute state. Yet, some work is still needed to select the AC97 output. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-19Make use of the em28xx chip configuration register to determine whetherMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> we have AC97 audio, I2S audio, or no audio support at all. Thanks for Ray Lu from Empia for providing the em2860/em2880 datasheet. Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-18Add em2750 to the list of known em28xx chip ids.Mauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-17Remove the previous register namesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Previously, AC97 registers were named as if they were part of em28xx device, generating some confusion. Replace such names for a more general naming convention. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-17Add AC97 registers found on em28xx devicesMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-16Add chip ID's for em2820 and em2840Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-13em28xx: refactor IR supportMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> Refactor the em28xx IR support based on the em2860/em2880 and em2874 datasheets. Tested on the HVR-950 (em2883), Pinnacle 800e (em2883), Pinnacle 80e (em2874) using the remote controls that came with those products. Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-12em28xx: Properly implement poll support for IR'sMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@redhat.com> The first em28xx were based on i2c IR's. However, some newer designs are coming with a polling-based IR. Those are done by reading a register set at em28xx. This patch adds core polling support for those devices. Later patches will add support for some device-specific IR's. This patch adds the same basic IR polling code used by bttv, cx88 and saa7134, and shares the common getkey masks defined at ir-common. Priority: normal Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-12Properly support capture start on em2874Mauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> Properly support capture start on em2874 The transport stream enable register moved in the em2874, so make it work properly. Thanks for Ray Lu from Empia for providing the em2874 datasheet. Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-12Support different GPIO/GPO registers for newer devicesMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> Support different GPIO/GPO registers for newer devices Empia moved the location of the GPIO/GPO registers in newer devices. Add the ability to specify the relocated registers (including caching of register contents). Thanks for Ray Lu from Empia for providing the em2874 datasheet. Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-11-12Add chip id for em2874 to list of known chipsMauro Carvalho Chehab
From: Devin Heitmueller <devin.heitmueller@gmail.com> Add em2874 chip id Add chip id for em2874 to list of known chips Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2008-06-10From: Devin Heitmueller <devin.heitmueller@gmail.com>Mauro Carvalho Chehab
Add em2860 chip ID em28xx-cards.c em28xx-reg.h - Add em2860 chip ID (seen on Pointnix Intra-Oral Camera) http://www.pointnix.com/ENG/dental/product_02.asp Signed-off-by: Devin Heitmueller <devin.heitmueller@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: rename registersMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Now, all registers will follow the same convension: EM28XX_R<reg_number>_<reg_name> This allows to associate a register with its value, and also with a canonical name. Also, registers that are specific to a given chip were renamed accordingly, as EM2800_foo (for 2800 only registers) or EM2880_foo (for registers that started to appear on em2880). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-04-17em28xx: Move registers to a separate fileMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> em28xx.h contains lots of different stuff inside. The better is to break it on some files. This patch removes the register names, moving them to a separate file. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>