pandora-kernel.git
17 years agoV4L/DVB (5092): Pvrusb2: Use ARRAY_SIZE wherever possible
Mike Isely [Sat, 20 Jan 2007 03:39:17 +0000 (00:39 -0300)]
V4L/DVB (5092): Pvrusb2: Use ARRAY_SIZE wherever possible

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5091): Pvrusb2: Use kzalloc in place of kmalloc/memset pairs
Mike Isely [Sat, 20 Jan 2007 03:37:11 +0000 (00:37 -0300)]
V4L/DVB (5091): Pvrusb2: Use kzalloc in place of kmalloc/memset pairs

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5090): Pvrusb2: A patch to use ARRAY_SIZE macro when appropriate
Ahmed S. Darwish [Sat, 20 Jan 2007 03:35:03 +0000 (00:35 -0300)]
V4L/DVB (5090): Pvrusb2: A patch to use ARRAY_SIZE macro when appropriate

Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5089): Pvrusb2: V4L EXT_CTRLS fixup
Mike Isely [Sat, 20 Jan 2007 03:30:23 +0000 (00:30 -0300)]
V4L/DVB (5089): Pvrusb2: V4L EXT_CTRLS fixup

Attempts to enumerate or operate on a group of EXT_CTRLS where the
group size is zero is OK; don't fail on such operations.  At least one
application uses this to probe for the existence of this API so let it
succeed.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5088): Pvrusb2: Minor dead code / comment cleanups
Mike Isely [Sat, 20 Jan 2007 03:28:15 +0000 (00:28 -0300)]
V4L/DVB (5088): Pvrusb2: Minor dead code / comment cleanups

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5087): Pvrusb2: Fix sizeof() calculation foul-up
Mike Isely [Sat, 20 Jan 2007 03:27:01 +0000 (00:27 -0300)]
V4L/DVB (5087): Pvrusb2: Fix sizeof() calculation foul-up

This bug caused uninitalized data to be returned during a G_TUNER status poll.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5086): Pvrusb2: Fix missing break statement on VIDIOC_S_TUNER
Mike Isely [Sat, 20 Jan 2007 03:24:52 +0000 (00:24 -0300)]
V4L/DVB (5086): Pvrusb2: Fix missing break statement on VIDIOC_S_TUNER

The lack of a break statement in the handling of VIDIOC_S_TUNER caused
errors to result.  Fixed.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5085): Pvrusb2: trace print added
Mike Isely [Sat, 20 Jan 2007 03:22:28 +0000 (00:22 -0300)]
V4L/DVB (5085): Pvrusb2: trace print added

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5084): Pvrusb2: Stop hardcoding frequency ranges
Mike Isely [Sat, 20 Jan 2007 03:19:23 +0000 (00:19 -0300)]
V4L/DVB (5084): Pvrusb2: Stop hardcoding frequency ranges

Rather than hardcoding frequency ranges everywhere, rely on
VIDIOC_G_TUNER results wherever we can.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5083): Pvrusb2: Remove automodeswitch control
Mike Isely [Sat, 20 Jan 2007 03:15:41 +0000 (00:15 -0300)]
V4L/DVB (5083): Pvrusb2: Remove automodeswitch control

The automodeswitch control was a feature that enable automatic radio /
tv switching based on the selected frequency.  However since frequency
ranges can overlap and also since apparently in some cases it's
possible for the same frequency range to be both tv and radio in a
specific region, then this feature can't safely work.  So it's removed.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5082): Pvrusb2: Slight debug printing efficiency fixup
Mike Isely [Sat, 20 Jan 2007 03:10:55 +0000 (00:10 -0300)]
V4L/DVB (5082): Pvrusb2: Slight debug printing efficiency fixup

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5081): Pvrusb2: VIDIOC_G_TUNER cleanup
Mike Isely [Sat, 20 Jan 2007 03:09:47 +0000 (00:09 -0300)]
V4L/DVB (5081): Pvrusb2: VIDIOC_G_TUNER cleanup

Clean up use of VIDIOC_G_TUNER; we now correctly gather info from all
the I2C client modules.  Also abide by V4L2_TUNER_CAP_LOW
appropriately.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5080): Pvrusb2: Allow streaming from /dev/radioX
Mike Isely [Sat, 20 Jan 2007 03:04:31 +0000 (00:04 -0300)]
V4L/DVB (5080): Pvrusb2: Allow streaming from /dev/radioX

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5079): Pvrusb2: Use kzalloc instead of kmalloc+memset pairs
Mike Isely [Sat, 20 Jan 2007 03:03:32 +0000 (00:03 -0300)]
V4L/DVB (5079): Pvrusb2: Use kzalloc instead of kmalloc+memset pairs

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5078): Pvrusb2: It's safe to kfree() a null pointer
Mike Isely [Sat, 20 Jan 2007 03:02:26 +0000 (00:02 -0300)]
V4L/DVB (5078): Pvrusb2: It's safe to kfree() a null pointer

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5077): Bttv cropping support
Michael Schimek [Thu, 18 Jan 2007 19:17:39 +0000 (16:17 -0300)]
V4L/DVB (5077): Bttv cropping support

Adds the missing VIDIOC_CROPCAP, G_CROP and S_CROP ioctls, permitting
applications to capture or overlay a subsection of the picture or to
extend the capture window beyond active video, into the VBI area and the
horizontal blanking. VBI capturing can start and end on any line,
including the picture area, and apps can capture different lines of each
field and single fields.
For compatibility with existing applications, the open() function
resets the cropping and VBI capturing parameters and a VIDIOC_S_CROP
call is necessary to actually enable cropping.
Regrettably in PAL-M, PAL-N, PAL-Nc and NTSC-JP mode the maximum image
width will increase from 640 and 768 to 747 and 923 pixels respectively.
Like the VBI changes however, this should only affect applications which
depend on former driver limitations, such as never getting more than 640
pixels regardless of the requested width.
Also, new freedoms require additional checks for conflicts and some
applications may not expect an EBUSY error from the VIDIOC_QBUF and
VIDIOCMCAPTURE ioctls. These errors should be rare though.
So far, the patch has been tested on a UP machine with a bt878 in PAL-
BGHI and NTSC-M mode using xawtv, tvtime, mplayer/mencoder, zapping/
libzvbi and these tools: http://zapping.sf.net/bttv-crop-test.tar.bz2
I'd be grateful about comments or bug reports.

