29 Oct, 2010

1 commit

  • * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: (505 commits)
    [media] af9015: Fix max I2C message size when used with tda18271
    [media] IR: initialize ir_raw_event in few more drivers
    [media] Guard a divide in v4l1 compat layer
    [media] imon: fix nomouse modprobe option
    [media] imon: remove redundant change_protocol call
    [media] imon: fix my egregious brown paper bag w/rdev/idev split
    [media] cafe_ccic: Configure ov7670 correctly
    [media] ov7670: allow configuration of image size, clock speed, and I/O method
    [media] af9015: support for DigitalNow TinyTwin v3 [1f4d:9016]
    [media] af9015: map DigitalNow TinyTwin v2 remote
    [media] DigitalNow TinyTwin remote controller
    [media] af9015: RC fixes and improvements
    videodev2.h.xml: Update to reflect the latest changes at videodev2.h
    [media] v4l: document new Bayer and monochrome pixel formats
    [media] DocBook/v4l: Add missing formats used on gspca cpia1 and sn9c2028
    [media] firedtv: add parameter to fake ca_system_ids in CA_INFO
    [media] tm6000: fix a macro coding style issue
    tm6000: Remove some ugly debug code
    [media] Nova-S-Plus audio line input
    [media] [RFC,1/1] V4L2: Use new CAP bits in existing RDS capable drivers
    ...

    Linus Torvalds
     

25 Oct, 2010

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (75 commits)
    Input: wacom - specify Cinitq supported tools
    Input: ab8500-ponkey - fix IRQ freeing in error path
    Input: adp5588-keys - use more obvious i2c_device_id name string
    Input: ad7877 - switch to using threaded IRQ
    Input: ad7877 - use attribute group to control visibility of attributes
    Input: serio - add support for PS2Mult multiplexer protocol
    Input: wacom - properly enable runtime PM
    Input: ad7877 - filter events where pressure is beyond the maximum
    Input: ad7877 - implement EV_KEY:BTN_TOUCH reporting
    Input: ad7877 - implement specified chip select behavior
    Input: hp680_ts_input - use cancel_delayed_work_sync()
    Input: mousedev - correct lockdep annotation
    Input: ads7846 - switch to using threaded IRQ
    Input: serio - support multiple child devices per single parent
    Input: synaptics - simplify pass-through port handling
    Input: add ROHM BU21013 touch panel controller support
    Input: omap4-keypad - wake-up on events & long presses
    Input: omap4-keypad - fix interrupt line configuration
    Input: omap4-keypad - SYSCONFIG register configuration
    Input: omap4-keypad - use platform device helpers
    ...

    Linus Torvalds
     

23 Oct, 2010

4 commits


21 Oct, 2010

