1. 18 Oct, 2002 1 commit
    • Dan Streetman's avatar
      [PATCH] uhci interrupt resubmit fixes · 5d127a7f
      Dan Streetman authored
      After the interrupt queueing was added, I don't think the old way of
      resetting interrupts will work anymore.  This patch changes it to simply
      do a full unlink and resubmission automatically.  Note that since
      usb_hcd_giveback_urb() is never called for a resubmitting interrupt URB,
      that means whatever gets released in usb_hcd_giveback_urb() won't get
      released for that URB.  The only way to work around that is call
      usb_hcd_giveback_urb after the user unlinks in their completion handler,
      which will call the completion handler again with -ECONNRESET
      status...which wouldn't be all that bad, but the drivers have to expect
      it.
      
      Hopefully the interrupt resubmission will go away soon...
      5d127a7f
  2. 17 Oct, 2002 7 commits
  3. 15 Oct, 2002 4 commits
    • Dan Streetman's avatar
      [PATCH] uhci: remove qh from qh->list · b015fe38
      Dan Streetman authored
      I think the qh needs to be removed from its qh->list, or else
      uhci_remove_qh will incorrectly change the previous endpoint's qh->link,
      undoing what was just done in uhci_delete_queued_urb.
      b015fe38
    • Dan Streetman's avatar
      [PATCH] uhci: slight docs update · f9fdd6e5
      Dan Streetman authored
      Slight change - the int qh order is actually opposite of the example.
      f9fdd6e5
    • Johannes Erdfelt's avatar
      [PATCH] 2.5 uhci control and interrupt queuing · 495efc14
      Johannes Erdfelt authored
      This is 95% Dan's patch, but I made some small changes. The changes I've
      made relative to Dan's patch is:
      
      Drop concept of skeleton TD. After Dan's patch, this was reduced to one
      entry in the form of skel_term_td. That wasn't even a skeleton TD in the
      first place. This simplifies the code a little bit.
      Minor formatting tweaks.
      Pass on USB bandwidth changes for now.
      Pass on Interrupt auto-resubmit changes for now.
      Use complete_list_lock, not complete_list as the lock.
      Use frame_list_lock, not fame_list_lock.
      Reorganize skeleton QH's to match the order in the schedule. This cleaned
      up some debugging code and made the list more logical.
      Update some obsolete documentation.
      Pass on code to check for race conditions and fix up. It was racy as well.
      
      Dan, do you compile with SMP? Those two locking typos would have
      generated a warning and/or error.
      
      I've done some light testing and haven't found any problems yet. I
      haven't tested the control or interrupt queuing for lack of anything to
      test with yet.
      
      Anyway, please apply.
      
         Merge in Dan's patch to add interrupt and control queuing support. Summary of changes:
         Add queuing support for Interrupt and Control message in addition to Bulk.
         This resulted in some merging of code.
         Fix a queuing bug when moving a child into the parent position.
         Update documentation.
         Update debugging code.
      495efc14
    • Johannes Erdfelt's avatar
      [PATCH] 2.5 uhci breadth first traversal for low speed · 64423330
      Johannes Erdfelt authored
      Woops, my fault. I forgot to send you this patch which needs to be
      applied before the big one.
      
      It's from Dan as well and switches low speed control to use breadth
      first traversal to make it more fair.
      
        Don't make low speed control use depth first. That isn't
        particularly fair. Thanks to Dan Streetman for bringing
        this up and the original patch.
      64423330
  4. 14 Oct, 2002 6 commits
    • Johannes Erdfelt's avatar
      [PATCH] 2.5 uhci proc path · bd00d879
      Johannes Erdfelt authored
      This is a patchlet that updates a comment to use the correct path to the
      proc debugging file.
      bd00d879
    • Randy Dunlap's avatar
      [PATCH] 2.5.42 HID-BP menu · f37848d5
      Randy Dunlap authored
      HID-BP confuses people, we know that.
      I don't want to see the HID-BP drivers removed,
      but I think it would be a good idea to make them more
      difficult to enable, unless someone knows what they
      are looking for.  (Basically it would reduce support
      incidents a lot.)
      
      The second way puts HID-BP in its own sub-menu and
      updates the Help file.  I think that this is the better
      choice, so unless there is a great hue and cry,
      please apply the "hidbpmenu-2542.patch" file.
      f37848d5
    • Matthew Dharm's avatar
      [PATCH] Fixes to CB/CBI and compilation problems... · 26109b77
      Matthew Dharm authored
      This patch:
      	(a) updates some comments
      	(b) adds some debugging
      	(c) fixes CB and CBI data stages
      	(d) adds some missing {'s and }'s -- only dumb luck let the old
      	version compile.
      26109b77
    • Johannes Erdfelt's avatar
      [PATCH] 2.5 uhci remove urb from lists on error · 71fd0ca3
      Johannes Erdfelt authored
      I'm applying Dan's patches by hand to double check everything and I
      wanted to get a couple of the trivial ones out of the way first.
      
      This patch fixes a bug where errors on the submit path wouldn't remove
      URB's from the HC linked list.
      
        If we fail adding the URB to the schedule, we need to make
        sure that we remove it from the urb_list. Thanks to
        Dan Streetman for finding and fixing this bug.
      71fd0ca3
    • Johannes Erdfelt's avatar
      [PATCH] 2.5 uhci remove correct proc directory · cd0c2b2a
      Johannes Erdfelt authored
      This patch fixes a typo in the names used to remove the proc directory
      that uhci uses.
      
      The longer term fix of splitting out (or dropping outright) the
      debugging code will come soon after the important bugs and features are
      merged.
      cd0c2b2a
    • David Brownell's avatar
      [PATCH] found_match return value incorrect. · b033cfbe
      David Brownell authored
      > I've seen several cases where 'usbtest' would look at the device
      > and say "no thanks", but then the "right" driver wouldn't ever
      > bind to the device.
      
      This patch seems to fix it.  I think Linus' tree needs it,
      or something like it.
      
      (Since the probe routine returns zero on success, there
      was confusion inside the driver model code where it assumed
      that zero meant failure.)
      b033cfbe
  5. 13 Oct, 2002 22 commits
    • Linus Torvalds's avatar
      Merge bk://linuxusb.bkbits.net/linus-2.5 · 71660e15
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      71660e15
    • Andrew Morton's avatar
      [PATCH] remove kiobufs · 2dcb8ff9
      Andrew Morton authored
      This patch from Christoph Hellwig removes the kiobuf/kiovec
      infrastructure.
      
      This affects three subsystems:
      
      video-buf.c:
      
         This patch includes an earlier diff from Gerd which converts
          video-buf.c to use get_user_pages() directly.
      
         Gerd has acked this patch.
      
      LVM1:
      
         Is now even more broken.
      
      drivers/mtd/devices/blkmtd.c:
      
         blkmtd is broken by this change.  I contacted Simon Evans, who
         said "I had done a rewrite of blkmtd anyway and just need to convert
         it to BIO.  Feel free to break it in the 2.5 tree, it will force me
         to finish my code."
      
      Neither EVMS nor LVM2 use kiobufs.  The only remaining breakage
      of which I am aware is a proprietary MPEG2 streaming module.  It
      could use get_user_pages().
      2dcb8ff9
    • Andrew Morton's avatar
      [PATCH] msync correctness fixes · 59791303
      Andrew Morton authored
      From Anton Blanchard.  This fixes a couple of Linux Test Project
      failures.
      
      - Returns EBUSY if the caller is trying to invalidate memory which is
        covered by a locked vma.
      
        The open group say:
      
        [EBUSY]
                Some or all of the addresses in the range starting
                at addr and continuing for len bytes are locked,
                and MS_INVALIDATE is specified.
      
      - Returns EINVAL if the caller specified both MS_SYNC and MS_ASYNC
      
        [EINVAL]
                The value of flags is invalid.
      
        and:
      
                "Either MS_ASYNC or MS_SYNC is specified, but not both."
      59791303
    • Andrew Morton's avatar
      [PATCH] enable 64-bit sector_t config option · 0e296d85
      Andrew Morton authored
      CONFIG_LBD was initially hardwired to "on" for testing.  That seems to
      have gone OK, so now make it configurable.
      0e296d85
    • Andrew Morton's avatar
      [PATCH] discontigmem: zero out the per-node zone structures at boot · 881b4046
      Andrew Morton authored
      From Bill Irwin: ensure that the data structures which hold the node's
      zone structures is all zeroed before we start using it.
      881b4046
    • Andrew Morton's avatar
      [PATCH] fix disk IO stats for 512-byte IOs · 12c26749
      Andrew Morton authored
      If you're peforming 512-byte sized IOs.  With, say,
      
      	dd of=/dev/raw/raw1 bs=512
      
      then the `pgpgin' and `pgpgout' accounting just sits on zero.
      
      This is because it counts in kbytes, and 512/1024 is zero.
      
      So change it to count sectors, and divide that by two when we report it
      to userspace.
      12c26749
    • Andrew Morton's avatar
      [PATCH] batched slab shrink and registration API · 71419dc7
      Andrew Morton authored
      From Ed Tomlinson, then mauled by yours truly.
      
      The current shrinking of the dentry, inode and dquot caches seems to
      work OK, but it is slightly CPU-inefficient: we call the shrinking
      functions many times, for tiny numbers of objects.
      
      So here, we just batch that up - shrinking happens at the same rate but
      we perform it in larger units of work.
      
      To do this, we need a way of knowing how many objects are currently in
      use by individual caches.  slab does not actually track this
      information, but the existing shrinkable caches do have this on hand.
      So rather than adding the counters to slab, we require that the
      shrinker callback functions keep their own count - we query that via
      the callback.
      
      We add a simple registration API which is exported to modules.  A
      subsystem may register its own callback function via set_shrinker().
      
      set_shrinker() simply takes a function pointer.  The function is called
      with
      
      	int (*shrinker)(int nr_to_shrink, unsigned int gfp_mask);
      
      The shrinker callback must scan `nr_to_scan' objects and free all
      freeable scanned objects.  Note: it doesn't have to *free* `nr_to_scan'
      objects.  It need only scan that many.  Which is a fairly pedantic
      detail, really.
      
      The shrinker callback must return the number of objects which are in
      its cache at the end of the scanning attempt.  It will be called with
      nr_to_scan == 0 when we're just querying the cache size.
      
      The set_shrinker() registration API is passed a hint as to how many
      disk seeks a single cache object is worth.  Everything uses "2" at
      present.
      
      I saw no need to add the traditional `here is my void *data' to the
      registration/callback.  Because there is a one-to-one relationship
      between caches and their shrinkers.
      
      
      Various cleanups became possible:
      
      - shrink_icache_memory() is no longer exported to modules.
      
      - shrink_icache_memory() is now static to fs/inode.c
      
      - prune_icache() is now static to fs/inode.c, and made inline (single caller)
      
      - shrink_dcache_memory() is made static to fs/dcache.c
      
      - prune_dcache() is no longer exported to modules
      
      - prune_dcache() is made static to fs/dcache.c
      
      - shrink_dqcache_memory() is made static to fs/dquot.c
      
      - All the quota init code has been moved from fs/dcache.c into fs/dquot.c
      
      - All modifications to inodes_stat.nr_inodes are now inside
        inode_lock - the dispose_list one was racy.
      71419dc7
    • Greg Kroah-Hartman's avatar
      Merge kroah.com:/home/linux/linux/BK/bleeding-2.5 · 31c96625
      Greg Kroah-Hartman authored
      into kroah.com:/home/linux/linux/BK/gregkh-2.5
      31c96625
    • David Brownell's avatar
      [PATCH] usbcore doc + minor fixes · 321d6a82
      David Brownell authored
      Cleaning out my queue of most minor patches:
      
        - Provides some kerneldoc for 'struct usb_interface' now that
          the API is highlighting it.
      
        - Fixes usb_set_interface() so it doesn't affect other interfaces.
      
          This provides the right place for an eventual HCD call to clean
          out now-invalid records of endpoint state, and also gets rid of
          a potential SMP issue where drivers on different interfaces
          calling concurrently could clobber each other.  (Per-interface
          data doesn't need locking except against config changes.)
      
        - It's OK to pass URB_NO_INTERRUPT hints if you're queueing a
          bunch of interrupt transfers.
      
      The set_interface call should eventually take the interface as a
      parameter, it's one of the few left using the "device plus magic
      number" identifier.  I have a partial patch for that, but it doesn't
      handle the (newish) ALSA usb audio driver or a few other callers.
      321d6a82
    • Greg Kroah-Hartman's avatar
      USB: visor.c: changed USB_DT_DEVICE to USB_RECIP_INTERFACE, as that's the proper #define to use. · c2ece75a
      Greg Kroah-Hartman authored
      Thanks to David Brownell for pointing this out to me.
      c2ece75a
    • Romain Liévin's avatar
      [PATCH] char driver: added tipar driver · 2a4eb6d7
      Romain Liévin authored
      Here is patch which adds parallel link cable support for Texas Instruments
      graphing calculators.
      2a4eb6d7
    • Linus Torvalds's avatar
      Merge bk://bk.arm.linux.org.uk · e0970dce
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      e0970dce
    • Russell King's avatar
      [ARM] Update integrator-flash.c from MTD CVS · 4c515af5
      Russell King authored
      Keep the partition information around for the lifetime of the module.
      4c515af5
    • Russell King's avatar
      [ARM] Update AFS mtd partition parsing. · da4acd13
      Russell King authored
      This updates AFS mtd partition parsing to the current CVS version:
      - Don't recognise the AFS SIB as a partition
      - Ensure initialisation of afs mtdpart structures.
      da4acd13
    • Russell King's avatar
      [ARM] Update cyber2000fb for 2.5 fbcon. · 63ffa3f0
      Russell King authored
      63ffa3f0
    • Russell King's avatar
      [ARM] Update clps711x fbcon driver. · a2ca74ad
      Russell King authored
      a2ca74ad
    • Russell King's avatar
      fa1625e7
    • Russell King's avatar
      [ARM] Update sa1100 PCMCIA support · 26908da1
      Russell King authored
      We removed asm/mach-types.h from asm/hardware.h.  This means we must
      now include asm/mach-types.h where its used.
      
      We also fix h3600 pcmcia initialisation/cleanup.
      26908da1
    • Russell King's avatar
      a8ac88a3
    • Russell King's avatar
      [ARM] Make the assabet machine always use the same uart mapping. · a67d2586
      Russell King authored
      Traditionally, the Assabet reverses its mapping of UART1 and UART3
      when the Neponset board is connected.  This can be (a) confusing
      and (b) annoying when the boot loader uses UART1.  We therefore
      have a fixed mapping between the ttySA names and the physical
      UARTs on this platform.
      a67d2586
    • Russell King's avatar
      [ARM] Convert sa1100 PCMCIA drivers to C99 initializers (Art Haas) · 62dadef4
      Russell King authored
      The patches convert drivers/pcmcia to use C99 named initializers,
      and all the patches are against 2.5.42. There are 25 patches in
      total, and the "cat"ing them together they're more that 20K, so
      I'm sending the patches as a compressed attachment. The patches
      were CC'd to Linus in the first mail that bounced.
      62dadef4
    • Russell King's avatar
      [ARM ADFS] C99 designated initialisers (Patch from Art Haas) · a8fd098c
      Russell King authored
      Here's a small set of patches that switch the code to use C99
      desiginated initializers. Patches are against 2.5.42.
      a8fd098c