Signed-off-by: Michael H. Schimek <mschimek@gmx.at>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5076): Cpia.c: buffer overflow
Alexey Dobriyan [Sun, 14 Jan 2007 18:29:42 +0000 (15:29 -0300)]
V4L/DVB (5076): Cpia.c: buffer overflow

If assigned minor is 10 or greater, terminator will be put beyound the end.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5059): Pvrusb2: Be smarter about mode restoration
Mike Isely [Sat, 30 Dec 2006 21:31:22 +0000 (18:31 -0300)]
V4L/DVB (5059): Pvrusb2: Be smarter about mode restoration

Switch back to the previous input selection when the radio device is
closed - but only do that if the current input selection is still the
radio (i.e. it appears that it hasn't been messed with).

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5058): Pvrusb2: bug fix involving switch into radio mode
Mike Isely [Sat, 30 Dec 2006 21:30:12 +0000 (18:30 -0300)]
V4L/DVB (5058): Pvrusb2: bug fix involving switch into radio mode

When the input is switched by opening /dev/radioX, we must also commit
that change into the driver core.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5057): Pvrusb2: Stream configuration cleanups
Mike Isely [Sat, 30 Dec 2006 21:27:32 +0000 (18:27 -0300)]
V4L/DVB (5057): Pvrusb2: Stream configuration cleanups

Clean up and tighten logic involving stream configuration.  This
mainly involves changes to pvrusb2-v4l2.c, where we better clarify how
we use the stream configuration enum and implement a cleaner means to
control streaming for a given device node.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5056): Pvrusb2: Fix cut/paste bug in auto_mode_switch control
Mike Isely [Sat, 30 Dec 2006 21:24:35 +0000 (18:24 -0300)]
V4L/DVB (5056): Pvrusb2: Fix cut/paste bug in auto_mode_switch control

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5054): Pvrusb2: cosmetic comment tweak
Mike Isely [Thu, 28 Dec 2006 02:40:59 +0000 (23:40 -0300)]
V4L/DVB (5054): Pvrusb2: cosmetic comment tweak

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5053): Pvrusb2: Change default volume to something sane
Mike Isely [Thu, 28 Dec 2006 02:36:33 +0000 (23:36 -0300)]
V4L/DVB (5053): Pvrusb2: Change default volume to something sane

The default volume of 65535 is too high.  Make is something smaller.
Note that this _only_ changes the default value.  Specifically, there
are no scaling or other more intrusive changes here.  I'm just sick of
constantly having to reduce the volume every time I plug in and test
the device!  (And unfortunately we can't do a better fix like scaling
the volume so that 65535 makes sense because doing so will screw up
any app - like MythTV - which expects the old scaling.)  Too bad V4L
controls don't have better defined ranges.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5052): Pvrusb2: Remove stream claiming hack from /dev/radio
Mike Isely [Thu, 28 Dec 2006 02:33:00 +0000 (23:33 -0300)]
V4L/DVB (5052): Pvrusb2: Remove stream claiming hack from /dev/radio

Trying to temporarily check that the stream is not claimed during open
of the radio device is at best a race condition.  What's to stop
another app from claiming the stream anyway the instant after the
check is done?  The implementation for this was dicey anyway.  So it's
removed.  The only "price" for this is that if /dev/radioX is opened
while streaming video, then the video stream is just going to switch
to radio mode anyway.  If a user does this, he gets what he expects...

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5051): Pvrusb2: Better radio versus tv frequency handling
Mike Isely [Thu, 28 Dec 2006 02:30:13 +0000 (23:30 -0300)]
V4L/DVB (5051): Pvrusb2: Better radio versus tv frequency handling

Separate track radio versus tv frequency so that when we switch modes
we can also switch to a sane frequency appropriate for the mode.  Also
implement logic to automate mode switching in certain cases.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5050): Pvrusb2: Newer frequency range checking
Mike Isely [Thu, 28 Dec 2006 02:28:54 +0000 (23:28 -0300)]
V4L/DVB (5050): Pvrusb2: Newer frequency range checking

Implement new method for doing integer range checking, so that we can
more intelligently range-check radio and tv ranges at once.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5049): Pvrusb2: Enable radio mode for 24xxx devices
Mike Isely [Thu, 28 Dec 2006 02:26:55 +0000 (23:26 -0300)]
V4L/DVB (5049): Pvrusb2: Enable radio mode for 24xxx devices

These changes implement correct audio routing for radio mode on a
24xxx device.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5048): Pvrusb2: v4l2 API implementation frequency tweaks
Mike Isely [Thu, 28 Dec 2006 02:25:06 +0000 (23:25 -0300)]
V4L/DVB (5048): Pvrusb2: v4l2 API implementation frequency tweaks

Report and set correctly converted frequency to/from a V4L2 app.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5047): Pvrusb2: Fix tuning calculation when in radio mode
Mike Isely [Thu, 28 Dec 2006 02:23:22 +0000 (23:23 -0300)]
V4L/DVB (5047): Pvrusb2: Fix tuning calculation when in radio mode

Frequency units in V4L2 are apparently different when in radio mode
compared to tv mode.  Why?  Who knows.  This change adapts the driver
appropriately - so that internally we always only deal in Hz and don't
have to muck with craziness like this.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5046): Pvrusb2: Fix tuner frequency calculation
Mike Isely [Thu, 28 Dec 2006 02:21:34 +0000 (23:21 -0300)]
V4L/DVB (5046): Pvrusb2: Fix tuner frequency calculation

A conversion from Hz to V4L frequency units was accidentally removed
by an earlier change.  Restore it.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5045): Pvrusb2: Fix heap corruption introduced by radio mods
Mike Isely [Thu, 28 Dec 2006 02:19:42 +0000 (23:19 -0300)]
V4L/DVB (5045): Pvrusb2: Fix heap corruption introduced by radio mods

