25 Feb, 2013

1 commit

  • Pull media updates from Mauro Carvalho Chehab:

    - Some cleanups at V4L2 documentation

    - new drivers: ts2020 frontend, ov9650 sensor, s5c73m3 sensor,
    sh-mobile veu mem2mem driver, radio-ma901, davinci_vpfe staging
    driver

    - Lots of missing MAINTAINERS entries added

    - several em28xx driver improvements, including its conversion to
    videobuf2

    - several fixups on drivers to make them to better comply with the API

    - DVB core: add support for DVBv5 stats, allowing the implementation of
    statistics for new standards like ISDB

    - mb86a20s: add statistics to the driver

    - lots of new board additions, cleanups, and driver improvements.

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (596 commits)
    [media] media: Add 0x3009 USB PID to ttusb2 driver (fixed diff)
    [media] rtl28xxu: Add USB IDs for Compro VideoMate U620F
    [media] em28xx: add usb id for terratec h5 rev. 3
    [media] media: rc: gpio-ir-recv: add support for device tree parsing
    [media] mceusb: move check earlier to make smatch happy
    [media] radio-si470x doc: add info about v4l2-ctl and sox+alsa
    [media] staging: media: Remove unnecessary OOM messages
    [media] sh_vou: Use vou_dev instead of vou_file wherever possible
    [media] sh_vou: Use video_drvdata()
    [media] drivers/media/platform/soc_camera/pxa_camera.c: use devm_ functions
    [media] mt9t112: mt9t111 format set up differs from mt9t112
    [media] sh-mobile-ceu-camera: fix SHARPNESS control default
    Revert "[media] fc0011: Return early, if the frequency is already tuned"
    [media] cx18/ivtv: fix regression: remove __init from a non-init function
    [media] em28xx: fix analog streaming with USB bulk transfers
    [media] stv0900: remove unnecessary null pointer check
    [media] fc0011: Return early, if the frequency is already tuned
    [media] fc0011: Add some sanity checks and cleanups
    [media] fc0011: Fix xin value clamping
    Revert "[media] [PATH,1/2] mxl5007 move reset to attach"
    ...

    Linus Torvalds
     

21 Feb, 2013

2 commits


19 Feb, 2013

1 commit

  • The ThingM blink(1) is an open source hardware USB RGB LED. It contains
    an internal EEPROM, allowing to configure up to 12 light patterns. A
    light pattern is a RGB color plus a fade time. This driver registers a
    LED class instance with additional sysfs attributes to support basic
    functions such as setting RGB colors, fade and playing. Other functions
    are still accessible through the hidraw interface.

    At this time, the only documentation for the device is the firmware
    source code from ThingM, plus a few schematics. They are available at:

    https://github.com/todbot/blink1

    This patch is version 3. It updates the name of the source file, the
    driver and the led sysfs entry, according to comments from Jiri Kosina
    and Simon Wood.

    Signed-off-by: Vivien Didelot
    Signed-off-by: Jiri Kosina

    Vivien Didelot
     

18 Feb, 2013

2 commits


05 Feb, 2013

1 commit


31 Jan, 2013

1 commit


17 Jan, 2013

1 commit

  • Add support for another gamepad to the hid-pl driver. The "color rumble pad
    P580" marketed using the "Saitek" brand in Germany, and using a USB Vendor ID
    attributed to "Jess" seems to be electronically identical to the 4-field
    variant of the "Green Asia" gamepad.

    The pad has been tested to support rumble strengths up to 255, not just 127.

    Signed-off-by: Michael Karcher
    Signed-off-by: Jiri Kosina

    Michael Karcher
     

16 Jan, 2013

