summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-05-20[media] anysee: reimplement demod and tuner attachAntti Palosaari2-88/+233
Use board ID as base value when selecting correct hardware configuration. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] anysee: change some messagesAntti Palosaari1-13/+13
Print firmware version as two digit long (change from 3 to 2). Windows app have changed that too. First byte was hard coded as 0. Change email list address to report non-working device to current one. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] anysee: fix multibyte I2C readAntti Palosaari2-2/+2
It can read more than one byte from I2C bus. Allow that. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] anysee: I2C address fixAntti Palosaari1-9/+9
Switch from 8 bit notation to real 7 bit. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] NXP TDA18212HN silicon tuner driverAntti Palosaari5-0/+366
New silicon tuner driver. Signed-off-by: Antti Palosaari <crope@iki.fi> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] cx18: Bump driver version, since a new class of HVR-1600 is properly ↵Andy Walls1-1/+1
supported Make a user visible driver version change, for the inevitable user support questions about why newer model HVR-1600's do not work with (older versions of) the cx18 driver. Signed-off-by: Andy Walls <awalls@md.metrocast.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] cx18: Make RF analog TV work for newer HVR-1600 models with silicon ↵Andy Walls4-7/+41
tuners A previous changes which added the newer model HVR-1600's and DTV support for them, neglected to add RF analog TV for them. Fix RF analog TV for the newer HVR-1600's which have a worldwide analog tuner assembly with a TDA18271 tuner and TDA8295 demodulator. Thanks go to Jeff Campbell and Mike Bradley for reproting the problem, and also to Mike Bradley for doing a lot of the legwork to figure out the tuner reset GPIO line, the demodulator I2C address, and that the GPIOs have to be reinitialized after a cardtype switch. Reported-by: Jeff Campbell <jac1dlists@gmail.com> Tested-by: Andy Walls <awalls@md.metrocast.net> Signed-off-by: Andy Walls <awalls@md.metrocast.net> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: use mutex instead of semaphoreMauro Carvalho Chehab1-14/+14
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] Remove the now obsolete drx397xDMauro Carvalho Chehab5-1695/+0
This was replaced by Micronas drxd driver Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: CodingStyle cleanupsMauro Carvalho Chehab1-44/+43
There are still lots of 80-columns warnings and a few errors at some tables, but changing them would require more work and with probably not much gain. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: Don't use a macro for CHK_ERROR with a break insideMauro Carvalho Chehab1-438/+637
The macro is defined as: #define CHK_ERROR(s) if( (status = s)<0 ) break This sucks, as makes harder to debug if something got wrong and there are more than one level of loops. Also, violates CodingStyle. Fixed by this simple perl script: while (<>) { $f.=$_; }; $f=~ s,\n\#define CHK_ERROR[^\n]+\n,\n,; $f=~ s=(CHK_ERROR\(.*\,)\n\s+=\1 =g; $f=~ s=(CHK_ERROR\(.*\,)\n\s+=\1 =g; $f=~ s=(CHK_ERROR\(.*\,)\n\s+=\1 =g; $f=~ s=(CHK_ERROR\(.*)\s+(\,)\n\s+=\1\2 =g; $f=~ s=(CHK_ERROR\(.*)\s+(\,)\n\s+=\1\2 =g; $f=~ s=(CHK_ERROR\(.*)\s+(\,)\n\s+=\1\2 =g; $f=~ s,\n(\t+)CHK_ERROR\((.*)\)\;,\n\1status = \2;\n\1if (status < 0)\n\1\tbreak;,g; print $f; Plus a few manual adjustments Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: Fix some CodingStyle issuesMauro Carvalho Chehab3-9/+5
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: don't re-define u8/u16/u32 typesMauro Carvalho Chehab2-76/+73
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd_map_firm.h: Remove unused linesMauro Carvalho Chehab1-11687/+6
This file is big. It has 12000+ lines! Most of the defined stuff aren't used anyware inside the driver, so we can just remove most of the lines and still keep everything that have any interest for the driver. If anyone ever need the other devices, it will be stored at git logs, so it is easy to recover. The diff result is impressive: 1 files changed, 1013 insertions(+), 12694 deletions(-) rewrite drivers/media/dvb/frontends/drxd_map_firm.h (90%) As a sideback effect, drxd driver will likely compile faster, and checkpatch.pl can run on this file without taking (literally) hours. The code cleanup was done using this small script: $ for i in `perl -ne 'print "$1\n" if (m/define\s+([^\s+]+)/)' drxd_map_firm.h`; do if [ "`grep $i drivers/media/dvb/frontends/drxd*.[ch]`" != "" ] ; then echo $i; fi; done|sort|uniq >used_symbols $ grep -f used_symbols drxd_map_firm.h >defines And then deleting the old #define lines, replacing by "defines" file content. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd_map_firm.h: make checkpatch.pl happierMauro Carvalho Chehab1-12661/+12661
s/(define\s+[^\s]+)\s........../\1/ Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: Run lindent across sourcesDevin Heitmueller5-3675/+1819
Take a first cleanup pass over the sources to bring them closer to the Linux coding style. Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: add remote control support for PCTV 330eDevin Heitmueller1-0/+1
Add support for the PCTV 330e remote control Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: remove "not validated" flag for PCTV 330eDevin Heitmueller1-1/+0
Remove the flag indicating the 330e board is not validated, based on the half dozen users who have reported today that everything is working. Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: move firmware to binary blobDevin Heitmueller3-1504/+27
Abstract out the firmware for the drx-d so that it can be loaded by the request_firmware() interface. The firmware licensing permits free redistribution, and can be found here: http://kernellabs.com/firmware/drxd Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: add digital support for PCTV 330eDevin Heitmueller2-0/+4
Add the calls necessary to use the new drx-d driver for the PCTV 330e Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: include model number for PCTV 330eDevin Heitmueller3-6/+5
Given how PCTV has multiple products with the same model name, include the model number in the description and #define to make it a little more clear. Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: fix GPIO problem with HVR-900R2 getting out of sync with drx-dDevin Heitmueller1-1/+8
The em28xx bridge strobes the reset pin on the drx-d on every ts_ctrl call. This results in the state of the chip getting out of the sync with the state of the driver (and hence all tuning requests after the first one fail). Make sure the drx-d is not being held in reset, but don't actually perform a hardware reset on the chip. The GPIO block has been split out from the other HVR-9x0 variants to reduce the risk of regression, although in theory they would not have any issues since none of those cases have the frontend driver managing any internal state. Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: provide ability to disable the i2c gate control functionDevin Heitmueller3-0/+8
If the tuner is not actually behind an i2c gate, using the i2c gate control function can wedge the i2c bus. Provide the ability to control on a per-board basis whether it should be used. Problem was noticed on the HVR-900 R2, where it resulted in the first tuning attempt succeeding, and then all subsequent attempts to access the xc3028 being treated as failures (including the call to sleep the tuner). Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: auto-select drx-k if CUSTOMISE is not setMauro Carvalho Chehab1-0/+1
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] em28xx: enable support for the drx-d on the HVR-900 R2Devin Heitmueller2-12/+10
Add the required board initialization required for the drx-d to work with the 900R2. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: provide ability to control rs byteDevin Heitmueller2-1/+2
Provide the ability for the board configuration to specify whether to insert the RS byte into the TS interconnect to the bridge, while not required for the ngene in fact is required for the em28xx. Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] drxd: add driver to Makefile and KconfigDevin Heitmueller2-0/+13
Add the drxd to the Makefile and Kconfig Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20drx: add initial drx-d driverRalph Metzler6-0/+19933
These are the original drx-d sources, extracted from Ralph Metzler's GPL'd ngene driver. No modifications/cleanup have yet been made. In fact, no measures have been taken to see if the code even compiles. Signed-off-by Ralph Metzler <rjkm@metzlerbros.de> Signed-off-by: Devin Heitmueller <dheitmueller@kernellabs.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] mantis: trivial module parameter documentation fixBjørn Mork2-2/+2
The default for "verbose" is 0. Update description to match. Signed-off-by: Bjørn Mork <bjorn@mork.no> Acked-by: Manu Abraham <manu@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] use pci_dev->revisionBjørn Mork13-24/+14
pci_setup_device() has saved the PCI revision in the pci_dev struct since Linux 2.6.23. Use it. Cc: Auke Kok <auke-jan.h.kok@intel.com> Signed-off-by: Bjørn Mork <bjorn@mork.no> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] V4L: soc_camera_platform: add helper functions to manage device ↵Guennadi Liakhovetski1-0/+50
instances Add helper inline functions to correctly manage dynamic allocation and freeing of platform devices. This avoids the ugly code to nullify device objects. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] xc5000: Improve it to work better with 6MHz-spaced channelsMauro Carvalho Chehab1-6/+26
Brazil uses 6MHz-spaced channels. So, the nyquist filter for DVB-C should be different, otherwise, inter-channel interference may badly affect the device, and signal may not be properly decoded. On my tests here, without this patch, sometimes channels are seen, but, most of the time, PID filter returns with timeout. Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-20[media] DM04/QQBOX Fix issue with firmware release and cold resetMalcolm Priestley1-5/+7
Fix issue where firmware does not release on cold reset. Also, default firmware never cold resets in multi tuner environment. Signed-off-by: Malcolm Priestley <tvboxspy@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
2011-05-19Linux 2.6.39v2.6.39Linus Torvalds1-1/+1
2011-05-19Merge branch 'fixes' of ↵Linus Torvalds7-27/+96
git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: configfs: Fix race between configfs_readdir() and configfs_d_iput() configfs: Don't try to d_delete() negative dentries. ocfs2/dlm: Target node death during resource migration leads to thread spin ocfs2: Skip mount recovery for hard-ro mounts ocfs2/cluster: Heartbeat mismatch message improved ocfs2/cluster: Increase the live threshold for global heartbeat ocfs2/dlm: Use negotiated o2dlm protocol version ocfs2: skip existing hole when removing the last extent_rec in punching-hole codes. ocfs2: Initialize data_ac (might be used uninitialized)
2011-05-19Merge branch 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6Linus Torvalds22-46/+108
* 'devicetree/merge' of git://git.secretlab.ca/git/linux-2.6: drivercore: revert addition of of_match to struct device of: fix race when matching drivers
2011-05-19Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linusLinus Torvalds4-8/+6
* 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus: MIPS: Kludge IP27 build for 2.6.39. MIPS: AR7: Fix GPIO register size for Titan variant. MIPS: Fix duplicate invocation of notify_die. MIPS: RB532: Fix iomap resource size miscalculation.
2011-05-18drivercore: revert addition of of_match to struct deviceGrant Likely22-50/+108
Commit b826291c, "drivercore/dt: add a match table pointer to struct device" added an of_match pointer to struct device to cache the of_match_table entry discovered at driver match time. This was unsafe because matching is not an atomic operation with probing a driver. If two or more drivers are attempted to be matched to a driver at the same time, then the cached matching entry pointer could get overwritten. This patch reverts the of_match cache pointer and reworks all users to call of_match_device() directly instead. Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2011-05-18of: fix race when matching driversMilton Miller1-2/+6
If two drivers are probing devices at the same time, both will write their match table result to the dev->of_match cache at the same time. Only write the result if the device matches. In a thread titled "SBus devices sometimes detected, sometimes not", Meelis reported his SBus hme was not detected about 50% of the time. From the debug suggested by Grant it was obvious another driver matched some devices between the call to match the hme and the hme discovery failling. Reported-by: Meelis Roos <mroos@linux.ee> Signed-off-by: Milton Miller <miltonm@bga.com> [grant.likely: modified to only call of_match_device() once] Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
2011-05-18Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-blockLinus Torvalds25-43/+62
* 'for-linus' of git://git.kernel.dk/linux-2.6-block: block: don't delay blk_run_queue_async scsi: remove performance regression due to async queue run blk-throttle: Use task_subsys_state() to determine a task's blkio_cgroup block: rescan partitions on invalidated devices on -ENOMEDIA too cdrom: always check_disk_change() on open block: unexport DISK_EVENT_MEDIA_CHANGE for legacy/fringe drivers
2011-05-18MIPS: Kludge IP27 build for 2.6.39.Ralf Baechle1-0/+2
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2011-05-18MIPS: AR7: Fix GPIO register size for Titan variant.Florian Fainelli1-3/+1
The 'size' variable contains the correct register size for both AR7 and Titan, but we never used it to ioremap the correct register size. This problem only shows up on Titan. [ralf@linux-mips.org: Fixed the fix. The original patch as in patchwork recognizes the problem correctly then fails to fix it ...] Reported-by: Alexander Clouter <alex@digriz.org.uk> Signed-off-by: Florian Fainelli <florian@openwrt.org> Patchwork: https://patchwork.linux-mips.org/patch/2380/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2011-05-18MIPS: Fix duplicate invocation of notify_die.Ralf Baechle1-4/+2
Initial patch by Yury Polyanskiy <ypolyans@princeton.edu>. Signed-off-by: Ralf Baechle <ralf@linux-mips.org> Patchwork: https://patchwork.linux-mips.org/patch/2373/
2011-05-18MIPS: RB532: Fix iomap resource size miscalculation.Ralf Baechle1-1/+1
This is the MIPS portion of Joe Perches <joe@perches.com>'s https://patchwork.linux-mips.org/patch/2172/ which seems to have been lost in time and space. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2011-05-18configfs: Fix race between configfs_readdir() and configfs_d_iput()Joel Becker1-5/+28
configfs_readdir() will use the existing inode numbers of inodes in the dcache, but it makes them up for attribute files that aren't currently instantiated. There is a race where a closing attribute file can be tearing down at the same time as configfs_readdir() is trying to get its inode number. We want to get the inode number of open attribute files, because they should match while instantiated. We can't lock down the transition where dentry->d_inode is set to NULL, so we just check for NULL there. We can, however, ensure that an inode we find isn't iput() in configfs_d_iput() until after we've accessed it. Signed-off-by: Joel Becker <jlbec@evilplan.org>
2011-05-18configfs: Don't try to d_delete() negative dentries.Joel Becker1-2/+4
When configfs is faking mkdir() on its subsystem or default group objects, it starts by adding a negative dentry. It then tries to instantiate the group. If that should fail, it must clean up after itself. I was using d_delete() here, but configfs_attach_group() promises to return an empty dentry on error. d_delete() explodes with the entry dentry. Let's try d_drop() instead. The unhashing is what we want for our dentry. Signed-off-by: Joel Becker <jlbec@evilplan.org>
2011-05-18block: don't delay blk_run_queue_asyncShaohua Li1-1/+3
Let's check a scenario: 1. blk_delay_queue(q, SCSI_QUEUE_DELAY); 2. blk_run_queue_async(); the second one will became a noop, because q->delay_work already has WORK_STRUCT_PENDING_BIT set, so the delayed work will still run after SCSI_QUEUE_DELAY. But blk_run_queue_async actually hopes the delayed work runs immediately. Fix this by doing a cancel on potentially pending delayed work before queuing an immediate run of the workqueue. Signed-off-by: Shaohua Li <shaohua.li@intel.com> Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-05-18Merge branch 'v4l_for_linus' of ↵Linus Torvalds4-15/+54
git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] V4L: soc-camera: regression fix: calculate .sizeimage in soc_camera.c [media] v4l2-subdev: fix broken subdev control enumeration [media] Fix cx88 remote control input [media] v4l: Release module if subdev registration fails
2011-05-18Merge branch 'x86-fixes-for-linus' of ↵Linus Torvalds9-46/+147
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86, AMD: Fix ARAT feature setting again Revert "x86, AMD: Fix APIC timer erratum 400 affecting K8 Rev.A-E processors" x86, apic: Fix spurious error interrupts triggering on all non-boot APs x86, mce, AMD: Fix leaving freed data in a list x86: Fix UV BAU for non-consecutive nasids x86, UV: Fix NMI handler for UV platforms
2011-05-18Merge branch 'perf-fixes-for-linus' of ↵Linus Torvalds7-56/+119
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: perf evlist: Fix per thread mmap setup perf tools: Honour the cpu list parameter when also monitoring a thread list kprobes, x86: Disable irqs during optimized callback