We can't allocate v4l device structures in a block, since the v4l core
governs when each device actually gets freed.  This bug was introduced
as part of the core radio implementation.  Fix it.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5044): Pvrusb2: Allow overriding vbi and radio device minor numbers
Mike Isely [Thu, 28 Dec 2006 02:17:26 +0000 (23:17 -0300)]
V4L/DVB (5044): Pvrusb2: Allow overriding vbi and radio device minor numbers

Support specification of vbi and radio device minor numbers in a
manner similar to the video device minor number.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5043): Pvrusb2: video standard broadcast fix for radio mode
Mike Isely [Thu, 28 Dec 2006 02:14:54 +0000 (23:14 -0300)]
V4L/DVB (5043): Pvrusb2: video standard broadcast fix for radio mode

Ensure we don't accidentally broadcast the standard while in radio mode.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5042): Pvrusb2: Make units uniform when tracking tuning frequency
Mike Isely [Thu, 28 Dec 2006 02:13:53 +0000 (23:13 -0300)]
V4L/DVB (5042): Pvrusb2: Make units uniform when tracking tuning frequency

The initial radio implementation used different units for tuning when
in radio mode.  This changes everything to Hz.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5041): Pvrusb2: Use separate enumeration for get/store of minor number
Mike Isely [Thu, 28 Dec 2006 02:12:28 +0000 (23:12 -0300)]
V4L/DVB (5041): Pvrusb2: Use separate enumeration for get/store of minor number

Use separate enum for get/store of minor number; we want pvr2_config
to go away eventually and since it really means something different,
don't use it here

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5040): Pvrusb2: Use enumeration for minor number get / store code
Mike Isely [Thu, 28 Dec 2006 02:11:22 +0000 (23:11 -0300)]
V4L/DVB (5040): Pvrusb2: Use enumeration for minor number get / store code

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5039): Pvrusb2: Implement /dev/radioX
Pantelis Koukousoulas [Thu, 28 Dec 2006 02:09:55 +0000 (23:09 -0300)]
V4L/DVB (5039): Pvrusb2: Implement /dev/radioX

The "main" V4L2 interface patch. This is yet very incomplete, incorrect and
probably inappropriate for inclusion as-is, but at least with this I 'm able
to tune and play radio through a V4L2 program (pvr-radio.c, a "thumb" version
of ivtv-radio.c with just the essentials).

Therefore, it kinda gives an idea of what is needed to support this, hm,
interface (partly used also by e.g., kradio). Please point out any mistakes
on this code. I 'm sure I 'm messing up some struct initialization somewhere
but currently I 'm too lazy to actually think this through until I complete
the functionality (e.g., handle the VIDIOC_S_STD, ENUMINPUT, etc ioctls
appropriately).

Signed-off-by: Pantelis Koukousoulas <pakt223@freemail.gr>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5038): Pvrusb2: Implement stream claim checking function
Pantelis Koukousoulas [Thu, 28 Dec 2006 02:08:55 +0000 (23:08 -0300)]
V4L/DVB (5038): Pvrusb2: Implement stream claim checking function

Add (and expose) a new function, pvr2_channel_check_stream_no_lock(), in
pvrusb2-context.c. This is hopefully the last V4L2 interface related patch
to change anything outside pvrusb2-v4l2.c.

We need this to implement the open() for the radio device. The reason is
that within the *enter_context() section of open() we need to ensure nobody
is streaming and if we cannot, we should cleanup after ourselves and return
 -EBUSY. We cannot just use claim_stream() because:

   1) That would cause a deadlock trying to re-acquire the context lock
   2) We only need to ensure that nobody is streaming. We don't need to
      actually acquire the stream.

Again, this is a kinda ugly patch. Feel free to improve.

Signed-off-by: Pantelis Koukousoulas <pakt223@freemail.gr>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5037): Pvrusb2: Implement multiple minor device number handling
Pantelis Koukousoulas [Thu, 28 Dec 2006 02:07:58 +0000 (23:07 -0300)]
V4L/DVB (5037): Pvrusb2: Implement multiple minor device number handling

This is the first patch in preparation of the V4L2/IVTV radio interface.
It does away with the assumption of only one minor per device. It also
adds a file to show the radio minor as well. This can be useful for a
program like pvr-radio.c (when it grows up), since this way it can search
for the minor of the /dev/radioX device it opened and use the video minor
of the same driver instance to get to the actual stream.

The implementation looks kinda ugly. Feel free to improve (that is the
reason behind separate patches anyway).

Signed-off-by: Pantelis Koukousoulas <pakt223@freemail.gr>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5036): Pvrusb2: Fix for min/max control value checking
Pantelis Koukousoulas [Thu, 28 Dec 2006 02:06:54 +0000 (23:06 -0300)]
V4L/DVB (5036): Pvrusb2: Fix for min/max control value checking

In the previous patch we exploited the get_{min,max}_value facility to adjust
min/max allowable frequencies on the fly, depending on tuner mode.

Unfortunately, this facility was not used inside the *sym_to_val() function
that translates what we echo to sysfs, which means we got an -ERANGE despite
asking for a frequency between what we read to be min/max.
This patch corrects this small omission.

Signed-off-by: Pantelis Koukousoulas <pakt223@freemail.gr>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5035): Pvrusb2: Enable radio mode round #2
Pantelis Koukousoulas [Thu, 28 Dec 2006 02:06:04 +0000 (23:06 -0300)]
V4L/DVB (5035): Pvrusb2: Enable radio mode round #2

This is the logic that:
  a) Ensures /sys/class/pvrusb2/sn-*/ctl_frequency/{max,min}_val are
     "automagically" reset to sane values on each mode change.

  b) Allows tuning to a radio frequency by something like:
     echo `perl -e "print int(94.9*16000 + 0.5)"` \
       > /sys/class/pvrusb2/sn-*/ctl_input/cur_val

The trick was to take advantage of the already existing .get_{min,max}_value
function pointers in pvr2_ctrl, to "dynamically override" the hardcoded values
for min/max frequency at runtime.

For a moment I thought to dispose of the hardcoded MIN/MAX_FREQ and use the
hirange/lowrange fields of the v4l2_tuner struct instead, but then I see that
tuner-core.c kinda hardcodes these as well, so I decided to not bother.