1 commit

  • Some Vaio desktop computers, among them the VGC-LN51JGB multimedia PC, have
    a RF receiver, multi-interface USB device 054c:0374, that is used to connect
    a wireless keyboard and a wireless mouse.

    The keyboard works flawlessly, but the mouse (VGP-WMS3 in my case) does not
    seem to be generating any pointer events. The problem is that the mouse pointer
    is wrongly declared as a constant non-data variable in the report descriptor
    (see lsusb and usbhid-dump output below), with the consequence that it is
    ignored by the HID code.

    Add this device to the have-special-driver list and fix up the report
    descriptor in the Sony-specific driver which happens to already have a fixup
    for a similar firmware bug.

    # lsusb -vd 054C:0374
    Bus 003 Device 002: ID 054c:0374 Sony Corp.
    Device Descriptor:
    bLength 18
    bDescriptorType 1
    bcdUSB 2.00
    bDeviceClass 0 (Defined at Interface level)
    bDeviceSubClass 0
    bDeviceProtocol 0
    bMaxPacketSize0 8
    idVendor 0x054c Sony Corp.
    idProduct 0x0374
    iSerial 0
    [...]
    Interface Descriptor:
    bLength 9
    bDescriptorType 4
    bInterfaceNumber 1
    bAlternateSetting 0
    bNumEndpoints 1
    bInterfaceClass 3 Human Interface Device
    bInterfaceSubClass 1 Boot Interface Subclass
    bInterfaceProtocol 2 Mouse
    iInterface 2 RF Receiver
    [...]
    Report Descriptor: (length is 100)
    [...]
    Item(Global): Usage Page, data= [ 0x01 ] 1
    Generic Desktop Controls
    Item(Local ): Usage, data= [ 0x30 ] 48
    Direction-X
    Item(Local ): Usage, data= [ 0x31 ] 49
    Direction-Y
    Item(Global): Report Count, data= [ 0x02 ] 2
    Item(Global): Report Size, data= [ 0x08 ] 8
    Item(Global): Logical Minimum, data= [ 0x81 ] 129
    Item(Global): Logical Maximum, data= [ 0x7f ] 127
    Item(Main ): Input, data= [ 0x07 ] 7
    Constant Variable Relative No_Wrap Linear
    Preferred_State No_Null_Position Non_Volatile Bitfield

    # usbhid-dump
    003:002:001:DESCRIPTOR 1357910009.758544
    05 01 09 02 A1 01 05 01 09 02 A1 02 85 01 09 01
    A1 00 05 09 19 01 29 05 95 05 75 01 15 00 25 01
    81 02 75 03 95 01 81 01 05 01 09 30 09 31 95 02
    75 08 15 81 25 7F 81 07 A1 02 85 01 09 38 35 00
    45 00 15 81 25 7F 95 01 75 08 81 06 C0 A1 02 85
    01 05 0C 15 81 25 7F 95 01 75 08 0A 38 02 81 06
    C0 C0 C0 C0

    Cc: linux-input@vger.kernel.org
    Cc: linux-usb@vger.kernel.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Fernando Luis Vazquez Cao
    Signed-off-by: Jiri Kosina

    Fernando Luis Vázquez Cao
     

28 Dec, 2012

1 commit


13 Dec, 2012

1 commit


12 Dec, 2012

2 commits

  • Those IDs aren't necessary anymore.

    This reverts commit c8147d9ea19bfe7d8e569351bc7239e118dd6997.

    Signed-off-by: Alexander Holler
    Acked-by: "Pandruvada, Srinivas"
    Signed-off-by: Jiri Kosina

    Alexander Holler
     
  • It should not be necessary to add IDs for HID sensor hubs to lists in
    hid-core.c and hid-sensor-hub.c. So instead of a whitelist, autodetect such USB
    HID sensor hubs, based on a collection of type physical inside a useage page of
    type sensor. If some sensor hubs stil must be usable as raw devices, a
    blacklist might be created.

    Signed-off-by: Alexander Holler
    Acked-by: "Pandruvada, Srinivas"
    Signed-off-by: Jiri Kosina

    Alexander Holler
     

07 Dec, 2012

1 commit

  • This patch against kernel 3.7.0-rc8 fixes a kernel oops when turning on the
    bluetooth mouse with id 0458:0058 [1].

    The mouse in question supports both input and hid sessions, however it is
    blacklisted in drivers/hid/hid-core.c so the input session is one that should
    be used. Long ago (around kernel 3.0.0) some changes in the bluetooth
    subsystem made the kernel do not fallback to input session when hid session is
    not supported or blacklisted. This patch restore that behaviour by making the
    kernel try the input session if hid_add_device returns ENODEV.

    The patch exports hid_ignore() from hid-core.c so that it can be used in the
    bluetooth subsystem.

    [1] https://bugzilla.kernel.org/show_bug.cgi?id=39882

    Signed-off-by: Lamarque V. Souza
    Acked-by: Gustavo Padovan
    Signed-off-by: Jiri Kosina

    Lamarque V. Souza
     

03 Dec, 2012

1 commit


15 Nov, 2012

2 commits

  • Currently, there is no way to know the index of the current field
    in the .input_mapping and .event callbacks when this field is inside
    an array of HID fields.
    This patch adds this index to the struct hid_usage so that this
    information is available to input_mapping and event callbacks.

    Signed-off-by: Benjamin Tissoires
    Acked-by: Jiri Kosina
    Signed-off-by: Jiri Kosina

    Benjamin Tissoires
     
  • HID spec details special values for the HID field unit exponent.
    Basically, the range [0x8..0xf] correspond to [-8..-1], so this is
    a standard two's complement on a half-byte.

    Signed-off-by: Benjamin Tissoires
    Acked-by: Jiri Kosina
    Signed-off-by: Jiri Kosina

    Benjamin Tissoires
     

