16 Mar, 2007

1 commit


15 Mar, 2007

1 commit


12 Mar, 2007

2 commits

  • This patch removes bogus zeroing of unused bits in output reports,
    introduced in Simon's patch in commit d4ae650a.
    According to the specification, any sane device should not care
    about values of unused bits.

    What is worse, the zeroing is done in a way which is broken and
    might clear certain bits in output reports which are actually
    _used_ - a device that has multiple fields with one value of
    the size 1 bit each might serve as an example of why this is
    bogus - the second call of hid_output_report() would clear the
    first bit of report, which has already been set up previously.

    This patch will break LEDs on SpaceNavigator, because this device
    is broken and takes into account the bits which it shouldn't touch.
    The quirk for this particular device will be provided in a separate
    patch.

    Signed-off-by: Jiri Kosina

    Jiri Kosina
     
  • hid_parser is non-trivially large structure, so it should be allocated
    using vmalloc() to avoid unsuccessful allocations when memory fragmentation
    is too high.
    This structue has a very short life, it's destroyed as soon as the report
    descriptor has been completely parsed.

    This should be considered a temporary solution, until the hid_parser is
    rewritten to consume less memory during report descriptor parsing.

    Acked-by: Mariusz Kozlowski
    Signed-off-by: Jiri Kosina

    Jiri Kosina
     

01 Mar, 2007

2 commits


15 Feb, 2007

1 commit

  • After Al Viro (finally) succeeded in removing the sched.h #include in module.h
    recently, it makes sense again to remove other superfluous sched.h includes.
    There are quite a lot of files which include it but don't actually need
    anything defined in there. Presumably these includes were once needed for
    macros that used to live in sched.h, but moved to other header files in the
    course of cleaning it up.

    To ease the pain, this time I did not fiddle with any header files and only
    removed #includes from .c-files, which tend to cause less trouble.

    Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
    arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
    allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
    configs in arch/arm/configs on arm. I also checked that no new warnings were
    introduced by the patch (actually, some warnings are removed that were emitted
    by unnecessarily included header files).

    Signed-off-by: Tim Schmielau
    Acked-by: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     

05 Feb, 2007

2 commits


26 Jan, 2007

1 commit


22 Jan, 2007

2 commits

  • hid/hid-core.c references 'len' variable when DEBUG_DATA is defined,
    but the actual name of the variable is 'size'. Fix it.

    Signed-off-by: Jiri Kosina

    Jiri Kosina
     
  • This change introduces a mapping for LED indicators between the HID
    specification and the Linux input subsystem. The previous code properly
    mapped the LEDs relevant for Keyboards, but garbeled the remaining ones.
    With this change all LED enums from the input system get mapped to more
    or less equivalent LED numbers from the HID specification.

    This patch also ensures that the unused bits in a HID report to the
    device are zeroed out. This makes the 3Dconnexion SpaceNavigator fully
    usable with the linux input system.

    Signed-off-by: Simon Budig
    Signed-off-by: Jiri Kosina

    Simon Budig
     

09 Jan, 2007

1 commit

  • DRIVER_DESC macro is wrong in drivers/hid/hid-core.c. Its value
    is legacy from original usb+hid code and clashes with current
    usbhid implementation. Fix it.

    Signed-off-by: Jiri Kosina

    Jiri Kosina
     

08 Jan, 2007

2 commits


09 Dec, 2006

4 commits

  • hid_input_report() was needlessly USB-specific in USB HID. This patch
    makes the function independent of HID implementation and fixes all
    the current users. Bluetooth patches comply with this prototype.

    Signed-off-by: Jiri Kosina
    Signed-off-by: Marcel Holtmann
    Cc: Dmitry Torokhov
    Signed-off-by: Greg Kroah-Hartman

    Jiri Kosina
     
  • - hiddev is USB-only (agreed with Marcel Holtmann that Bluetooth currently
    doesn't need it, and future planned interface (rawhid) will be more flexible
    and usable)
    - both HID and USB-hid can be now compiled as modules (wasn't possible before
    hiddev was fully separated from generic HID layer)

    Signed-off-by: Jiri Kosina
    Signed-off-by: Marcel Holtmann
    Cc: Dmitry Torokhov
    Signed-off-by: Greg Kroah-Hartman

    Jiri Kosina
     
  • - fixed generic API (added neccessary EXPORT_SYMBOL, fixed hid.h to provide correct
    prototypes)
    - extended hid_device with open/close/event function pointers to driver-specific
    functions
    - added driver specific driver_data to hid_device

    Signed-off-by: Jiri Kosina
    Signed-off-by: Marcel Holtmann
    Cc: Dmitry Torokhov
    Signed-off-by: Greg Kroah-Hartman

    Jiri Kosina
     
  • The "big main" split of USB HID code into generic HID code and
    USB-transport specific HID handling.

    Signed-off-by: Jiri Kosina
    Signed-off-by: Marcel Holtmann
    Cc: Dmitry Torokhov
    Signed-off-by: Greg Kroah-Hartman

    Jiri Kosina