aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/dvb
Commit message (Collapse)AuthorAge
* V4L/DVB: dvb: fix smscore_getbuffer() logicRichard Zidlicky2010-09-27
| | | | | | | | | | | | Drivers shouldn't sleep while holding a spinlock. A previous workaround were to release the spinlock before callinc schedule(). This patch uses a different approach: it just waits for the siano hardware to answer. Signed-off-by: Richard Zidlicky <rz@linux-m68k.org> Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: dib7000p: add disable sample and hold, and diversity delay parameterOlivier Grenie2010-09-27
| | | | | | | | | | This patch improves the overall driver performance in diversity-reception scenarios. Signed-off-by: Olivier Grenie <olivier.grenie@dibcom.fr> Signed-off-by: Patrick Boettcher <patrick.boettcher@dibcom.fr> Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: dib7770: enable the current mirrorOlivier Grenie2010-09-27
| | | | | | | | | | | | | To improve performance on DiB7770-devices enabling the current mirror is needed. This patch adds an option to the dib7000p-driver to do that and it creates a separate device-entry in dib0700-device to use those changes on hardware which is using the DiB7770. Signed-off-by: Olivier Grenie <olivier.grenie@dibcom.fr> Signed-off-by: Patrick Boettcher <patrick.boettcher@dibcom.fr> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: rc-core: increase repeat timeMauro Carvalho Chehab2010-09-27
| | | | | | | | | | | | | | | | | | As reported by Anton Blanchard <anton@samba.org>, double IR events on 2.6.36-rc2 and a DViCO FusionHDTV DVB-T Dual Express are happening: [ 1351.032084] ir_keydown: i2c IR (FusionHDTV): key down event, key 0x0067, scancode 0x0051 [ 1351.281284] ir_keyup: keyup key 0x0067 ie one key down event and one key up event 250ms later. So, we need to increase the repeat timeout, to avoid this bug to hit. As we're doing it at core, this fix is not needed anymore at dib0700 driver. Thanks-to: Anton Blanchard <anton@samba.org> Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: Don't identify PV SBTVD Hybrid as a DibCom deviceMauro Carvalho Chehab2010-09-27
| | | | | | | | | | | | | | | | | | As reported by Carlos, Prolink Pixelview SBTVD Hybrid is based on Conexant cx231xx + Fujitsu 86A20S demodulator. However, both shares the same USB ID. So, we need to use USB bcdDevice, in order to properly discover what's the board. We know for sure that bcd 0x100 is used for a dib0700 device, while bcd 0x4001 is used for a cx23102 device. This patch reserves two ranges, the first one from 0x0000-0x3f00 for dib0700, and the second from 0x4000-0x4fff for cx231xx devices. This may need fixes in the future, as we get access to other devices. Thanks-to: Carlos Americo Domiciano <c_domiciano@yahoo.com.br> Cc: stable@kernel.org Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: opera1: remove unneeded NULL checkDan Carpenter2010-09-27
| | | | | | | | "fw" is always a non-NULL pointer at this point, and anyway release_firmware() accepts NULL pointers. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: mantis: Fix IR_CORE dependencyIngo Molnar2010-08-24
| | | | | | | | | | | | | | | | This build bug triggers: drivers/built-in.o: In function `mantis_exit': (.text+0x377413): undefined reference to `ir_input_unregister' drivers/built-in.o: In function `mantis_input_init': (.text+0x3774ff): undefined reference to `__ir_input_register' If MANTIS_CORE is enabled but IR_CORE is not. Add the correct dependency. Signed-off-by: Ingo Molnar <mingo@elte.hu> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* V4L/DVB: fix Kconfig to depends on VIDEO_IRMauro Carvalho Chehab2010-08-12
| | | | | | | warning: (VIDEO_BT848 && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_DEV && PCI && I2C && VIDEO_V4L2 && INPUT || VIDEO_SAA7134 && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && VIDEO_DEV && PCI && I2C && INPUT || VIDEO_CX88 && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && VIDEO_DEV && PCI && I2C && INPUT || VIDEO_IVTV && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && PCI && I2C && INPUT || VIDEO_CX18 && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && DVB_CORE && PCI && I2C && EXPERIMENTAL && INPUT || VIDEO_EM28XX && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && V4L_USB_DRIVERS && USB && VIDEO_DEV && I2C && INPUT || VIDEO_TLG2300 && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && V4L_USB_DRIVERS && USB && VIDEO_DEV && I2C && INPUT && SND && DVB_CORE || VIDEO_CX231XX && MEDIA_SUPPORT && VIDEO_CAPTURE_DRIVERS && VIDEO_V4L2 && V4L_USB_DRIVERS && USB && VIDEO_DEV && I2C && INPUT || DVB_BUDGET_CI && MEDIA_SUPPORT && DVB_CAPTURE_DRIVERS && DVB_CORE && DVB_BUDGET_CORE && I2C && INPUT || DVB_DM1105 && MEDIA_SUPPORT && DVB_CAPTURE_DRIVERS && DVB_CORE && PCI && I2C && INPUT || VIDEO_GO7007 && STAGING && !STAGING_EXCLUDE_BUILD && VIDEO_DEV && PCI && I2C && INPUT && SND || VIDEO_CX25821 && STAGING && !STAGING_EXCLUDE_BUILD && DVB_CORE && VIDEO_DEV && PCI && I2C && INPUT) selects VIDEO_IR which has unmet direct dependencies (IR_CORE) Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: Fix IR_CORE dependenciesMauro Carvalho Chehab2010-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As pointed by Randy Dunlap <randy.dunlap@oracle.com>: > ERROR: "ir_keydown" [drivers/media/video/ir-kbd-i2c.ko] undefined! > ERROR: "__ir_input_register" [drivers/media/video/ir-kbd-i2c.ko] undefined! > ERROR: "get_rc_map" [drivers/media/video/ir-kbd-i2c.ko] undefined! > ERROR: "ir_input_unregister" [drivers/media/video/ir-kbd-i2c.ko] undefined! > ERROR: "get_rc_map" [drivers/media/video/cx88/cx88xx.ko] undefined! > ERROR: "ir_repeat" [drivers/media/video/cx88/cx88xx.ko] undefined! > ERROR: "ir_input_unregister" [drivers/media/video/cx88/cx88xx.ko] undefined! > ERROR: "ir_keydown" [drivers/media/video/cx88/cx88xx.ko] undefined! > ERROR: "__ir_input_register" [drivers/media/video/cx88/cx88xx.ko] undefined! > ERROR: "get_rc_map" [drivers/media/video/bt8xx/bttv.ko] undefined! > ERROR: "ir_input_unregister" [drivers/media/video/bt8xx/bttv.ko] undefined! > ERROR: "__ir_input_register" [drivers/media/video/bt8xx/bttv.ko] undefined! > ERROR: "ir_g_keycode_from_table" [drivers/media/IR/ir-common.ko] undefined! > > > #5101: > (.text+0x8306e2): undefined reference to `ir_core_debug' > (.text+0x830729): undefined reference to `ir_core_debug' > ir-functions.c:(.text+0x830906): undefined reference to `ir_core_debug' > (.text+0x8309d8): undefined reference to `ir_g_keycode_from_table' > (.text+0x830acf): undefined reference to `ir_core_debug' > (.text+0x830b92): undefined reference to `ir_core_debug' > (.text+0x830bef): undefined reference to `ir_core_debug' > (.text+0x830c6a): undefined reference to `ir_core_debug' > (.text+0x830cf7): undefined reference to `ir_core_debug' > budget-ci.c:(.text+0x89f5c8): undefined reference to `ir_keydown' > budget-ci.c:(.text+0x8a0c58): undefined reference to `get_rc_map' > budget-ci.c:(.text+0x8a0c80): undefined reference to `__ir_input_register' > budget-ci.c:(.text+0x8a0ee0): undefined reference to `get_rc_map' > budget-ci.c:(.text+0x8a11cd): undefined reference to `ir_input_unregister' > (.text+0x8a8adb): undefined reference to `ir_input_unregister' > dvb-usb-remote.c:(.text+0x8a9188): undefined reference to `get_rc_map' > dvb-usb-remote.c:(.text+0x8a91b1): undefined reference to `__ir_input_register' > dvb-usb-remote.c:(.text+0x8a9238): undefined reference to `get_rc_map' > dib0700_core.c:(.text+0x8b04ca): undefined reference to `ir_keydown' > dib0700_devices.c:(.text+0x8b2ea8): undefined reference to `ir_keydown' > dib0700_devices.c:(.text+0x8b2ef0): undefined reference to `ir_keydown' Those breakages seem to be caused by two bad things at IR_CORE Kconfig: 1) cx23885 is using select for IR_CORE; 2) the dvb-usb and sms dependency for IR_CORE were missing. While here, allow users to un-select IR. Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: dvb: siano: free spinlock before schedule()Kulikov Vasiliy2010-08-08
| | | | | | | | | Calling schedule() holding spinlock with disables irqs is improper. As spinlock protects list coredev->buffers, it can be unlocked untill wakeup. This bug was introduced in a9349315f65cd6a16e8fab1f6cf0fd40f379c4db. Signed-off-by: Kulikov Vasiliy <segooon@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: Report supported QAM modes on bt8xxArnuschky2010-08-08
| | | | | | | | | | | | | | | | Here a small patch to get a TwinHan VT DST DVB-T card working with kernels >= 2.6.32. Analogously to http://linuxtv.org/hg/v4l-dvb/rev/0e735b509163 I had to: "Fill in the .caps field in struct dst_dvbt_ops (around line 1763) with all the supported QAM modulation methods to match the capabilities of the card as implemented in function dst_set_modulation (around line 502). Note that beginning with linux kernel version 2.6.32 the modulation method is checked (by function dvb_frontend_check_parameters in file drivers/media/dvb/dvb-core/dvb_frontend.c) and thus tuning fails if you use a modulation method that is not present in the .caps field." Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* V4L/DVB: V4L: do not autoselect components on embedded systemsGuennadi Liakhovetski2010-08-08
| | | | | | | | | | Tuner, DVB frontend and video helper chip drivers are by default autoselected by their respective host cards, this, however, doesn't make much sense on SoC-based systems. Disable autoselection on EMBEDDED systems. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* Merge branch 'for-linus' of ↵Linus Torvalds2010-08-07
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (82 commits) firewire: core: add forgotten dummy driver methods, remove unused ones firewire: add isochronous multichannel reception firewire: core: small clarifications in core-cdev firewire: core: remove unused code firewire: ohci: release channel in error path firewire: ohci: use memory barriers to order descriptor updates tools/firewire: nosy-dump: increment program version tools/firewire: nosy-dump: remove unused code tools/firewire: nosy-dump: use linux/firewire-constants.h tools/firewire: nosy-dump: break up a deeply nested function tools/firewire: nosy-dump: make some symbols static or const tools/firewire: nosy-dump: change to kernel coding style tools/firewire: nosy-dump: work around segfault in decode_fcp tools/firewire: nosy-dump: fix it on x86-64 tools/firewire: add userspace front-end of nosy firewire: nosy: note ioctls in ioctl-number.txt firewire: nosy: use generic printk macros firewire: nosy: endianess fixes and annotations firewire: nosy: annotate __user pointers and __iomem pointers firewire: nosy: fix device shutdown with active client ...
| *-. Merge firewire branches to be released post v2.6.35Stefan Richter2010-08-02
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: drivers/firewire/core-card.c drivers/firewire/core-cdev.c and forgotten #include <linux/time.h> in drivers/firewire/ohci.c Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
| | | * firewire: remove an unused function argumentStefan Richter2010-06-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | void (*fw_address_callback_t)(..., int speed, ...) is the speed that a remote node chose to transmit a request to us. In case of split transactions, firewire-core will transmit the response at that speed. Upper layer drivers on the other hand (firewire-net, -sbp2, firedtv, and userspace drivers) cannot do anything useful with that speed datum, except log it for debug purposes. But data that is merely potentially (not even actually) used for debug purposes does not belong into the API. Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>
* | | | Merge branch 'for-next' of ↵Linus Torvalds2010-08-04
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits) Documentation: update broken web addresses. fix comment typo "choosed" -> "chosen" hostap:hostap_hw.c Fix typo in comment Fix spelling contorller -> controller in comments Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -> Fault fs/Kconfig: Fix typo Userpace -> Userspace Removing dead MACH_U300_BS26 drivers/infiniband: Remove unnecessary casts of private_data fs/ocfs2: Remove unnecessary casts of private_data libfc: use ARRAY_SIZE scsi: bfa: use ARRAY_SIZE drm: i915: use ARRAY_SIZE drm: drm_edid: use ARRAY_SIZE synclink: use ARRAY_SIZE block: cciss: use ARRAY_SIZE comment typo fixes: charater => character fix comment typos concerning "challenge" arm: plat-spear: fix typo in kerneldoc reiserfs: typo comment fix update email address ...
| * | | | Merge branch 'master' into for-nextJiri Kosina2010-06-16
| |\| | |
| * | | | fix typos concerning "management"Uwe Kleine-König2010-06-16
| | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* | | | | V4L/DVB: sms: Convert IR support to use the Remote Controller coreMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rewrites the siano IR implementation. The previous implementation were non-standard. As such, it has issues if more than one device registers IR, as there used to have some static constants used during protocol decoding phase. Also, it used to implement its on RAW decoder, and only for RC5. The new code uses RC core subsystem for handling IR. This brings several new features to the driver, including: - Allow to dynamically replace the IR keycodes; - Supports all existing raw decoders (JVC, NEC, RC-5, RC-6, SONY); - Supports lirc dev; - Doesn't have race conditions when more than one sms IR is registered; - The code size for the IR implementation is very small; - it exports the IR features via /sys/class/rc. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: sms: properly initialize IR phys and IR nameMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sms were using a non-compliant nomenclature for the USB devices. Fix it. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: smsusb: enable IR port for Hauppauge WinTV MiniStickMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the proper gpio port for WinTV MiniStick, with the information provided by Michael. Thanks-to: Michael Krufky <mkrufky@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dib0700: Fix RC protocol logic to properly handle NEC/NECx and RC-5Mauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Simplifies the logic for handling firmware 1.20 RC messages, fixing the logic. While here, I tried to use a RC-6 remote controller from my TV set, but it didn't work with dib0700. Not sure why, but maybe this never worked. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dib0700: properly implement IR change_protocolMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements change_protocol callback. With this change, there's no need for an extra modprobe parameter to specify the protocol. When a table is loaded (either from in-kernel rc-map tables or via ir-keytable program), the driver will automatically change the protocol, in order to work with the given table. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dib0700: break keytable into NEC and RC-5 variantsMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of having one big keytable with 2 protocols inside, break it into two separate tables, being one for NEC and another for RC-5 variants, and properly identify what variant should be used at the boards entries. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dib0700: avoid bad repeatMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | a 250ms delay is too low for this device. It ends by producing false repeat events. Increase the delay time to 500 ms to avoid troubles. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: Port dib0700 to rc-coreMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the new rc-core handler at dvb-usb-remote for dib0700 driver. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dvb-usb: add support for rc-core modeMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Allows dvb-usb drivers to use rc-core, instead of the legacy implementation. No driver were ported yet to rc-core, so, some small adjustments may be needed, when starting to migrate the drivers. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dvb-usb: prepare drivers for using rc-coreMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a big patch, yet trivial. It just move the RC properties to a separate struct, in order to prepare the dvb-usb drivers to use rc-core. There's no change on the behavior of the drivers. With this change, it is possible to have both legacy and rc-core based code inside the dvb-usb-remote, allowing a gradual migration to rc-core, driver per driver. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dvb-usb: get rid of struct dvb_usb_rc_keyMauro Carvalho Chehab2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dvb-usb has its own IR handle code. Now that we have a Remote Controller subsystem, we should start using it. So, remove this struct, in favor of the similar struct defined at the RC subsystem. This is a big, but trivial patch. It is a 3 line delect, plus lots of rename on several dvb-usb files. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9005: use generic_bulk_ctrl_endpoint_responseMichael Krufky2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Michael Krufky <mkrufky@kernellabs.com> Acked-by: Luca Olivetti <luca@ventoso.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: DVB: fix dvr node refcountingJiri Slaby2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In dvb_dvr_release, there is a test dvbdev->users==-1, but users are never negative. This error results in hung tasks: task PC stack pid father bash D ffffffffa000c948 0 3264 3170 0x00000000 ffff88003aec5ce8 0000000000000086 0000000000011f80 0000000000011f80 ffff88003aec5fd8 ffff88003aec5fd8 ffff88003b848670 0000000000011f80 ffff88003aec5fd8 0000000000011f80 ffff88003e02a030 ffff88003b848670 Call Trace: [<ffffffff813dd4a5>] dvb_dmxdev_release+0xc5/0x130 [<ffffffff8107b750>] ? autoremove_wake_function+0x0/0x40 [<ffffffffa00013a2>] dvb_usb_adapter_dvb_exit+0x42/0x70 [dvb_usb] [<ffffffffa0000525>] dvb_usb_exit+0x55/0xd0 [dvb_usb] [<ffffffffa00005ee>] dvb_usb_device_exit+0x4e/0x70 [dvb_usb] [<ffffffffa000a065>] af9015_usb_device_exit+0x55/0x60 [dvb_usb_af9015] [<ffffffff813a3f05>] usb_unbind_interface+0x55/0x1a0 [<ffffffff81316000>] __device_release_driver+0x70/0xe0 ... So check against 1 there instead. BTW why's the TODO there? Adding TODOs to the code without descriptions is like adding nothing. Signed-off-by: Jiri Slaby <jslaby@suse.cz> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9013: fix commentsAntti Palosaari2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix comments. It is demodulator driver not DVB USB -bridge. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9013: output fw version as four digit longAntti Palosaari2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Firmware version is four digit long. Print all four digits instead of three digits used earlier. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9013: af9013_read_status() refactoringAntti Palosaari2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Function af9013_read_status() refactoring. Read lock bits in different order to save count of register reads. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9013: program tuner before demodulatorAntti Palosaari2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Program tuner before demodulator in case of channel set. Earlier it was programmed during demodulator programming. This seems to resolve weird error where demodulator misses sometimes ability to gain lock. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9015: support for AverMedia AVerTV Volar M (A815Mac)Antti Palosaari2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add USB ID 07ca:815a for AverMedia AVerTV Volar M (A815Mac). Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: af9013: add support for firmware 5.1.0.0Antti Palosaari2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for new firmware version 5.1.0.0. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: "dib3000mc: reduce large stack usage" fixAndrew Morton2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | s/ENODEV/ENOMEM, per Andreas. This fix got lost when someone merged "dib3000mc: reduce large stack usage". Please don't lose fixes. Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: drivers/media: Remove unnecessary casts of private_dataJoe Perches2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Joe Perches <joe@perches.com> Acked-by: Jarod Wilson <jarod@redhat.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: remove obsolete conditionalizing on DVB_DIBCOM_DEBUGChristoph Egger2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As pointed by Christoph Egger <siccegge@stud.informatik.uni-erlangen.de>, The config Option DVB_DIBCOM_DEBUG was dropped while removing the dibusb driver in favor of dvb-usb in 2005. However it remaind existant at some places of the kernel config. Instead of just removing the debug capability, the better is to just remove the bad dependency, making the modprobe function always visible. Thanks-to: Christoph Egger <siccegge@stud.informatik.uni-erlangen.de> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: lgs8gxx: remove firmware for lgs8g75Ben Hutchings2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The recently added support for lgs8g75 included some 8051 machine code without accompanying source code. Replace this with use of the firmware loader. Compile-tested only. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dvb_frontend: fix typos in comments and one functionGuillaume Audirac2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr> Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: tda10048: clear the uncorrected packet registers when saturatedGuillaume Audirac2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use the register CLUNC to reset the CPTU registers (LSB & MSB) when they saturate at 0xFFFF. Fixes as well a few register typos. Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr> Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: tda10048: fix bitmask for the transmission modeGuillaume Audirac2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a missing bit for reading the transmission mode (2K/8K) in tda10048_get_tps Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr> Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: tda10048: fix the uncomplete function tda10048_read_berGuillaume Audirac2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Completes the bit-error-rate read function with the CBER register (before Viterbi decoder). The returned value is 1e8*actual_ber to be positive. Also includes some typo mistakes. Signed-off-by: Guillaume Audirac <guillaume.audirac@webag.fr> Signed-off-by: Steven Toth <stoth@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: drivers/media/dvb/frontends: remove duplicate structure field ↵Julia Lawall2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | initialization The read_status field is initialized twice to the same value. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @r@ identifier I, s, fld; position p0,p; expression E; @@ struct I s =@p0 { ... .fld@p = E, ...}; @s@ identifier I, s, r.fld; position r.p0,p; expression E; @@ struct I s =@p0 { ... .fld@p = E, ...}; @script:python@ p0 << r.p0; fld << r.fld; ps << s.p; pr << r.p; @@ if int(ps[0].line)<int(pr[0].line) or int(ps[0].column)<int(pr[0].column): cocci.print_main(fld,p0) // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: dvb_ca_en50221: return -EFAULT on copy_to_user errorsDan Carpenter2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | copy_to_user() returns the number of bytes remaining to be copied which isn't the right thing to return here. The comments say that these functions in dvb_ca_en50221.c should return the number of bytes copied or an error return. I've changed it to return -EFAULT. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: mantis: Select correct frontendsBen Hutchings2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the Kconfig selections to match the code. Add the usual condition of !DVB_FE_CUSTOMISE. Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: remove unneeded null check in anysee_probe()Dan Carpenter2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Smatch complained because "d" is dereferenced first and then checked for null later . The only code path where "d" could be a invalid pointer is if this is a cold device in dvb_usb_device_init(). I consulted Antti Palosaari and he explained that anysee is always a warm device. I have added a comment and removed the unneeded null check. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
* | | | | V4L/DVB: drivers/media: Use memdup_userJulia Lawall2010-08-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Use memdup_user when user data is immediately copied into the allocated region. The semantic patch that makes this change is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression from,to,size,flag; position p; identifier l1,l2; @@ - to = \(kmalloc@p\|kzalloc@p\)(size,flag); + to = memdup_user(from,size); if ( - to==NULL + IS_ERR(to) || ...) { <+... when != goto l1; - -ENOMEM + PTR_ERR(to) ...+> } - if (copy_from_user(to, from, size) != 0) { - <+... when != goto l2; - -EFAULT - ...+> - } // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>