07 Nov, 2012

1 commit

  • Previously, both usbhid and usbtouchscreen would bind to D-WAV devices
    with class HID and protocol None, so they would be claimed by whichever
    driver was loaded first. Some of these devices do in fact work with
    usbhid, but not all of them do. OTOH they all work with usbtouchscreen
    as of commit 037a833ed05a86d01ea27a2c32043b86c549be1b ("Input:
    usbtouchscreen - initialize eGalax devices"). So we ignore them in
    usbhid to prevent getting in the way of usbtouchscreen and claiming an
    interface that we may not be able to do anything useful with.

    Signed-off-by: Forest Bond
    Signed-off-by: Jiri Kosina

    Forest Bond
     

31 Oct, 2012

2 commits

  • Add a driver for the ION iCade mini arcade cabinet [1]. The device generates a
    key press and release for each joystick movement or button press or release.
    For example, moving the stick to the left will generate the "A" key being
    pressed and then released.

    A list of all the combinations is available in the iCade developer guide [2].

    This driver hides all this and makes the device work as a generic joystick.

    [1]: http://www.ionaudio.com/products/details/icade
    [2]: http://www.ionaudio.com/downloads/iCade_Dev_Resource_v1.3.pdf

    Signed-off-by: Bastien Nocera
    Reviewed-by: Benjamin Tissoires
    Signed-off-by: Jiri Kosina

    Bastien Nocera
     
  • This enables the existing drivers for keyboard and touchpad with the new
    USB IDs found on the MBP 13" Reasonable Resolution (also known as the
    Retina Display).

    Added entries to both keyboard and mouse ignore lists.

    Signed-off-by: Dirk Hohndel
    Signed-off-by: Jiri Kosina

    Dirk Hohndel
     

17 Oct, 2012

1 commit


02 Oct, 2012

1 commit

  • Pull staging tree update from Greg Kroah-Hartman:
    "Here is the big staging tree update for the 3.7-rc1 merge window.

    There are a few patches in here that are outside of the staging area,
    namely HID and IIO patches, but all of them have been acked by the
    relevant subsystem maintainers. The IIO stuff is still coming in
    through this tree as it hasn't entirely moved out of the staging tree,
    but is almost there.

    Other than that, there wa a ton of work on the comedi drivers to make
    them more readable and the correct style. Doing that removed a lot of
    code, but we added a new driver to the staging tree, so we didn't end
    up with a net reduction this time around:

    662 files changed, 51649 insertions(+), 26582 deletions(-)

    All of these patches have been in the linux-next tree already.

    Signed-off-by: Greg Kroah-Hartman "

    * tag 'staging-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1094 commits)
    staging: comedi: jr3_pci: fix iomem dereference
    staging: comedi: drivers: use comedi_fc.h cmdtest helpers
    Staging: winbond: usb_free_urb(NULL) is safe
    Staging: winbond: checkpatch cleanup
    Staging: winbond: Removed undesired spaces, lines and tabs
    Staging: winbond: Typo corrections in comments
    Staging: winbond: Changed c99 comments to c89 comments
    staging: r8712u: Do not queue cloned skb
    staging: comedi: ni_mio_common: always lock in ni_ai_poll()
    staging: comedi: s626: add FIXME comment
    staging: comedi: s626: don't dereference insn->data
    staging: comedi: s526: fix if() check in s526_gpct_winsn()
    staging: comedi: s626: cleanup comments in s626_initialize()
    staging: comedi: s626: remove clear of kzalloc'ed data
    staging: comedi: s626: remove 'WDInterval' from private data
    staging: comedi: s626: remove 'ChargeEnabled' from private data
    staging: comedi: s626: remove 'IsBoardRevA' comment
    staging: comedi: s626: #if 0 out the "SAA7146 BUG WORKAROUND"
    staging: comedi: s626: remove 'allocatedBuf' from private data
    staging: comedi: s626: add final attach message
    ...

    Linus Torvalds
     

01 Oct, 2012

