1. 13 2月, 2007 1 次提交
  2. 08 2月, 2007 2 次提交
  3. 06 1月, 2007 1 次提交
    • A
      sisusb_con warning fixes · c067dfc6
      Andrew Morton 提交于
      x86_64:
      
      drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_putc':
      drivers/usb/misc/sisusbvga/sisusb_con.c:405: warning: cast from pointer to integer of different size
      drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_putcs':
      drivers/usb/misc/sisusbvga/sisusb_con.c:440: warning: cast from pointer to integer of different size
      drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_clear':
      drivers/usb/misc/sisusbvga/sisusb_con.c:494: warning: cast from pointer to integer of different size
      drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_bmove':
      drivers/usb/misc/sisusbvga/sisusb_con.c:566: warning: cast from pointer to integer of different size
      drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_switch':
      drivers/usb/misc/sisusbvga/sisusb_con.c:614: warning: cast from pointer to integer of different size
      drivers/usb/misc/sisusbvga/sisusb_con.c: In function 'sisusbcon_scroll_area':
      drivers/usb/misc/sisusbvga/sisusb_con.c:941: warning: cast from pointer to integer of different size
      
      Cc: Thomas Winischhofer <thomas@winischhofer.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c067dfc6
  4. 21 12月, 2006 4 次提交
    • T
      USB: u132-hcd/ftdi-elan: add support for Option GT 3G Quad card · 4b87361d
      Tony Olech 提交于
      ELAN's U132 is a USB to CardBus OHCI controller adapter,
          designed specifically for CardBus 3G data cards to
          function in machines without a CardBus slot.
      The "ftdi-elan" module is a USB client driver, that detects
          a supported CardBus OHCI controller plugged into the
          U132 adapter and thereafter provides the conduit for
          for access by the "u132-hcd" module.
      The "u132-hcd" module is a (cut-down OHCI) host controller
          that supports a single OHCI function of the CardBus 
          card inserted into the U132 adapter.
      
      The problem with the initial implementation is that when
      the CardBus card inserted into the U132 adapter has multiple
      functions (and a CardBus card can support up to 4 functions),
      it was the first function that was arbitrarily choosen.
      
      The first batch of 3G cards tested, like the Merlin Qualcomm
      V620, have two functions each supporting a seperate USB OHCI
      host controller, of which it was that first function that is
      wired up to the 3G modem.
      
      Then along comes the Vodafone Mobile Connect 3G/GPRS data card,
      aka "Option GT 3G Quad" as printed on it's rear or "Option N.V.
      GlobeTrotter Fusion Quad Lite" as read with "lspci -v". And it
      has the meaningful functionality in the second CardBus function.
      
      That presents a problem because it was the "ftdi-elan" module
      alone that knows how to communicate to the embedded CardBus slot
      and the "u132-hcd" module alone that knows how to access the
      pcmcia configuration and CardBus accessible memory space. And
      of course, the information about attached (internally hardwired)
      devices is contained within USB configuration embedded somewhere
      within the CardBus card.
      
      If only the "u132-hcd" module probe() interface could return a
      result code that propagated back to the instigating function
      platform_device_register() then the "ftdi-elan" module could
      try an alternative CardBus function.     However in spite of
      the recent changes to the drivers/base/ routines that moved 
      device_attach() from bus_add_device() to bus_attach_device()
      both of those routines lose the "failed to attach" 0 result
      code and thus the calling routine, namely device_add() is
      incapable of propaging the "failed to attach" condition back
      to platform_device_add() and consequently back to the caller
      of platform_device_register()
      
      Experiments show that patching bus_attach_device() to return
      ENODEV fails with the kernel locking up very early during
      boot. But, however, if the patch is restricted to calls from
      platform_device_add() then it does seem to work.
      
      Unfortunately, until the kernel's drivers/base is properly
      modified to propagate -ENODEV back to the caller of
      platform_device_register(), it is necessary to "fix" the
      "ftdi-elan" module by importing knowledge from the 
      "u132-hcd" module. This is the reason for the duplicated
      functionality introduced in this patch.
      Signed-off-by: NTony Olech <tony.olech@elandigitalsystems.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      4b87361d
    • B
      USB AUERSWALD: replace kmalloc+memset with kzalloc · 66eb2e93
      Burman Yan 提交于
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      66eb2e93
    • O
      USB: fix transvibrator disconnect race · 96ca014d
      Oliver Neukum 提交于
      in disconnect you set the interface's private data to NULL. In your IO
      methods you unconditionally follow the pointer into never never land.
      Signed-off-by: NOliver Neukum <oliver@neukum.name>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      96ca014d
    • S
      USB: Fix oops in PhidgetServo · 6a7255e1
      Sean Young 提交于
      The PhidgetServo causes an Oops when any of its sysfs attributes are read
      or written too, making the driver useless.
      Signed-off-by: NSean Young <sean@mess.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      6a7255e1
  5. 20 12月, 2006 1 次提交
    • Y
      ACPI: video: Add dev argument for backlight_device_register · 519ab5f2
      Yu Luming 提交于
      This patch set adds generic abstract layer support for acpi video driver to
      have generic user interface to control backlight and output switch control by
      leveraging the existing backlight sysfs class driver, and by adding a new
      video output sysfs class driver.
      
      This patch:
      
      Add dev argument for backlight_device_register to link the class device to
      real device object.  The platform specific driver should find a way to get the
      real device object for their video device.
      
      [akpm@osdl.org: build fix]
      [akpm@osdl.org: fix msi-laptop.c]
      Signed-off-by: NLuming Yu <Luming.yu@intel.com>
      Cc: "Antonino A. Daplas" <adaplas@pol.net>
      Cc: Greg KH <greg@kroah.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLen Brown <len.brown@intel.com>
      519ab5f2
  6. 14 12月, 2006 2 次提交
    • R
      [PATCH] getting rid of all casts of k[cmz]alloc() calls · 5cbded58
      Robert P. J. Day 提交于
      Run this:
      
      	#!/bin/sh
      	for f in $(grep -Erl "\([^\)]*\) *k[cmz]alloc" *) ; do
      	  echo "De-casting $f..."
      	  perl -pi -e "s/ ?= ?\([^\)]*\) *(k[cmz]alloc) *\(/ = \1\(/" $f
      	done
      
      And then go through and reinstate those cases where code is casting pointers
      to non-pointers.
      
      And then drop a few hunks which conflicted with outstanding work.
      
      Cc: Russell King <rmk@arm.linux.org.uk>, Ian Molton <spyro@f2s.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Greg KH <greg@kroah.com>
      Cc: Jens Axboe <jens.axboe@oracle.com>
      Cc: Paul Fulghum <paulkf@microgate.com>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Karsten Keil <kkeil@suse.de>
      Cc: Mauro Carvalho Chehab <mchehab@infradead.org>
      Cc: Jeff Garzik <jeff@garzik.org>
      Cc: James Bottomley <James.Bottomley@steeleye.com>
      Cc: Ian Kent <raven@themaw.net>
      Cc: Steven French <sfrench@us.ibm.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Neil Brown <neilb@cse.unsw.edu.au>
      Cc: Jaroslav Kysela <perex@suse.cz>
      Cc: Takashi Iwai <tiwai@suse.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      5cbded58
    • R
      [PATCH] Fix numerous kcalloc() calls, convert to kzalloc() · cd861280
      Robert P. J. Day 提交于
      All kcalloc() calls of the form "kcalloc(1,...)" are converted to the
      equivalent kzalloc() calls, and a few kcalloc() calls with the incorrect
      ordering of the first two arguments are fixed.
      Signed-off-by: NRobert P. J. Day <rpjday@mindspring.com>
      Cc: Jeff Garzik <jeff@garzik.org>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Cc: Adam Belay <ambx1@neo.rr.com>
      Cc: James Bottomley <James.Bottomley@steeleye.com>
      Cc: Greg KH <greg@kroah.com>
      Cc: Mark Fasheh <mark.fasheh@oracle.com>
      Cc: Trond Myklebust <trond.myklebust@fys.uio.no>
      Cc: Neil Brown <neilb@suse.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      cd861280
  7. 09 12月, 2006 1 次提交
  8. 08 12月, 2006 2 次提交
  9. 06 12月, 2006 1 次提交
  10. 02 12月, 2006 15 次提交
  11. 30 11月, 2006 1 次提交
  12. 22 11月, 2006 1 次提交
  13. 17 11月, 2006 1 次提交
  14. 18 10月, 2006 4 次提交
  15. 05 10月, 2006 1 次提交
    • D
      IRQ: Maintain regs pointer globally rather than passing to IRQ handlers · 7d12e780
      David Howells 提交于
      Maintain a per-CPU global "struct pt_regs *" variable which can be used instead
      of passing regs around manually through all ~1800 interrupt handlers in the
      Linux kernel.
      
      The regs pointer is used in few places, but it potentially costs both stack
      space and code to pass it around.  On the FRV arch, removing the regs parameter
      from all the genirq function results in a 20% speed up of the IRQ exit path
      (ie: from leaving timer_interrupt() to leaving do_IRQ()).
      
      Where appropriate, an arch may override the generic storage facility and do
      something different with the variable.  On FRV, for instance, the address is
      maintained in GR28 at all times inside the kernel as part of general exception
      handling.
      
      Having looked over the code, it appears that the parameter may be handed down
      through up to twenty or so layers of functions.  Consider a USB character
      device attached to a USB hub, attached to a USB controller that posts its
      interrupts through a cascaded auxiliary interrupt controller.  A character
      device driver may want to pass regs to the sysrq handler through the input
      layer which adds another few layers of parameter passing.
      
      I've build this code with allyesconfig for x86_64 and i386.  I've runtested the
      main part of the code on FRV and i386, though I can't test most of the drivers.
      I've also done partial conversion for powerpc and MIPS - these at least compile
      with minimal configurations.
      
      This will affect all archs.  Mostly the changes should be relatively easy.
      Take do_IRQ(), store the regs pointer at the beginning, saving the old one:
      
      	struct pt_regs *old_regs = set_irq_regs(regs);
      
      And put the old one back at the end:
      
      	set_irq_regs(old_regs);
      
      Don't pass regs through to generic_handle_irq() or __do_IRQ().
      
      In timer_interrupt(), this sort of change will be necessary:
      
      	-	update_process_times(user_mode(regs));
      	-	profile_tick(CPU_PROFILING, regs);
      	+	update_process_times(user_mode(get_irq_regs()));
      	+	profile_tick(CPU_PROFILING);
      
      I'd like to move update_process_times()'s use of get_irq_regs() into itself,
      except that i386, alone of the archs, uses something other than user_mode().
      
      Some notes on the interrupt handling in the drivers:
      
       (*) input_dev() is now gone entirely.  The regs pointer is no longer stored in
           the input_dev struct.
      
       (*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking.  It does
           something different depending on whether it's been supplied with a regs
           pointer or not.
      
       (*) Various IRQ handler function pointers have been moved to type
           irq_handler_t.
      Signed-Off-By: NDavid Howells <dhowells@redhat.com>
      (cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
      7d12e780
  16. 04 10月, 2006 1 次提交
  17. 29 9月, 2006 1 次提交