Signed-off-by: Pantelis Koukousoulas <pakt223@freemail.gr>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5034): Pvrusb2: Enable radio mode round #1
Pantelis Koukousoulas [Thu, 28 Dec 2006 02:05:19 +0000 (23:05 -0300)]
V4L/DVB (5034): Pvrusb2: Enable radio mode round #1

This is the logic that supports switching modes via e.g.,
  echo radio > /sys/class/pvrusb2/sn-*/ctl_input/cur_val.

To do the mode switching we need to:
a) broadcast AUDC_SET_RADIO and
b) issue the CX2341X_ENC_MUTE_VIDEO command to the encoder.

The first is done by adding a new pvr2_i2c_op and having it trigger on
input change, the second by adding this command in pvr2_encoder_start()
and requesting an encoder restart on input change by setting
stale_subsys_mask appropriately.

The clues about AUDC_SET_RADIO and CX2341X_ENC_MUTE_VIDEO were kindly
provided by Hans Verkuil on the pvrusb2 mailing list. The idea to
implement mode switching this way (on input change) is due to Mike Isely.

Why AUDC_SET_RADIO/VIDIOC_S_STD are used for switching? I can 't be sure,
but I think this can be traced to a cornell student being the first to
implement radio support in ivtv "as a different standard". I think the
rest just evolved from there (it 's in the ivtv ML archives).

Signed-off-by: Pantelis Koukousoulas <pakt223@freemail.gr>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5074): Some fixes at stream waitqueue on vivi
Mauro Carvalho Chehab [Sun, 14 Jan 2007 11:33:24 +0000 (08:33 -0300)]
V4L/DVB (5074): Some fixes at stream waitqueue on vivi

There are several potential troubles on vivi waitqueue code:
- Watchdog timer should be reset at every received frame;
- Watchdog timer should be reset at the beginning of vivi_thread();
- Checks for errors when creating a newer thread with kernel_thread();
- Wake up vivi_thread() after creating it.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5073): Fix OOPS on some waitqueue conditions
Mauro Carvalho Chehab [Sat, 13 Jan 2007 12:25:16 +0000 (09:25 -0300)]
V4L/DVB (5073): Fix OOPS on some waitqueue conditions

If for some reason vivi_thread() fails, vivi will suffer an OOPS at
thread stop code, since waitqueue wouldn't be properly initializated.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5070): Budget-ci: add support for the Technotrend 1500 bundled remote
Ville-Pekka Vainio [Fri, 12 Jan 2007 17:06:21 +0000 (14:06 -0300)]
V4L/DVB (5070): Budget-ci: add support for the Technotrend 1500 bundled remote

The keymap is based on a previous patch by Jussi Kukkonen.
This remote is identified by subsystem_device id 0x1010.

Signed-off-by: Ville-Pekka Vainio <vpivaini@cs.helsinki.fi>
Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5068): Fix authorship references
Mauro Carvalho Chehab [Tue, 9 Jan 2007 14:20:59 +0000 (11:20 -0300)]
V4L/DVB (5068): Fix authorship references

Bill Dirks asked me to update his entries at kernel files, since
he change his e-mail.
I've also updated a few web broken links or obsolete info to the curent
sites where V4L drivers and API are being discussed currently.

CC: Bill Dirks <bill@thedirks.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5064): ET61X251 driver updates.
Luca Risolia [Mon, 8 Jan 2007 14:38:36 +0000 (11:38 -0300)]
V4L/DVB (5064): ET61X251 driver updates.

- Implement audio ioctl's and VIDIOC_ENUM_FRAMESIZES
- Documentation updates
- Generic improvements

Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5063): ZC0301 driver updates.
Luca Risolia [Mon, 8 Jan 2007 14:34:35 +0000 (11:34 -0300)]
V4L/DVB (5063): ZC0301 driver updates.

- Implement audio ioctl's and VIDIOC_ENUM_FRAMESIZES
- Documentation updates
- Generic improvements

Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5062): SN9C102 driver updates
Luca Risolia [Mon, 8 Jan 2007 13:43:56 +0000 (10:43 -0300)]
V4L/DVB (5062): SN9C102 driver updates

- Add support for SN9C105 and SN9C120
- Add some more USB device identifiers
- Add support for OV7660
- Implement audio ioctl's and VIDIOC_ENUM_FRAMESIZES
- Add preliminary support for 0x0c45/0x6007
- Documentation updates
- Generic improvements
Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5061): Bt8xx: add support for Ultraview DVB-T Lite
Michael Krufky [Mon, 8 Jan 2007 01:12:22 +0000 (22:12 -0300)]
V4L/DVB (5061): Bt8xx: add support for Ultraview DVB-T Lite

Ultraview DVB-T Lite is a clone of DViCO FusionHDTV DVB-T Lite

Signed-off-by: Michael Krufky <mkrufky@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5032): Improves some USBVision info messages
Dwaine Garden [Mon, 8 Jan 2007 00:13:55 +0000 (21:13 -0300)]
V4L/DVB (5032): Improves some USBVision info messages

Replaces the info statements with printk(KERN_INFO statements.
This will cut down on the useless information which is showing up
 in the kernel messages log file.

Signed-off-by: Dwaine P. Garden <DwaineGarden@rogers.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5025): Cleanup: switch to using msecs_to_jiffies() on bttv
Dmitry Torokhov [Tue, 2 Jan 2007 06:29:48 +0000 (03:29 -0300)]
V4L/DVB (5025): Cleanup: switch to using msecs_to_jiffies() on bttv

PS.: Part of the changes at the original patch were removed due to the changes
done at commit 52c14e794f6ce345343a6b8fc98ea4e0ba2dfce4

Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5028): Tvmixer module_put cleanup
Mariusz Kozlowski [Sun, 7 Jan 2007 13:39:44 +0000 (10:39 -0300)]
V4L/DVB (5028): Tvmixer module_put cleanup

Removes redundant argument check for module_put()

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5027): Cpia module_put cleanup
Mariusz Kozlowski [Sun, 7 Jan 2007 13:36:24 +0000 (10:36 -0300)]
V4L/DVB (5027): Cpia module_put cleanup

No need for redundant argument check for module_put()

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5026): Pvrusb2-hdw kfree cleanup
Mariusz Kozlowski [Sun, 7 Jan 2007 13:33:39 +0000 (10:33 -0300)]
V4L/DVB (5026): Pvrusb2-hdw kfree cleanup