4 commits

  • Conflicts:
    drivers/hid/usbhid/hid-quirks.c

    Jiri Kosina
     
  • … 'wacom' and 'wiimote' into for-linus

    Jiri Kosina
     
  • The Sony PS3 Blue-ray Disc Remote Control used to be supported by the
    BlueZ project's user space, but the code that handled it was recently
    removed as its functionality conflicted with a real HSP implementation
    and the mapping was thought to be better handled in the kernel. This is
    a port of the mapping logic from the fakehid driver by Marcel Holtmann
    to the in-kernel HID layer.

    We also add support for the Logitech Harmony Adapter for PS3, which
    emulates the BD Remote.

    Signed-off-by: David Dillow
    Signed-off-by: Antonio Ospite
    Signed-off-by: Jiri Kosina

    David Dillow
     
  • The dev_rdesc member of the hid_device structure is meant to store the original
    report descriptor received from the device, but it is currently passed to any
    report_fixup method before it is copied to the rdesc member. This patch uses a
    temporary buffer to shield dev_rdesc from the side effects of many HID drivers'
    report_fixup implementations.

    usbhid's hid_post_reset checks the report descriptor currently returned by the
    device against a descriptor that may have been modified by a driver's
    report_fixup method. That leaves some devices nonfunctional after a resume, with
    a "reset_resume error 1" reported. This patch checks the new descriptor against
    the unmodified dev_rdesc instead and uses the original, instead of modified,
    report size.

    BugLink: http://bugs.launchpad.net/bugs/1049623
    Signed-off-by: Kevin Daughtridge
    Signed-off-by: Jiri Kosina

    Kevin Daughtridge
     

17 Sep, 2012

3 commits


07 Sep, 2012

2 commits


02 Sep, 2012

2 commits


27 Aug, 2012

2 commits


24 Aug, 2012

1 commit


22 Aug, 2012

1 commit


15 Aug, 2012

1 commit

  • The Freescale i.MX28 BootROM USB recovery mode implements the USB HID
    protocol, yet the global item tag report size is 128. Linux checks if
    this is 96 as of now, see [1]. This causes Linux to refuse to communicate
    with this device, making it impossible to use the recovery mode.

    This is not a standard HID device per se, but rather a software emulation
    implemented within the BootROM code and realized through USB OTG-capable
    port switched to device mode present on the device.

    Previous attempt to discuss this issue dates back to 2011, see [2]. There
    has been not much response. Also noteworthy is the [3], where there seems
    to be a pointing device that has issue similar to this one.

    The tool making use of the USB recovery mode is available at [4].

    [1] http://comments.gmane.org/gmane.linux.kernel.input/22328
    [2] http://www.spinics.net/lists/linux-usb/msg43463.html
    [3] https://bbs.archlinux.org/viewtopic.php?pid=1141340
    [4] http://git.bfuser.eu/?p=marex/mxsldr.git;a=summary

    Signed-off-by: Marek Vasut
    Cc: Chen Peter
    Cc: Greg KH
    Cc: Jiri Kosina
    Signed-off-by: Jiri Kosina

    Marek Vasut
     

01 Aug, 2012

1 commit

  • Pull second set of media updates from Mauro Carvalho Chehab:

    - radio API: add support to work with radio frequency bands

    - new AM/FM radio drivers: radio-shark, radio-shark2

    - new Remote Controller USB driver: iguanair

    - conversion of several drivers to the v4l2 core control framework

    - new board additions at existing drivers

    - the remaining (and vast majority of the patches) are due to
    drivers/DocBook fixes/cleanups.

    * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media: (154 commits)
    [media] radio-tea5777: use library for 64bits div
    [media] tlg2300: Declare MODULE_FIRMWARE usage
    [media] lgs8gxx: Declare MODULE_FIRMWARE usage
    [media] xc5000: Add MODULE_FIRMWARE statements
    [media] s2255drv: Add MODULE_FIRMWARE statement
    [media] dib8000: move dereference after check for NULL
    [media] Documentation: Update cardlists
    [media] bttv: add support for Aposonic W-DVR
    [media] cx25821: Remove bad strcpy to read-only char*
    [media] pms.c: remove duplicated include
    [media] smiapp-core.c: remove duplicated include
    [media] via-camera: pass correct format settings to sensor
    [media] rtl2832.c: minor cleanup
    [media] Add support for the IguanaWorks USB IR Transceiver
    [media] Minor cleanups for MCE USB
    [media] drivers/media/dvb/siano/smscoreapi.c: use list_for_each_entry
    [media] Use a named union in struct v4l2_ioctl_info
    [media] mceusb: Add Twisted Melon USB IDs
    [media] staging/media/solo6x10: use module_pci_driver macro
    [media] staging/media/dt3155v4l: use module_pci_driver macro
    ...

    Conflicts:
    Documentation/feature-removal-schedule.txt

    Linus Torvalds