1. 01 2月, 2006 5 次提交
  2. 14 1月, 2006 5 次提交
  3. 06 1月, 2006 1 次提交
  4. 05 1月, 2006 6 次提交
  5. 31 12月, 2005 2 次提交
  6. 30 12月, 2005 1 次提交
  7. 21 12月, 2005 1 次提交
  8. 19 12月, 2005 1 次提交
  9. 14 12月, 2005 1 次提交
  10. 12 12月, 2005 1 次提交
  11. 18 11月, 2005 3 次提交
  12. 31 10月, 2005 1 次提交
  13. 29 10月, 2005 6 次提交
    • A
      [PATCH] hid-core: Add Clear-Halt on the Interrupt-in endpoint · 423e489d
      Alan Stern 提交于
      This patch (as577) adds a Clear-Halt call on the Interrupt-in endpoint
      during input device configuration.  Without it my HP USB keyboard doesn't
      work.
      
      Vojtech says it's worth trying, since it might help with some recalcitrant
      devices.  On the other hand, it might interfere with others.  I'm
      submitting it so that it can get tested by a range of users.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      423e489d
    • H
      [PATCH] USB: Buffer overflow patch for Yealink driver · af64a5eb
      Henk 提交于
      Just a small patch that fixes a small parameter validation bug.
      
        drivers/usb/input/map_to_7segment.h:
          This patch fixes the broken parameter validation in the char to seg7
          conversion. This could cause out-of-bounds memory references.
      
        MAINTAINERS:
          Yealink maintainer info now in sorted order.
      
        Documentation/input/yealink.txt:
          Added a Q&A section that answers some common questions.
      Signed-off-by: NHenk <Henk.Vergonet@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      006491df1a13f85ad245d1039dfdf20e49c394fd
      af64a5eb
    • D
      [PATCH] usb/input/touchkit: add more device IDs · 3f8c03ee
      Daniel Ritz 提交于
      add two more device IDs from eGalax' programming guide.
      thanks to Jonathan Hopper <jrhopper () gmail ! com>  for pointing out.
      Signed-off-by: NDaniel Ritz <daniel.ritz@gmx.ch>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
       drivers/usb/input/touchkitusb.c |    2 ++
       1 file changed, 2 insertions(+)
      3f8c03ee
    • D
      [PATCH] usb_interface power state · db690874
      David Brownell 提交于
      This updates the handling of power state for USB interfaces.
      
        - Formalizes an existing invariant:  interface "power state" is a boolean:
          ON when I/O is allowed, and FREEZE otherwise.  It does so by defining
          some inlined helpers, then using them.
      
        - Adds a useful invariant:  the only interfaces marked active are those
          bound to non-suspended drivers.  Later patches build on this invariant.
      
        - Simplifies the interface driver API (and removes some error paths) by
          removing the requirement that they record power state changes during
          suspend and resume callbacks.  Now usbcore does that.
      
      A few drivers were simplified to address that last change.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
       drivers/usb/core/hub.c       |   33 +++++++++------------
       drivers/usb/core/message.c   |    1
       drivers/usb/core/usb.c       |   65 +++++++++++++++++++++++++++++++++----------
       drivers/usb/core/usb.h       |   18 +++++++++++
       drivers/usb/input/hid-core.c |    2 -
       drivers/usb/misc/usbtest.c   |   10 ------
       drivers/usb/net/pegasus.c    |    2 -
       drivers/usb/net/usbnet.c     |    2 -
       8 files changed, 85 insertions(+), 48 deletions(-)
      db690874
    • G
      [PATCH] devfs: Remove the mode field from usb_class_driver as it's no longer needed · d6e5bcf4
      Greg Kroah-Hartman 提交于
      Also fixes all drivers that set this field, and removes some other devfs
      specfic USB logic.
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
       drivers/usb/class/usblp.c           |    3 +--
       drivers/usb/core/file.c             |   19 ++++---------------
       drivers/usb/image/mdc800.c          |    3 +--
       drivers/usb/input/aiptek.c          |    2 +-
       drivers/usb/input/hiddev.c          |    3 +--
       drivers/usb/media/dabusb.c          |    3 +--
       drivers/usb/misc/auerswald.c        |    3 +--
       drivers/usb/misc/idmouse.c          |    5 ++---
       drivers/usb/misc/legousbtower.c     |    5 ++---
       drivers/usb/misc/rio500.c           |    3 +--
       drivers/usb/misc/sisusbvga/sisusb.c |    5 -----
       drivers/usb/misc/usblcd.c           |    9 ++++-----
       drivers/usb/usb-skeleton.c          |    3 +--
       include/linux/usb.h                 |    7 ++-----
       14 files changed, 22 insertions(+), 51 deletions(-)
      d6e5bcf4
    • D
      [PATCH] drivers/usb/input: convert to dynamic input_dev allocation · c5b7c7c3
      Dmitry Torokhov 提交于
      Input: convert drivers/iusb/input to dynamic input_dev allocation
      
      This is required for input_dev sysfs integration
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c5b7c7c3
  14. 18 10月, 2005 1 次提交
    • C
      [PATCH] USB: fix bug in handling of highspeed usb HID devices · 13b58ee5
      Christian Krause 提交于
      During the development of an USB device I found a bug in the handling of
      Highspeed HID devices in the kernel.
      
      What happened?
      
      Highspeed HID devices are correctly recognized and enumerated by the
      kernel. But even if usbhid kernel module is loaded, no HID reports are
      received by the kernel.
      
      The output of the hardware USB analyzer told me that the host doesn't
      even poll for interrupt IN transfers (even the "interrupt in" USB
      transfer are polled by the host).
      
      After some debugging in hid-core.c I've found the reason.
      
      In case of a highspeed device, the endpoint interval is re-calculated in
      driver/usb/input/hid-core.c:
      
      line 1669:
                   /* handle potential highspeed HID correctly */
                   interval = endpoint->bInterval;
                   if (dev->speed == USB_SPEED_HIGH)
                         interval = 1 << (interval - 1);
      
      Basically this calculation is correct (refer to USB 2.0 spec, 9.6.6).
      This new calculated value of "interval" is used as input for
      usb_fill_int_urb:
      
      line 1685:
      
                  usb_fill_int_urb(hid->urbin, dev, pipe, hid->inbuf, 0,
                         hid_irq_in, hid, interval);
      
      Unfortunately the same calculation as above is done a second time in
      usb_fill_int_urb in the file include/linux/usb.h:
      
      line 933:
              if (dev->speed == USB_SPEED_HIGH)
                      urb->interval = 1 << (interval - 1);
              else
                      urb->interval = interval;
      
      This means, that if the endpoint descriptor (of a high speed device)
      specifies e.g. bInterval = 7, the urb->interval gets the value:
      
      hid-core.c: interval = 1 << (7-1) = 0x40 = 64
      urb->interval = 1 << (interval -1) = 1 << (63) = integer overflow
      
      Because of this the value of urb->interval is sometimes negative and is
      rejected in core/urb.c:
      line 353:
                      /* too small? */
                      if (urb->interval <= 0)
                              return -EINVAL;
      
      The conclusion is, that the recalculaton of the interval (which is
      necessary for highspeed) should not be made twice, because this is
      simply wrong. ;-)
      
      Re-calculation in usb_fill_int_urb makes more sense, because it is the
      most general approach. So it would make sense to remove it from
      hid-core.c.
      
      Because in hid-core.c the interval variable is only used for calling
      usb_fill_int_urb, it is no problem to remove the highspeed
      re-calculation in this file.
      Signed-off-by: NChristian Krause <chkr@plauener.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      13b58ee5
  15. 13 9月, 2005 2 次提交
  16. 09 9月, 2005 3 次提交