Removes redundant argument check for kfree().

Signed-off-by: Mariusz Kozlowski <m.kozlowski@tuxland.pl>
Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB: MAINTAINERS: tag pvrusb2 list as subscribers-only
Mike Isely [Wed, 3 Jan 2007 21:08:06 +0000 (18:08 -0300)]
V4L/DVB: MAINTAINERS: tag pvrusb2 list as subscribers-only

Posting to the pvrusb2 mailing list is for subscribers only.  Anyone can
subscribe of course.  This is done purely to keep spammers and similar pond
scum from bothering the subscribers of the list.  This patch marks the
pvrusb2 list tag in MAINTAINERS to reflect this situation.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5018): Make usbvision_rvfree() static
Adrian Bunk [Fri, 29 Dec 2006 12:57:26 +0000 (09:57 -0300)]
V4L/DVB (5018): Make usbvision_rvfree() static

usbvision_rvfree() can now become static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5017): DVB: fix compile error
Adrian Bunk [Thu, 28 Dec 2006 15:47:47 +0000 (12:47 -0300)]
V4L/DVB (5017): DVB: fix compile error

This patch fixes the following compile error:
<--  snip  -->
...
  LD      drivers/media/video/built-in.o
drivers/media/video/saa7134/built-in.o:(.data+0x85ec): multiple definition of `ir_rc5_remote_gap'
drivers/media/video/bt8xx/built-in.o:(.data+0x734c): first defined here
drivers/media/video/saa7134/built-in.o:(.data+0x85f0): multiple definition of `ir_rc5_key_timeout'
drivers/media/video/bt8xx/built-in.o:(.data+0x7350): first defined here
make[4]: *** [drivers/media/video/built-in.o] Error 1
<--  snip  -->
Since this variables were needlessly global, this patch implements the
trivial fix of making them static.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5015): Add support for more Encore TV cards
Juan Pablo Sormani [Wed, 27 Dec 2006 15:46:36 +0000 (12:46 -0300)]
V4L/DVB (5015): Add support for more Encore TV cards

Signed-off-by: Juan Pablo Sormani <sorman@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5012a): Remove some unused code from kernel mainstream
Mauro Carvalho Chehab [Thu, 15 Feb 2007 00:55:53 +0000 (22:55 -0200)]
V4L/DVB (5012a): Remove some unused code from kernel mainstream

There are some long time unused code under some media driver source files.
There's no need of keeping it at mainstream.
Those unused code will remain available at V4L/DVB master tree and also at
kernel history.

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (5011): DVB: Remove unneeded void * casts in ttpci/av7110
Tobias Klauser [Tue, 26 Dec 2006 10:33:48 +0000 (07:33 -0300)]
V4L/DVB (5011): DVB: Remove unneeded void * casts in ttpci/av7110

The patch removes unneeded void * casts for the following (void *) pointers:
- struct file: private_data
- struct dvb_device: priv
- struct dvb_demux: priv
- struct dvb_adapter: priv
The patch also contains some whitespace and coding style cleanups in the
relevant areas.

Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4999): [PATCH] Cablestar2 support
Antti Seppälä [Wed, 20 Dec 2006 14:10:35 +0000 (11:10 -0300)]
V4L/DVB (4999): [PATCH] Cablestar2 support

This patch changes the initialization of alps tdee4 tuner in
flexcop-fe-tuner.c to match what is used in the old driver that was
written specifically for Cablestar cards by Patrick Boettcher. This
patch should make Cablestar2 work again with recent dvb drivers without
breaking other stv0297 based cards.

Signed-off-by: Antti Seppala <ajhseppa@niksula.hut.fi>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4998): [PATCH] DIB3000MC and NOVA T USB2 #2
Mario Rossi [Wed, 20 Dec 2006 13:54:30 +0000 (10:54 -0300)]
V4L/DVB (4998): [PATCH] DIB3000MC and NOVA T USB2 #2

Second part of the patch to make the autosearch work again with DiB3000P/MC.

Signed-off-by: Mario Rossi <mariofutire@googlemail.com>
Signed-off-by: Patrick Boettcher <pb@linuxtv.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4993): Updated cardlist to reflect the newly added saa7134 board
Mauro Carvalho Chehab [Wed, 20 Dec 2006 12:53:09 +0000 (09:53 -0300)]
V4L/DVB (4993): Updated cardlist to reflect the newly added saa7134 board

Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4989): Saa7134: add support for the Encore ENL-TV
Steven Walter [Wed, 20 Dec 2006 12:29:09 +0000 (09:29 -0300)]
V4L/DVB (4989): Saa7134: add support for the Encore ENL-TV

Add a board definition for the Encore ENL-TV card, and
adds its PCI subdevice to the ID table.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4987): Improve cx2341x documentation
Hans Verkuil [Wed, 20 Dec 2006 09:50:18 +0000 (06:50 -0300)]
V4L/DVB (4987): Improve cx2341x documentation

Document the program index table format, removed unused interrupt documentation
and improve the documentation regarding the audio mode (stereo/joint/dual/mono).

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4986): Removed unimplemented cx2341x API commands
Hans Verkuil [Tue, 19 Dec 2006 01:52:21 +0000 (22:52 -0300)]
V4L/DVB (4986): Removed unimplemented cx2341x API commands

The commands CX2341X_DEC_SET_AUDIO_OUTPUT, CX2341X_DEC_SET_AV_DELAY and
CX2341X_ENC_SET_3_2_PULLDOWN are not implemented in the Conexant firmware.
So these commands are removed. This also means that the V4L2_CID_MPEG_VIDEO_PULLDOWN
control in cx2341x.c and pvrusb2-hdw.c is removed.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4985): Update cx2341x documentation.
Hans Verkuil [Tue, 19 Dec 2006 01:43:36 +0000 (22:43 -0300)]
V4L/DVB (4985): Update cx2341x documentation.

