summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/mxb.c
AgeCommit message (Collapse)Author
2008-07-25First mxb cleanup phaseHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2008-04-15Backport changeset 5fa1247a2b56f33f88432c24e109deaf91ef8281Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Original patch from Al Viro <viro@ftp.linux.org.uk> Date: Sat Mar 29 03:07:38 2008 +0000 NULL noise: drivers/media kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-02-05backport Kernel commit 961f80f9c0c0f7c45d7818f9c9969dfaa9e4463dMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Original Changelog: Author: Jean Delvare <khali@linux-fr.org> Date: Sun Jan 27 18:14:51 2008 +0100 i2c: Drivers stop using the redundant client list The redundant i2c client list maintained by i2c-core is going away soon, so drivers should stop using it now. Instead, they can use the standard iterator provided by the device driver model (device_for_each_child). Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2008-01-27[PATCH] static memoryDouglas Schilling Landgraf
From: Douglas Schilling Landgraf <dougsland@gmail.com> - Static memory is always initialized with 0. - Replaced in some cases C99 comments for /* */ Signed-off-by: Douglas Schilling Landgraf <dougsland@gmail.com>
2007-10-10Change list_for_each+list_entry to list_for_each_entryTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The rest of V4L files. There is one list_for_each+list_entry in cpia_pp.c that wasn't changed because it expects the loop iterator to remain NULL if the list is empty. A bug in vivi is fixed; the 'safe' version needs to be used because the loop deletes the list entries. Simplify a second loop in vivi and get rid if an un-used variable in that loop. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-02-19compat: Add -include linux/version.h to cflagsTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Add -include linux/version.h to the cflags. Now code can have backward compatibility test without including compat.h first. Linux headers included from compat.h are removed, so that code will get the same headers when compiling in v4l-dvb as it does in the kernel. Many drivers have compat.h moved to the end of their include list, as this lets compat.h do things it can't do at the beginning. Such as test of something is defined to include compat code, or to put a wrapper around a function without changing the function's name. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2006-11-28mxb: fix to load the proper i2c modulesMauro Carvalho Chehab
From: Michael Hunold <hunold@linuxtv.org> Change order of module requests, so that tuner module is loaded at the end, because the tuner module probes multiple i2c addresses and might grab an i2c address that is not a tuner but something else. Signed-off-by: Michael Hunold <hunold@linuxtv.org>
2006-03-29zmalloc changed to kzmalloc; semaphore to mutexMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-03-18Implement V4L2_TUNER_MODE_LANG1_LANG2 audio modeHans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> Add a new audio mode V4L2_TUNER_MODE_LANG1_LANG2 (used by VIDIOC_G/S_TUNER). This mode allows the user to select both languages of a bilingual transmission, one language on the left, one on the right audio channel. If there is no bilingual transmission, or it is not supported, then this mode should act like V4L2_TUNER_MODE_STEREO. This mode is introduced for PVR-like drivers where it is useful to be able to record both languages of a bilingual broadcast. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
2006-03-18renamed I2C_foo addresses to I2C_ADDR_fooMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> I2C_foo were used for some i2c addresses. Bad, since those constants could mean other i2c chip things. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-03-15Restore tuning capabilities in v4l2 mxb driverMauro Carvalho Chehab
From: Michael Hunold <hunold@linuxtv.org> The behaviour of the all-in-one Video4Linux tuner driver apparently changed. It now wants to know the tv standard, otherwise it refuses to tune. Restore tuning functionality in my driver for the "Multimedia eXtension Board". The all-in-one tuner driver apparently changed its behaviour. Signed-off-by: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-03-14Removed inclusion of linux/version.h included on a previous patchMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2006-03-08Add mxb, dpc7146, hexium_gemini and hexium_orion from 2.6.15Michael Hunold
From: Michael Hunold <hunold@linuxtv.org> Signed-off-by: Michael Hunold <hunold@linuxtv.org>
2003-05-28I removed all "analog" drivers from the main CVS repository and moved themMichael Hunold
to a separate "analog-2.4" directory. Main reasons: - the drivers don't have anything to do with dvb 8-) - the drivers are already in the kernel (besides the "Hexium" driver) and don't change that much any more - the analog drivers rely on the i2c subsystem, which was heavily modified between 2.4 and 2.5. When making a new DVB patchset I have to work around these differences every time, which is very annoying
2003-04-28Compile fixes against 2.5.68.Michael Hunold
- add some ifdef magic into i2c drivers (mxb/analog drivers only) - shuffle around includes, so that "dvb_compat.h" is included after all other include files - fix a warning in saa7146 i2c code
2003-04-25Lots of cosmetic changes in order to sync the CVS withMichael Hunold
the version that made it into the 2.5.68 kernel. - remove unnecessary c++-style comments - fixed some line breaks and the style function headers are formatted: please don't argue with me about these changes, I don't care how they are formatted. - remove newline breaks between memory allocation and the return value check Some more interesing stuff: - remove ddelay() functions completly, replace with set_current_state() and manual schedule_timeout() calls. - made some init data for the mxb driver static and global (patch already send to lkml) Some crucial changes: - inherit some return values Mr. Alan Cox has changed -- please review
2003-04-22- removed the compatibility crap around KBUILD_MODNAME from all drivers,Michael Hunold
use KBUILD_BASENAME for 2.4 instead ­ some changes to the i2c core to make it work with both 2.4 and late 2.5 kernels (not done yet -- only interesting for analog drivers) - add MODULE_DEVICE_TABLE to all drivers, so that pci "hotplug" can detect the devices automatically. Alan Cox says, that we should use this to load the firmware (not done yet) - fix the long standing "insmod/rmmod with multiple budget cards" bug -- it was a double kfree() call...
2003-03-28A whole bunch of small changes all over the place:Michael Hunold
makelinks: adjust the script for the upcoming kernel patches driver.mxb: prevent the tuner module from probing unnecessary i2c addresses getlinks: put symlinks for the header files to the right place(TM) videodev.c: add a verbose error message just for the case that a user has compiled the v4l module into the kernel media/Kconfig: the dpc driver does not the tuner module saa7146_hlp.c: honour the swapped field order for av7110 based cards in capture mode, too saa7146_video.c: add some verbose messages for the v4l2 controls mxb.c: hopefully fix the detection and initialization of the sound arena module
2003-03-20Necessary changes to the analog saa7146 based video drivers dueMichael Hunold
to the movement of the header files, sync Kconfig and Makefile with 2.5.65
2003-03-14saa7146: set default values for brightness/contrast/saturation on driver loadMichael Hunold
mxb: prevent helper modules to probe on unknown i2c-busses. (for example on a Matrox gfx card)
2003-02-27- fix some bugs that appeared in system with both analog and digitalMichael Hunold
based saa7146 cards - change the initialization order to allow static builds of the mxb driver
2003-02-26- Compile fixes against 2.5.63 (daemonize() has been changed)Michael Hunold
- Fix various warnings against 2.5.63 (export-objs has been removed) - Fix Kconfig/Makefiles - add the "dpc7146" driver for the analog Philips reference design - Removed unnecessary "Config.in"
2003-01-10- Fix broken i2c irq transfer, due to Holger's changesMichael Hunold
- clean up the mxb driver and it's helper modules (rename the structures, add GPL license to the appropriate files, c99 initialisers) - fix 2.5.55 "module insertion causes bug in kobject.o" issue - fixed missing exported symbols in budget-core
2003-01-09Fixes for 2.5.55 all over the place:Michael Hunold
- removed the patches, they are not needed any more. you can now use a vanilla 2.5.55 kernel - created a new backport for video-buf and videodev from the 2.5.55 sources - necessary fixes to the saa7146 driver due to changes in 2.5.55 - the core budget functions are now provided by a module called "budget-core.o". (otherwise static compilation is not possible...) - removed #ifdef MODULE crap from all files Misc. - "xawtv" (using xv extension) resulted in wrong colors. the problem is within "xawtv". Gerd Knorr told me, that it'll be fixed in the next release. I tested this version with 2.4.20, 2.5.55 (modules) and 2.5.55 (static).
2003-01-05After all, using the i2c irq wasn't a good idea. After long hours ofMichael Hunold
testing why the !#+?§"1 TS stream stops and "debi oops" messages appear, I found out that this is caused by the i2c irq handler. Don't ask me why, but returning to the old code solved this mystery. Apparently, the additional i2c interrupts caused some timing problems or the saa7146 is simply too f*cked up. I left the code in however, it works for the analog MXB driver, so the extension should decide if it should be used. Removed some additional debug messages, which were commented out anyway.
2003-01-04- Removed preinit() from saa7146 probe()/attach() logic, it's not usedMichael Hunold
at all - fixed most obvious flaws in budget.c, it's partially tested (ie. module loads/unloads ok) - added the "video part" to budget-av.c, it's partially tested (ie. module loads/unloads ok, xawtv can access the video inputs)
2003-01-04Some more changes... (but we're stabilizing...)Michael Hunold
2.5.x: - exchanged the Kconfig files for "ttpci" and "ttpci-budget" - removed the "SAA7146 based" from the card descriptions, but put it to the remark some lines above saa7146: - simplified the probe(), attach(), detach() logic, since all dvb devices can be identified by their subvendor/subdevice ids av7110: - added two wait_for_debi_done() calls in gpioirq(). (All other IER_ENABLE() calls are preceded by wait_for_debi_done()) budget: - budget.c has been split up into budget.c and budget-av.c. The latter is for budget cards with analog video (av) inputs. Definitions are now in budget.h. budget.c exports various functions that are used by budget-av.c, too. The av code is currently missing, though, and needs to be added. unsorted: - various c99 initializer cleanups
2002-12-30Next chunk of big splitup / cleanup:Michael Hunold
(tested on 2.4.18 and 2.5.53 -- the budget driver is untested, Holger will test it the next week) saa7146: - completely separated the saa7146 driver into a core-driver (saa7146.o) and a video/vbi part (saa7146_vv.o). this allows you to build the budget driver without av7110 and videodev bloat (see below) The following thinks have been approved by Holger Waechtler: av7110 (now ttpci): - for 2.5.x: removed the av7110 directory and put everything into ttpci. - removed all budget card support from this driver - compile and build fixes for the saa7146 changes ttpci-budget (new): - for 2.5.x: created a new ttpci-budget directory, added a new driver for the budget cards mxb: - compile and build fixes for the saa7146 changes Changed the build and compile files for both 2.5.x and build-2.4 of course...
2002-12-29Major cleanup: the goal is to get rid of the budget card <=> saa7146.o <=> ↵Michael Hunold
videodev.o dependency, so we can later split up the av7110 driver into a av7110 and budget card driver. I tested this on 2.4.18-3 (original RedHat 7.3 kernel) and 2.5.53. Changes in detail: saa7146: - fixed the unitialised timer warnings - split saa7146.o into saa7146.o and saa7146_vv.o: all videodev (ie. v4l) related stuff is now encapsulated in saa7146_vv.o. the extension (ie. mxb or dvb-ttpci) now has to make sure to register the v4l devices via helper functions provided by saa7146_vv mxb: - changes to make the driver compile with the new saa7146 and saa7146_vv parts - fix the vbi bypass issue for MXBs with saa7146, rev. 1 card av7110: - changes to make the driver compile with the new saa7146 and saa7146_vv parts - some changes related to the upcoming av7110 <=> budget splitup, but they are commented out - changed the saa7146 PAL values to experimental values that look good to me, but kept the old values as a comment. where are the original values from? there is a big black border on most channels on the left side which annoyed me... - changed from video/generic_usercopy() to dvb_usercopy() and put this into the source code, not into compat.c - moved the crc_32* stuff from compat.c to the source file where it is used - now compat.[ch] was removed completely, all references were deleted from all other files. other: - updated the README and TODO files - changed "makelinks" to remove alps_bsru6 stuff from kernel when making the symlinks - fixed the build files in "build-2.4" - fixed all other files needed for 2.5.x kernel build
2002-12-23For some unobvious reason, analog cards (ie. the MXB) and digital cardsMichael Hunold
(ie. the av7110) handle the odd/even fields differently. I added a new field to the extension, which holds special flags of the extension and the device. I declared the MXB way of handling fields as "normal", so the av7110 extension sets SAA7146_EXT_SWAP_ODD_EVEN here. @Holger: I added some superfluous "struct saa7146_dev *dev" variables back to some functions. These cause ugly warnings at compile time, I admit, but they are necessary if you want to use the debug macros to trace a saa7146 register for example. Please leave them in for now -- I need this when I switch between old-DVB / old-MXB <=> new-DVB / new-MXB drivers and try to hack out the differences.
2002-12-20Removed the dependecy to i2c-core from saa7146 and av7110,Michael Hunold
changed mxb to (un)register the i2c adapter by itself
2002-12-20More compile fixes to allow a flawless static build, changed theMichael Hunold
READMEs accordingly, compile fixes for the mxb driver.
2002-12-17Misc. build fixes (beautification, remove some unnecessary printks)Michael Hunold
for the new saa7146 core, the mxb driver and the saa7111 driver.
2002-12-17Add the video4linux driver for the "Multimedia eXtension Board",Michael Hunold
an analogue tv card based on the saa7146. Warning: Makefile and Kconfig will most likely be changed by Gerd Knorr as well, so be sure to change these accordingly. Warning2: "saa7111" is already available in the kernel, but needs to be modified, as well as "video_decoder" in include/linux