34 commits

  • Add a driver for the video capture port on VIA integrated chipsets. This
    version has a remaining OLPCism or two and expects to be talking to an
    ov7670; those can be improved as the need arises.

    This work was supported by the One Laptop Per Child project.
    Thanks to Laurent Pinchart for a number of useful comments.

    Cc: Florian Tobias Schandinat
    Signed-off-by: Jonathan Corbet
    Signed-off-by: Mauro Carvalho Chehab

    Jonathan Corbet
     
  • Add new event types for timeout & carrier report
    Move timeout handling from ir_raw_event_store_with_filter to
    ir-lirc-codec, where it is really needed.
    Now lirc bridge ensures proper gap handling.
    Extend lirc bridge for carrier & timeout reports

    Note: all new ir_raw_event variables now should be initialized
    like that: DEFINE_IR_RAW_EVENT(ev);

    To clean an existing event, use init_ir_raw_event(&ev);

    Signed-off-by: Maxim Levitsky
    Acked-by: Jarod Wilson
    Signed-off-by: Mauro Carvalho Chehab

    Maxim Levitsky
     
  • Patch add support of TwinHan 1027 DVB-S card.

    Refreshed version of https://patchwork.kernel.org/patch/79753/ patch.
    (adapted for the new IR system), still works.

    DVB-S support come from a patch originally authored by
    Manu Abraham (abraham.manu@gmail.com).
    IR Port support were added by Sergey.

    Cc: Manu Abraham
    Signed-off-by: Mauro Carvalho Chehab

    Sergey Ivanov
     
  • Add an I2C/v4l2-subdev driver for Siliconfile SR030PC30 VGA
    camera sensor with Image Signal Processor. SR030PC30 is
    the low resolution camera sensor on Samsung Aquila boards.

    Signed-off-by: Sylwester Nawrocki
    Signed-off-by: Kyungmin Park
    Signed-off-by: Mauro Carvalho Chehab

    Sylwester Nawrocki
     
  • Add a video device driver per each FIMC entity to support
    the camera capture input mode. Video capture node is registered
    only if CCD sensor data is provided through driver's platfrom data
    and board setup code.

    Signed-off-by: Sylwester Nawrocki
    Signed-off-by: Kyungmin Park
    Reviewed-by: Marek Szyprowski
    Signed-off-by: Mauro Carvalho Chehab

    Sylwester Nawrocki
     
  • Chip identification register contains the value 0x74.

    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Mauro Carvalho Chehab

    Guennadi Liakhovetski
     
  • This patch provides a V4L2 SoC Camera driver for OV6650 camera sensor, found
    on OMAP1 SoC based Amstrad Delta videophone.

    Since I have no experience with camera sensors, and the sensor documentation I
    was able to find was not very comprehensive, I left most settings at their
    default (reset) values, except for:
    - those required for proper mediabus parameters and picture geometry and
    format setup,
    - those used by controls.
    Resulting picture quality may be far from perfect, but better than nothing.

    In order to be able to get / set the sensor frame rate from userspace, I
    decided to provide two not yet SoC camera supported operations, g_parm and
    s_parm. These can be used after applying patch 4/6 from this series,
    "SoC Camera: add support for g_parm / s_parm operations".

    Created and tested against linux-2.6.36-rc5 on Amstrad Delta.

    Signed-off-by: Janusz Krzysztofik
    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Mauro Carvalho Chehab

    Janusz Krzysztofik
     
  • This is a V4L2 driver for TI OMAP1 SoC camera interface.

    Both videobuf-dma versions are supported, contig and sg, selectable with a
    module option. The former uses less processing power, but often fails to
    allocate contignuous buffer memory. The latter is free of this problem, but
    generates tens of DMA interrupts per frame. If contig memory allocation ever
    fails, the driver falls back to sg automatically on next open, but still can
    be switched back to contig manually. Both paths work stable for me, even
    under heavy load, on my OMAP1510 based Amstrad Delta videophone, that is the
    oldest, least powerfull OMAP1 implementation.

    The interface generally works in pass-through mode. Since input data byte
    endianess can be swapped, it provides up to two v4l2 pixel formats per each of
    several soc_mbus formats that have their swapped endian counterparts.

    Boards using this driver can provide it with the following platform data:
    - if and what freqency clock is expected by an on-board camera sensor,
    - what is the maximum pixel clock that should be accepted from the sensor,
    - what is the polarity of the sensor provided pixel clock,
    - if the interface GPIO line is connected to a sensor reset/powerdown input
    and what is the input polarity.

    Created and tested against linux-2.6.36-rc5 on Amstrad Delta.

    Signed-off-by: Janusz Krzysztofik
    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Mauro Carvalho Chehab

    Janusz Krzysztofik
     
  • Signed-off-by: Sascha Hauer
    Acked-by: Robert Jarzmik
    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Mauro Carvalho Chehab

    Sascha Hauer
     
  • >From Joris van Rantwijk :

    I tested lirc_serial and found that it works fine.
    Except the LIRC ioctls do not work in my 64-bit-kernel/32-bit-user
    setup. I added compat_ioctl entries in the drivers to fix this.

    While doing so, I noticed inconsistencies in the argument type of
    the LIRC ioctls. All ioctls are declared in lirc.h as having argument
    type __u32, however there are a few places where the driver calls
    get_user/put_user with an unsigned long argument.

    The patch below changes lirc_dev and lirc_serial to use __u32 for all
    ioctl arguments, and adds compat_ioctl entries.
    It should probably also be done in the other low-level drivers,
    but I don't have hardware to test those.

    I've dropped the .compat_ioctl addition from Joris' original patch,
    as I swear the non-compat definition should now work for both 32-bit
    and 64-bit userspace. Technically, I think we still need/want a
    in getting a reply to you).

    Reported-by: Joris van Rantwijk
    Signed-off-by: Jarod Wilson
    Signed-off-by: Mauro Carvalho Chehab

    Jarod Wilson
     
  • Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Rename remote controller driver I added earlier.

    Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Imported from af9015.h. Initial keytable was from
    Jose Alberto Reguero and
    Felipe Morales Moreno

    Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Digittrade DVB-T USB Stick remote controller.
    Imported from af9015.h. Initial keytable was from Alain Kalker

    Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • Imported from af9015.h.
    Initial keytable was from Marc Schneider

    Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • MSI DIGIVOX mini III remote controller. Uses NEC extended 0x61d6.
    This remote seems to be same as rc-kworld-315u.c. Anyhow, add new remote
    since rc-kworld-315u.c lacks NEC extended address byte.

    Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • TerraTec slim remote, 7 rows, 4 columns. Uses NEC extended 0x02bd.

    Signed-off-by: Antti Palosaari
    Signed-off-by: Mauro Carvalho Chehab

    Antti Palosaari
     
  • struct file_operations was made const in the drivers, but not in struct
    lirc_driver:

    drivers/staging/lirc/lirc_it87.c:365: warning: initialization discards qualifiers from pointer target type
    drivers/staging/lirc/lirc_parallel.c:571: warning: initialization discards qualifiers from pointer target type
    drivers/staging/lirc/lirc_serial.c:1073: warning: initialization discards qualifiers from pointer target type
    drivers/staging/lirc/lirc_sir.c:482: warning: initialization discards qualifiers from pointer target type
    drivers/staging/lirc/lirc_zilog.c:1284: warning: assignment discards qualifiers from pointer target type

    Signed-off-by: Geert Uytterhoeven
    Acked-by: Jarod Wilson
    Signed-off-by: Mauro Carvalho Chehab

    Geert Uytterhoeven
     
  • This function is an internal API and belongs in v4l2-common.h, not
    videodev.h. The return pointer and probe argument should be const as well.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • Multiple user-space application instances can open the same video device, but
    it only makes sense for one of them to manage the videobuffer queue and set
    video format of the device. Restrict soc-camera respectively.

    Signed-off-by: Guennadi Liakhovetski
    Signed-off-by: Mauro Carvalho Chehab

    Guennadi Liakhovetski
     
  • videobuf_waiton() must unlock and relock ext_lock if it has to wait.
    For that to happen it needs the videobuf_queue pointer.

    Don't attempt to unlock/relock q->ext_lock unless it was locked in the
    first place.

    vb->state has to be protected by a spinlock to be safe.

    This patch is based on code from Mauro Carvalho Chehab .

    [mchehab@redhat.com: add extra argument to a few missing places]
    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • Add an ext_lock argument to the videobuf init functions. This allows
    drivers to pass the vdev->lock pointer (or any other externally held lock)
    to videobuf. For now all drivers just pass NULL.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • Currently videobuf uses the vb_lock mutex to lock its data structures.
    But this locking will (optionally) move into the v4l2 core, which means
    that in that case vb_lock shouldn't be used since the external lock is already
    held.

    Prepare for this by adding a pointer to such an external mutex and
    don't lock if that pointer is set.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • Drivers can optionally set a pointer to a mutex in struct video_device.
    The core will use that to lock before calling open, read, write, unlocked_ioctl,
    poll, mmap or release.

    Updated the documentation as well and ensure that v4l2-event knows about the
    lock: it will unlock it before doing a blocking wait on an event and relock it
    afterwards.

    Ensure that the 'video_is_registered' check is done when the lock is held:
    a typical disconnect will take the lock as well before unregistering the
    device nodes, so to prevent race conditions the video_is_registered check
    should also be done with the lock held.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • The get_unmapped_area file operation is unused. Remove.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • The imon driver currently reimplements its own version of ir_keyup
    (along with key release timer functionality also already present in the
    core IR code). A follow-up imon patch will make use of ir_keyup and the
    IR stack's key release code.

    Trivial extraction from David Härdeman's pending rc-core merge and
    device interface abstraction patchset to facilitate merging a patch
    based on his imon input dev split patch ahead of the larger churn, which
    is slated for post-2.6.37-rc1 (after Dmitry's large keycode patches are
    merged in mainline).

    Signed-off-by: Jarod Wilson
    Signed-off-by: Mauro Carvalho Chehab

    Jarod Wilson
     
  • The only reason for keeping I2C_HW_SAA7134 is to allow setting a
    per-device polling interval. Just move this info to the platform
    data, allowing drivers to change it per device, where needed.

    Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • Signed-off-by: Mauro Carvalho Chehab

    Mauro Carvalho Chehab
     
  • The include/media/v4l2-i2c-drv.h header was used to be able to compile drivers
    in the v4l-dvb hg repository for legacy kernels (mainly pre-2.6.26) without
    creating an #ifdef mess.

    The hg repository dropped support for kernels < 2.6.26 so we can remove this
    header. All i2c drivers that used it have now been converted to use proper
    i2c code. The header was a hack, but it did its job well. So I would call
    this an honorable removal. :-)

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil
     
  • Remove the vtx (aka videotext aka teletext) API from the v4l2 core.
    This API was scheduled for removal in kernel 2.6.35.

    The vtx device nodes have been superseded by vbi device nodes
    for many years. No applications exist that use the vtx support.
    Of the two i2c drivers that actually support this API the saa5249
    has been impossible to use for a year now and no known hardware
    that supports this device exists. The saa5246a is theoretically
    supported by the old mxb boards, but it never actually worked.

    In summary: there is no hardware that can use this API and there
    are no applications actually implementing this API.

    The vtx support still reserves minors 192-223 and we would really
    like to reuse those for upcoming new functionality. In the unlikely
    event that new hardware appears that wants to use the functionality
    provided by the vtx API, then that functionality should be build
    around the sliced VBI API instead.

    Signed-off-by: Hans Verkuil
    Signed-off-by: Mauro Carvalho Chehab

    Hans Verkuil