summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb
AgeCommit message (Collapse)Author
2007-03-18dvb-pll: Move IF frequency from per-band data to per-tuner dataTrent Piepho
The IF frequency was specified for each band, but it's not something that changes from band to band. None of the tuner definitions had a different IF frequency (called offset) from one band to another. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Acked-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-18dvb-pll: Adjust rounding to be consistentTrent Piepho
Some PLLs had one half the step size added to the offset, so that the divisor would be rounded to the nearest integer. Some didn't and so would always be rounded down. This makes dvb-pll round to the nearest when calculating the divisor, without the offset needing to be fudged. PLLs that had a fudged offset have the offset changed to be just the IF frequency. The satellite PLL dvb_pll_philips_sd1878_tda8261 was rounding up for some reason, and I've kept it that way. In addition, frequencies that were rounded to the nearest kHz are extended to full Hz resolution. One sixth MHz step sizes that were listed as 166,666 Hz are changed to 166,667 Hz, which is slightly closer. PLLs that were already rounding: dvb_pll_tda665x, offset was 36 1/6 (to nearest kHz) + step/2 dvb_pll_fmd1216me, offset was 36 1/8 (to two digits) + step/2 dvb_pll_thomson_fe6600, offset was 36 1/8 (to two digits) + step/2 dvb_pll_env57h1xd5, offset was 36 1/8 + step Note that the last PLL, dvb_pll_env57h1xd5, appears to have had a bug in the offset. Rather than adding stepsize/2, it was adding a full stepsize. The PLL definition originally came from the dibusb driver, which used 36 1/8 + step/2. The change to 36 1/8 + step was probably a mistake added when the tuner was converted to dvb-pll. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Acked-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-17merge: http://linuxtv.org/hg/~mkrufky/m920xMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-17merge: http://linuxtv.org/hg/~endriss/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-15m920x: add error messages for debugging purposesMichael Krufky
From: Pierre Willenbrock <pierre@pirsoft.dnsalias.org> Signed-off-by: Pierre Willenbrock <pierre@pirsoft.dnsalias.org> Signed-off-by: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-15m920x: rename megasky_identify_state to m920x_identify_stateMichael Krufky
From: Aapo Tahkola <aet@rasterburn.org> This function should work for all m920x-based devices. Signed-off-by: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-13merge: http://linuxtv.org/hg/~mkrufky/m920xMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-13dvb-ttpci: Infrared remote initialization fixOliver Endriss
From: Oliver Endriss <o.endriss@gmx.de> Fix bug introduced during infrared refactoring. Thanks to Johann Friedrichs for spotting this. Signed-off-by: Oliver Endriss <o.endriss@gmx.de> Thanks-to: Johann Friedrichs <johann.friedrichs@web.de>
2007-03-12m920x: Detect zero-length I2C messages and fix a typoTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Change a 00 to just 0 Detect zero-length I2C messages and return not supported. I think I know how to send one, but the problem is getting the slave's ack. The only point of a zero-length message is for probing; too see if the slave will ack its address. Since we don't know how to get the ack, we can't support zero-length messages in a useful way, so it's probably best to just return not supported for them. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-03-10Core: fix several locking related problemsMauro Carvalho Chehab
From: Simon Arlott <simon@fire.lp0.eu> Fix several instances of dvb-core functions using mutex_lock_interruptible and returning -ERESTARTSYS where the calling function will either never retry or never check the return value. These cause a race condition with dvb_dmxdev_filter_free and dvb_dvr_release, both of which are filesystem release functions whose return value is ignored and will never be retried. When this happens it becomes impossible to open dvr0 again (-EBUSY) since it has not been released properly. Signed-off-by: Simon Arlott <simon@fire.lp0.eu> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Acked-By: Johannes Stezenbach <js@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-03-05m920x: Improve I2C operationsTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Write some better documentation about what might be known about how the m920x I2C works, since a datasheet is lacking. The I2C xfer function should now handle more types of I2C transactions than it could before. Those it can't, will return error codes instead of being executed incorrectly. Multi-byte reads were not being done correctly, which should be fixed. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-03-05m920x: remove unneeded codeMichael Krufky
From: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-05m920x: rework driver code to allow for different devicesMichael Krufky
From: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-05fix i2c implementation for gl861 and au6610Michael Krufky
From: Aapo Tahkola <aet@rasterburn.org> - r/w bit is not part of the i2c address Signed-off-by: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-05m920x: i2c cleanupsMichael Krufky
From: Aapo Tahkola <aet@rasterburn.org> - Implement m920x i2c as suggested by Pierre Willenbrock - remove "magic" hack - r/w bit is not part of the i2c address - move hardware remarks to header file CC: Pierre Willenbrock <pierre@pirsoft.dnsalias.org> Signed-off-by: Aapo Tahkola <aet@rasterburn.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-03-03dvb-ttpci: Update frontend lock status in transfer mode (bugfix)Oliver Endriss
From: Oliver Endriss <o.endriss@gmx.de> In transfer/replay mode the frontend lock status was never updated. This caused a 'black screen' if VDR switched from transfer mode to live mode on the same transponder. Thanks to Marco Schluessler for spotting the problem. Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-03-02or51132: refactor i2c code, improve error resilienceTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The code the i2c transactions was leftover from the old V4L-based ATSC driver. It did too little with too much code. It is re-written to remove unnecessary parameters and be more efficient. A demod register can now be read with one function call, instead of repeating a dozen line block of code each time. There were msleep()'s, which appear to be unnecessary, spread around all the I2C transactions. These have been removed. Reading SNR used to take about 130 ms, now it's down to 1.8 ms. Reads from the demodulator's registers do not return correct results sometimes. Adding or removing the delays in the I2C transactions did not appear to effect the probability of failure. If anything, the transactions without delays were less likely to fail, but since far more transactions could be made per second the number of failures per hour was greater. To increase reliability, the SNR and get_params functions will now retry once if they get bad data back. This appears to have reduced the probability of failure to effectively zero. Some error messages are cleaned up or given KERN_* levels when they were missing. or51132_setmode() wasn't returning correct error codes, which is fixed as well. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> CC: Rusty Scott <rustys@ieee.org>
2007-03-02[PATCH] Hauppauge Nova-T endianess problem on powerpcPatrick Boettcher
From: Dennis Ranke <mail@exoticorn.de> When trying to use a Hauppauge Nova-T Stick on a big-endian architecture (such as powerpc) no frontend can be attached. The attached patch fixes this problem by removing two lines in dib0700_ctrl_rd() that try to correct the endianess on two values that already are correct: - /* think about swapping here */ - value = le16_to_cpu(value); - index = le16_to_cpu(index); With this simple patch this dvb hardware works great, thanks to anyone involved for the good work. :) Signed-off-by: Dennis Ranke <mail@exoticorn.de> Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
2007-03-01merge: http://linuxtv.org/hg/~pb/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-28merge: http://linuxtv.org/hg/~hhackmann/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-27dvb: Remove lgh06xf driverTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> The code of the dvb-pll driver and the lgh06xf driver is nearly identical. The main difference is that the lgh06xf driver would set the AGC TOP value on every tune call. The dvb-pll driver now has the ability to set the AGC TOP when the front-end device is opened, which is a better way to go about it. By using this ability of dvb-pll, the lgh06xf driver is made unnecessary. There is one other difference. dvb-pll will probe for the presence of an I2C pll chip by doing a one byte read, the lgh06xf driver did not do this. In some devices the PLL is not reachable over I2C at the timer the tuner is attached. Some more initialization, such as firmware loading, must take place first. None of the devices using a LG-H06xF should have this problem. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org> Acked-by: Michael Krufky <mkrufky@linuxtv.org>
2007-02-27dvb-pll: add code for doing tuner initializationTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Some tuners need or benefit from initialization, to change certain settings from their power on default values. Typically, tuners with TUA603x PLLs can benefit from setting the AGC TOP value to something else. This patch includes code to set the AGC TOP to 103 dBuV for the Thomson DTT-761x tuners, which I have experimentally verified gives the best SNR readings, increasing SNR by about 0.19 dB over the default value. Other tuners can make use of this as well. For example, the separate LG TDVS-H06xF driver's only difference from dvb-pll is this same setting of AGC TOP value. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-02-27dvb-pll: Fix Kconfig files and add support for making dvb-pll optionalTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> A number of drivers selected DVB_PLL when they did not need it, and some that did need it did not select it. The DVB_PLL option is given a name and help text, so that it will show up in the config menu. DVB_PLL support can be turned on if an out-of-tree driver needs it. The standard dvb fe customization support is added to dvb-pll.h. Since all modules which select DVB_PLL do so unconditionally, it is not possible to turn dvb-pll off when an enabled module selects it, unlike most of the other frontend/tuner drivers. This is because the users of dvb-pll have static references to dvb-pll symbols other than the attach function. If these references are removed, then dvb-pll will be disablable as the other frontend/tuner drivers are. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-02-27dvb-pll: Use sizeof() to get name lengthTrent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Better to use sizeof() to get the size of the output buffer for the tuner name, instead of just hard coding 128. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-02-27Fixed 1 byte too short buffer in tda827x.cHartmut Hackmann
From: Hartmut Hackmann <hartmut.hackmann@t-online.de> - The i2c data buffer in tda827xa_set_params was 1 byte too short - saa7134-dvb now gives an error mesage if tda827x could not be attached - coding style fix in tda1004x.c Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
2007-02-25dvb-ttpci: Support for MSC_RAW and MSC_SCAN remote control eventsOliver Endriss
From: Oliver Endriss <o.endriss@gmx.de> Support for MSC_RAW and MSC_SCAN remote control events. Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-25budget-ci: Fixed compilation error for kernel < 2.6.19Oliver Endriss
From: Oliver Endriss <o.endriss@gmx.de> Fix compilation error introduced by changeset 6d08d71cbcfb. Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-25budget-ci: Use the repeat handling of the input subsystemOliver Endriss
From: David Härdeman <david@hardeman.nu> The attached patch contains the last set of changes to the budget-ci IR handling which makes it use the repeat handling of the input subsystem. This allows some code simplification, makes sure that repeat key presses are reported as such and also allows the "debounce" hack to be removed altogether. In addition a couple of static variables were removed which would have confused the IR code if more than one card is used. Signed-off-by: David Härdeman <david@hardeman.nu> Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-25dvb-ttpci: Infrared remote control refactoringOliver Endriss
From: Oliver Endriss <o.endriss@gmx.de> Infrared remote control support rewritten. Now each device provides its own event device, keymap, protocol, inversion and address setting. EVIOCGKEYCODE and EVIOCSKEYCODE ioctls are supported to read/modify a keymap. Keymaps may be loaded using - input tools (keyb etc.) - av7110_loadkeys (obsolete, for backward compatibility) New command line parameters: - ir_protocol: select infrared protocol: 0 RC5, 1 RCMM (default) - ir_inversion: signal inversion: 0 not inverted (default), 1 inverted - ir_device_mask: bitmask of infrared devices (default: accept all) Those parameters may be set anytime. Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-24merge: http://linuxtv.org/hg/~hhackmann/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-24Add support for the cx23415 MPEG decoding features.Hans Verkuil
From: Hans Verkuil <hverkuil@xs4all.nl> The cx23415 adds some extra features that this DVB decoding API did not support. This API has been expanded to support the required features. Both source and binary backwards compatibility is kept intact by these changes. So existing applications are not affected. Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Ralph Metzler <rjkm@metzlerbros.de> Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-22[PATCH] Pinnacle PCTV Sat Pro USB (450e) support by ttusb2.c (400e driver)Patrick Boettcher
From: Christophe Cattelain <xof@skynet.be> Added USB_PID_PCTV_450E to the 'usb_device_id ttusb2_table' and an entry in the .devices table. The 400e driver now supports the 'Pinnacle PCTV Sat Pro USB (450e)' with USB_ID 2304:0222. Signed-off-by: Christophe Cattelain <xof@skynet.be> Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
2007-02-21digitv: open nxt6000 i2c_gate for TDED4 tuner handlingMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> dvb-pll normally opens the i2c gate before attempting to communicate with the pll, but the code for this device is not using dvb-pll. This should be cleaned up in the future, but for now, just open the i2c gate at the appropriate place in order to fix this driver bug. Thanks-to: Alex Woods <linux-dvb@giblets.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-02-21make dvb_usb_gl861_debug staticMauro Carvalho Chehab
From: Adrian Bunk <bunk@stusta.de> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
2007-02-21backport some typos fixed on MainstreamMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-21backport changeset 12a917f69d1468c91d646dbad8408dd0d39d6207Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Backport changeset from Jean Delvare <khali@linux-fr.org> that declare i2c_adapter parent devices. kernel-sync: Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-21Backport of git changeset cd354f1ae75e6466a7e31b727faede57a1f89ca5Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Backport a changeset from Schmielau <tim@physik3.uni-rostock.de> that removes uneeded includes for linux/sched.h Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-21merge: http://linuxtv.org/hg/~mkrufky/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-20cxusb: fix firmware patch for big endian systemsMichael Krufky
From: Jin-Bong lee <jinbong.lee@samsung.com> Without this patch, the device will not be detected after firmware download on big endian systems. Signed-off-by: Jin-Bong lee <jinbong.lee@samsung.com> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-02-19compat: Add code to compat.h for try_to_sleep()Trent Piepho
From: Trent Piepho <xyzzy@speakeasy.org> Compat.h used to have an argument, now it doesn't. There was also some code: if (current->flags & PF_FREEZE) { refrigerator(PF_FREEZE); } which is the same as try_to_freeze(), and so can be replaced by it. Signed-off-by: Trent Piepho <xyzzy@speakeasy.org>
2007-02-17merge with main repositoryHartmut Hackmann
From: Hartmut Hackmann <hartmut.hackmann@t-online.de> Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
2007-02-14merge: http://linuxtv.org/hg/~mkrufky/qt1010Mauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-14merge: http://linuxtv.org/hg/~endriss/v4l-dvbMauro Carvalho Chehab
From: Mauro Carvalho Chehab <mchehab@infradead.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
2007-02-13qt1010: whitespace / 80 column cleanupsMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-02-13stv0297: Enable BER/UNC countingOliver Endriss
From: Hartmut Birr <e9hack@googlemail.com> Enable BER/UNC counting for the stv0297 frontend. The idea for this patch comes from stv0297_cs.c. Signed-off-by: Hartmut Birr <e9hack@googlemail.com> Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-13qt1010: use ARRAY_SIZE macro when appropriateMichael Krufky
From: Michael Krufky <mkrufky@linuxtv.org> Use ARRAY_SIZE macro already defined in kernel.h Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-02-13qt1010: fix compiler warningMichael Krufky
From: Marco Schluessler <marco@lordzodiac.de> In function 'qt1010_init': warning: 'err' might be used uninitialized in this function Signed-off-by: Marco Schluessler <marco@lordzodiac.de> Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
2007-02-13dvbdev: fix illegal re-usage of fileoperations structMarcel Siegert
From: Marcel Siegert <mws@linuxtv.org> Arjan van de Ven <arjan@infradead.org> reported an illegal re-usage of the fileoperations struct if more than one dvb device(e.g. frontend) is present. this patch fixes this issue. it allocates a new fileoperations struct each time a device is registered and copies the default template fileops. Signed-off-by: Marcel Siegert <mws@linuxtv.org>
2007-02-13budget-ci: IR handling fixupsOliver Endriss
From: David Härdeman <david@hardeman.nu> Changeset 6562d27de0d7 by Oliver Endriss changed the budget-ci driver to use interrupt mode for i2c transfers. This also meant that a new bunch of IR bytes that were previously lost are now received, which allowed me to better understand how the MSP430 chip works. Unfortunately it also means that the current driver gets some assumptions wrong and might generate double keypresses for one IR command. The attached patch fixes this by throwing away the repeat bytes and by associating the correct command and device bytes. Signed-off-by: David Härdeman <david@hardeman.nu> Signed-off-by: Oliver Endriss <o.endriss@gmx.de>
2007-02-13dvb-ttpci: use i2c gate ctrl from stv0297 frontend driverOliver Endriss
From: Marco Schluessler <marco@lordzodiac.de> Use i2c gate ctrl from stv0297 frontend driver. Signed-off-by: Marco Schluessler <marco@lordzodiac.de> Signed-off-by: Oliver Endriss <o.endriss@gmx.de>