Removed a few unimplemented commands. Added a note for a few fields that are
not implemented in the firmware, and clarified several issues around reverse
playback.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4981): Update cx2341x documentation.
Hans Verkuil [Mon, 18 Dec 2006 16:06:30 +0000 (13:06 -0300)]
V4L/DVB (4981): Update cx2341x documentation.

Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4962): Add the Composite over S-Video input on the Asus P7131 Dual
Hermann Pitton [Mon, 11 Dec 2006 00:08:03 +0000 (21:08 -0300)]
V4L/DVB (4962): Add the Composite over S-Video input on the Asus P7131 Dual

This makes a second CVBS input available.

Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoV4L/DVB (4961): Add support for the ASUS P7131 remote control
Hermann Pitton [Fri, 8 Dec 2006 00:45:28 +0000 (21:45 -0300)]
V4L/DVB (4961): Add support for the ASUS P7131 remote control

Besides adding the board specific code, this patch moves
the RC5 decoding code from bt8xx to ir-functions.c to make it available
for all drivers.

Signed-off-by: Marc Fargas <telenieko.telenieko.com>
Signed-off-by: Hermann Pitton <hermann-pitton@arcor.de>
Signed-off-by: Hartmut Hackmann <hartmut.hackmann@t-online.de>
Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
17 years agoLinux 2.6.21-rc1 v2.6.21-rc1
Linus Torvalds [Wed, 21 Feb 2007 04:32:30 +0000 (20:32 -0800)]
Linux 2.6.21-rc1

17 years ago[PATCH] i810fb: fix i810_check_params section mismatch
Jean Delvare [Tue, 20 Feb 2007 21:58:22 +0000 (13:58 -0800)]
[PATCH] i810fb: fix i810_check_params section mismatch

WARNING: drivers/video/i810/i810fb.o - Section mismatch: reference
to .init.data: from .text between 'i810_check_params' (at offset
0x1123) and 'encode_fix'

yres cannot be declared __devinitdata as it is used in
i810_check_params(), which isn't __devinit.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fb: SM501 framebuffer driver
Ben Dooks [Tue, 20 Feb 2007 21:58:21 +0000 (13:58 -0800)]
[PATCH] fb: SM501 framebuffer driver

Driver for the Silicon Motion SM501 multifunction device framebuffer
subsystem.

This driver supports both the CRT and LCD panel heads, with some simple
acceleration for the cursor plotting and support for screen panning.  There
is no current support for bitblt/drawing engines, which should be added at
a later date.

This has been tested on a number of configurations, including PCI and
generic-bus, on PPC, ARM and SH4

[akpm@linux-foundation.org: fix warnings]
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Vincent Sanders <vince@arm.linux.org.u.>
Acked-by: James Simmons <jsimmons@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] GPIO API: SA1100 wrapper cleanup
Philipp Zabel [Tue, 20 Feb 2007 21:58:20 +0000 (13:58 -0800)]
[PATCH] GPIO API: SA1100 wrapper cleanup

Based on the discussion last december (http://lkml.org/lkml/2006/12/20/241),
this patch
  - adds gpio_direction_input/output functions to
    generic.c instead of making them inline,
  - fixes comment and includes and uses inline functions
    instead of macros in gpio.h

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] GPIO API: S3C2410 wrapper cleanup
Philipp Zabel [Tue, 20 Feb 2007 21:58:20 +0000 (13:58 -0800)]
[PATCH] GPIO API: S3C2410 wrapper cleanup

this one adds an #include <asm/arch/regs-gpio.h>.
Tested by Roman Moravcik on s3c2440.

Based on the discussion last december
(http://lkml.org/lkml/2006/12/20/243), this patch
 - fixes comment and includes in gpio.h
 - adds the gpio_to_irq definition for S3C2400
 - includes asm/arch/regs-gpio.h for pin direction
   definitions

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] spi_s3c2410_gpio.c spi mode 2 and 3 support
Harald Welte [Tue, 20 Feb 2007 21:58:19 +0000 (13:58 -0800)]
[PATCH] spi_s3c2410_gpio.c spi mode 2 and 3 support

Add transfer modes 2 and 3 to the S3C24XX gpio SPI driver

Signed-off-by: Harald Welte <laforge@openmoko.org>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] SPI controller build/warning fixes
David Brownell [Tue, 20 Feb 2007 21:58:19 +0000 (13:58 -0800)]
[PATCH] SPI controller build/warning fixes

The signature of the per-device cleanup() routine changed to remove its
const-ness.  Three new SPI controller drivers now need that change, to
eliminate build warnings.

This also fixes a build bug with atmel_spi on AT91 systems.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] parport_pc: fix parport_pc_probe_port section warning
Jean Delvare [Tue, 20 Feb 2007 21:58:18 +0000 (13:58 -0800)]
[PATCH] parport_pc: fix parport_pc_probe_port section warning

WARNING: drivers/parport/parport_pc.o - Section mismatch: reference
to .init.text: from .text between 'parport_pc_probe_port' (at offset
0x14f7) and 'parport_pc_unregister_port'

parport_dma_probe() cannot be declared __devinit as it is called
from parport_pc_probe_port() which isn't.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] lockdep: annotate BLKPG_DEL_PARTITION
Peter Zijlstra [Tue, 20 Feb 2007 21:58:18 +0000 (13:58 -0800)]
[PATCH] lockdep: annotate BLKPG_DEL_PARTITION

>=============================================
>[ INFO: possible recursive locking detected ]
>2.6.19-1.2909.fc7 #1
>---------------------------------------------
>anaconda/587 is trying to acquire lock:
> (&bdev->bd_mutex){--..}, at: [<c05fb380>] mutex_lock+0x21/0x24
>
>but task is already holding lock:
> (&bdev->bd_mutex){--..}, at: [<c05fb380>] mutex_lock+0x21/0x24
>
>other info that might help us debug this:
>1 lock held by anaconda/587:
> #0:  (&bdev->bd_mutex){--..}, at: [<c05fb380>] mutex_lock+0x21/0x24
>
>stack backtrace:
> [<c0405812>] show_trace_log_lvl+0x1a/0x2f
> [<c0405db2>] show_trace+0x12/0x14
> [<c0405e36>] dump_stack+0x16/0x18
> [<c043bd84>] __lock_acquire+0x116/0xa09
> [<c043c960>] lock_acquire+0x56/0x6f
> [<c05fb1fa>] __mutex_lock_slowpath+0xe5/0x24a
> [<c05fb380>] mutex_lock+0x21/0x24
> [<c04d82fb>] blkdev_ioctl+0x600/0x76d
> [<c04946b1>] block_ioctl+0x1b/0x1f
> [<c047ed5a>] do_ioctl+0x22/0x68
> [<c047eff2>] vfs_ioctl+0x252/0x265
> [<c047f04e>] sys_ioctl+0x49/0x63
> [<c0404070>] syscall_call+0x7/0xb

Annotate BLKPG_DEL_PARTITION's bd_mutex locking and add a little comment
clarifying the bd_mutex locking, because I confused myself and initially
thought the lock order was wrong too.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Neil Brown <neilb@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] drivers/isdn/gigaset/: build asyncdata.o into the gigaset module
Adrian Bunk [Tue, 20 Feb 2007 21:58:17 +0000 (13:58 -0800)]
[PATCH] drivers/isdn/gigaset/: build asyncdata.o into the gigaset module

  LD      drivers/isdn/gigaset/built-in.o
drivers/isdn/gigaset/ser_gigaset.o: In function `gigaset_m10x_send_skb':
(.text+0xe50): multiple definition of `gigaset_m10x_send_skb'
drivers/isdn/gigaset/usb_gigaset.o:(.text+0x0): first defined here
drivers/isdn/gigaset/ser_gigaset.o: In function `gigaset_m10x_input':
(.text+0x1121): multiple definition of `gigaset_m10x_input'
drivers/isdn/gigaset/usb_gigaset.o:(.text+0x2d1): first defined here
make[4]: *** [drivers/isdn/gigaset/built-in.o] Error 1

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Cc: Tilman Schmidt <tilman@imap.cc>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] remove modpost false warnings on ARM
David Brownell [Tue, 20 Feb 2007 21:58:16 +0000 (13:58 -0800)]
[PATCH] remove modpost false warnings on ARM

This patch stops "modpost" from issuing erroneous modpost warnings on ARM
builds, which it's been doing since since maybe last summer.  A canonical
example would be driver method table entries:

  WARNING: <path> - Section mismatch: reference to .exit.text:<name>_remove
from .data after '$d' (at offset 0x4)

That "$d" symbol is generated by tools conformant with ARM ABI specs; in
this case it's a symbol **in the middle of** a "<name>_driver" struct.

The erroneous warnings appear to be issued because "modpost" whitelists
references from "<name>_driver" data into init and exit sections ...  but
doesn't know should also include those "$d" mapping symbols, which are not
otherwise associated with "<name>_driver" symbols.

This patch prevents the modpost symbol lookup code from ever returning
those mapping symbols, so it will return a whitelisted symbol instead.
Then things work as expected.

Now to revert various code-bloating "fixes" that got merged because of this
modpost bug....

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Roman Zippel <zippel@linux-m68k.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] GPIO API: PXA wrapper cleanup
Philipp Zabel [Tue, 20 Feb 2007 21:58:15 +0000 (13:58 -0800)]
[PATCH] GPIO API: PXA wrapper cleanup

Based on the discussion last december (http://lkml.org/lkml/2006/12/20/242),
this patch:

  - moves the PXA_LAST_GPIO check into pxa_gpio_mode
  - fixes comment and includes in gpio.h
  - replaces the gpio_set/get_value macros with inline
    functions and adds a non-inline version to avoid
    code explosion when gpio is not a constant.

Signed-off-by: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Nicolas Pitre <nico@cam.org>
Cc: Russell King <rmk@arm.linux.org.uk>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] at91_rtc updates
David Brownell [Tue, 20 Feb 2007 21:58:14 +0000 (13:58 -0800)]
[PATCH] at91_rtc updates

Various bug fixes to the at91rm9200 RTC:

 - alarm:  setalarm() should pay attention to the "enabled" flag

 - init:  cleaner handling of the wakeup flags, which cpu init should
   really have set up.  Doing it here is just a workaround.

 - linkage:  since the at91_rtc driver probe() routine is in the init
   section, it should use platform_driver_probe() instead of leaving
   that pointer around in the driver struct after init section removal.

 - linkage:  likewise, remove() belongs in the exit section.

Among other things, the init and alarm changes ensure that this driver
handles the new sysfs "wakealarm" attribute properly.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] rtc-sa1100 rtc_wklarm.enabled bugfixes
David Brownell [Tue, 20 Feb 2007 21:58:13 +0000 (13:58 -0800)]
[PATCH] rtc-sa1100 rtc_wklarm.enabled bugfixes

Some rtc-sa1100 bugfixes:

 - The read_alarm() method reports the rtc_wkalrm.enabled field properly.
   This patch is already in the handhelds.org tree.

 - And the set_alarm() method now handles that flag correctly, rather than
   making mismatched {en,dis}able_irq_wake() calls, which trigger runtime
   warning messages.  (Those calls are best made in suspend/resume methods.)

Note that while this SA1100/PXA RTC is fully capable of waking those ARM
processors from sleep states, that mechanism isn't properly supported on
either processor family, or in this driver.  Some boards have board-specific
PM glue providing partial workarounds for the weak generic PM support.

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: Alessandro Zummo <a.zummo@towertech.it>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] update Doc/oops-tracing.txt for TAINT_USER
Randy Dunlap [Tue, 20 Feb 2007 21:58:12 +0000 (13:58 -0800)]
[PATCH] update Doc/oops-tracing.txt for TAINT_USER

Add TAINT_USER description to Tainted flags in oops-tracing.txt.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Missing __user in pointer referenced within copy_from_user
Glauber de Oliveira Costa [Tue, 20 Feb 2007 21:58:12 +0000 (13:58 -0800)]
[PATCH] Missing __user in pointer referenced within copy_from_user

Pointers to user data should be marked with a __user hint.  This one is
missing.

Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] genalloc warning fixes
Andrew Morton [Tue, 20 Feb 2007 21:58:12 +0000 (13:58 -0800)]
[PATCH] genalloc warning fixes

lib/genalloc.c: In function 'gen_pool_alloc':
lib/genalloc.c:151: warning: passing argument 2 of '__set_bit' from incompatible pointer type
lib/genalloc.c: In function 'gen_pool_free':
lib/genalloc.c:190: warning: passing argument 2 of '__clear_bit' from incompatible pointer type

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] affs: implement ->drop_inode
Christoph Hellwig [Tue, 20 Feb 2007 21:58:11 +0000 (13:58 -0800)]
[PATCH] affs: implement ->drop_inode

affs wants to truncate the inode when the last user goes away, currently it
does that through a potentially racy i_count check in ->put_inode.  But we
already have a method that's called just after the we dropped the last
reference, ->drop_inode.  This patch implements affs_drop_inode to take
advantage of this.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: Roman Zippel <zippel@linux-m68k.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] autofs4: check for directory re-create in lookup
Ian Kent [Tue, 20 Feb 2007 21:58:10 +0000 (13:58 -0800)]
[PATCH] autofs4: check for directory re-create in lookup

This problem was identified and fixed some time ago by Jeff Moyer but it fell
through the cracks somehow.

It is possible that a user space application could remove and re-create a
directory during a request.  To avoid returning a failure from lookup
incorrectly when our current dentry is unhashed we need to check if another
positive, hashed dentry matching this one exists and if so return it instead
of a fail.

Signed-off-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] autofs4: fix another race between mount and expire
Ian Kent [Tue, 20 Feb 2007 21:58:10 +0000 (13:58 -0800)]
[PATCH] autofs4: fix another race between mount and expire

Jeff Moyer has identified a race between mount and expire.

What happens is that during an expire the situation can arise that a directory
is removed and another lookup is done before the expire issues a completion
status to the kernel module.  In this case, since the the lookup gets a new
dentry, it doesn't know that there is an expire in progress and when it posts
its mount request, matches the existing expire request and waits for its
completion.  ENOENT is then returned to user space from lookup (as the dentry
passed in is now unhashed) without having performed the mount request.

The solution used here is to keep track of dentrys in this unhashed state and
reuse them, if possible, in order to preserve the flags.  Additionally, this
infrastructure will provide the framework for the reintroduction of caching of
mount fails removed earlier in development.

Signed-off-by: Ian Kent <raven@themaw.net>
Acked-by: Jeff Moyer <jmoyer@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] autofs4: header file update
Ian Kent [Tue, 20 Feb 2007 21:58:09 +0000 (13:58 -0800)]
[PATCH] autofs4: header file update

The current header file definitions for autofs version 5 have caused a couple
of problems for application builds downstream.

This fixes the problem by separating the definitions.

Signed-off-by: Ian Kent <raven@themaw.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fs: fix nobh data leak
Nick Piggin [Tue, 20 Feb 2007 21:58:09 +0000 (13:58 -0800)]
[PATCH] fs: fix nobh data leak

nobh_prepare_write leaks data similarly to how simple_prepare_write did. Fix
by not marking the page uptodate until nobh_commit_write time. Again, this
could break weird use-cases, but none appear to exist in the tree.

We can safely remove the set_page_dirty, because as the comment says,
nobh_commit_write does set_page_dirty. If a filesystem wants to allocate
backing store for a page dirtied via mmap, page_mkwrite is the suggested
approach.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] fs: fix libfs data leak
Nick Piggin [Tue, 20 Feb 2007 21:58:08 +0000 (13:58 -0800)]
[PATCH] fs: fix libfs data leak

simple_prepare_write leaks uninitialised kernel data.  This happens because
the it leaves an uninitialised "hole" over the part of the page that the
write is expected to go to.  This is fine, but it then marks the page
uptodate, which means a concurrent read can come in and copy the
uninitialised memory into userspace before it written to.

Fix it by simply marking it uptodate in simple_commit_write instead, after
the hole has been filled in.  This could theoretically break an fs that
uses simple_prepare_write and not simple_commit_write, and that relies on
the incorrect simple_prepare_write behaviour.  Luckily, none of those
exists in the tree.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] loosen dependancy on rtc cmos
Dave Jones [Tue, 20 Feb 2007 21:58:07 +0000 (13:58 -0800)]
[PATCH] loosen dependancy on rtc cmos

This option is useful for all of the X86 subarchs afaik (and especially
X86_GENERICARCH).

Signed-off-by: Dave Jones <davej@redhat.com>
Acked-by: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] PPC64 Kdump documentation update
Simon Horman [Tue, 20 Feb 2007 21:58:07 +0000 (13:58 -0800)]
[PATCH] PPC64 Kdump documentation update

Patch from Mohan Kumar M to add the ppc64 portions of the kdump
documentation.

http://thread.gmane.org/gmane.linux.kernel/481689/focus=3375

Cc: Mohan Kumar M <mohan@in.ibm.com>
Cc: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Simon Horman <horms@verge.net.au>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] Update OSDL/Linux-Foundation maintainer addresses
Simon Horman [Tue, 20 Feb 2007 21:58:06 +0000 (13:58 -0800)]
[PATCH] Update OSDL/Linux-Foundation maintainer addresses

The patch below updates MAINTAIER address
  Individuals (Only Andrew :): osdl.org -> linux-foundation.org
  Lists:                       osdl.org -> lists.osdl.org

I assume the latter will change at some stage, but at least
with this change the osdl/linux-foundation lists are consistent.

Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] 8250: Fix GCC4 signed/unsigned mismatch warning
Thomas Koeller [Tue, 20 Feb 2007 21:58:05 +0000 (13:58 -0800)]
[PATCH] 8250: Fix GCC4 signed/unsigned mismatch warning

Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] cdrom: use unsigned bitfields
Randy Dunlap [Tue, 20 Feb 2007 21:58:05 +0000 (13:58 -0800)]
[PATCH] cdrom: use unsigned bitfields

Fix 23 of these sparse warnings on x86_64 allmodconfig:
include/linux/cdrom.h:942:19: error: dubious bitfield without explicit
`signed' or `unsigned'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Cc: Jens Axboe <axboe@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[PATCH] tty: use NULL for ptrs
Randy Dunlap [Tue, 20 Feb 2007 21:58:05 +0000 (13:58 -0800)]
[PATCH] tty: use NULL for ptrs

Fix sparse warning in tty_io:
drivers/char/tty_io.c:1536:34: warning: Using plain integer as NULL pointer

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>