1. 07 Dec, 2010 2 commits
    • Felipe Balbi's avatar
      usb: musb: make all glue layer export struct musb_platform_ops · 743411b3
      Felipe Balbi authored
      preparing to a big refactor on musb code. We need
      to be able to compile in all glue layers (or at
      least all ARM-based ones) together and have a
      working binary.
      
      While preparing for that, we move every glue
      layer to export only one symbol, which is
      a struct musb_platform_ops, and make all
      other functions static.
      
      Later patches will come to allow for compiling
      all glue layers together and have a working
      binary.
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      743411b3
    • Felipe Balbi's avatar
      usb: musb: introduce struct musb_platform_ops · 3ca8abb8
      Felipe Balbi authored
      This will be passed to musb_core by platform glue
      layer in order to make it easier to compile support
      for several HW glue layers.
      
      Later patches will come using this structure and
      also moving HW glue layers to its own platform
      driver; the idea is to be able to handle platform
      peculiarities in a manner which doesn't affect one
      another.
      Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
      3ca8abb8
  2. 03 Dec, 2010 5 commits
    • Greg Kroah-Hartman's avatar
      Merge branch 'sh/ehci' of master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6 into work · fe4bfb30
      Greg Kroah-Hartman authored
      * 'sh/ehci' of master.kernel.org:/pub/scm/linux/kernel/git/lethal/sh-2.6:
        sh: Convert to USB_ARCH_HAS_OHCI/EHCI selects.
        usb: ehci-sh: Add missing ehci helpers.
        usb: ehci-sh: Fix up fault in shutdown path.
        sh: Add EHCI support for SH7786.
        usb: ehci-hcd: Add support for SuperH EHCI.
        usb: ohci-sh: Set IRQ as shared.
      fe4bfb30
    • Greg Kroah-Hartman's avatar
      Merge branch 'for-next' of git://gitorious.org/usb/usb into usb-next · 367576b8
      Greg Kroah-Hartman authored
      * 'for-next' of git://gitorious.org/usb/usb:
        usb: musb: gadget: prevent a NULL pointer dereference
        usb: musb: add names for IRQs in structure resource
        usb: musb: remove board_data parameter from musb_platform_init()
      367576b8
    • Namhyung Kim's avatar
      uwb: fix compiler warning on i1480_est_id_table · 16350a72
      Namhyung Kim authored
      Annotate i1480_est_id_table as '__used' to fix following warning:
      
        CC      drivers/uwb/i1480/i1480-est.o
      drivers/uwb/i1480/i1480-est.c:94: warning: ‘i1480_est_id_table’ defined but not used
      Signed-off-by: default avatarNamhyung Kim <namhyung@gmail.com>
      Cc: David Vrabel <david.vrabel@csr.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      16350a72
    • Namhyung Kim's avatar
      uwb: fix compiler warning on whcrc_id_table · fc33b0eb
      Namhyung Kim authored
      Annotate whcrc_id_table as '__used' to fix following warning:
      
        CC      drivers/uwb/whc-rc.o
      drivers/uwb/whc-rc.c:452: warning: ‘whcrc_id_table’ defined but not used
      Signed-off-by: default avatarNamhyung Kim <namhyung@gmail.com>
      Cc: David Vrabel <david.vrabel@csr.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      fc33b0eb
    • Richard Röjfors's avatar
      usb: g_audio: Fix crash at driver removal · df4fedea
      Richard Röjfors authored
      If g_audio fails to open the sound control device, it crashes at removal:
      
      Insertion:
      [ 4143.836536] g_audio gadget: unable to open sound control device file: /dev/snd/controlC0
      [ 4143.836543] g_audio gadget: we need at least one control device
      [ 4143.836551] g_audio gadget: Linux USB Audio Gadget, version: Dec 18, 2008
      [ 4143.836558] g_audio gadget: g_audio ready
      
      Removal:
      [ 4146.802643] BUG: unable to handle kernel paging request at 00023018
      [ 4146.802655] IP: [<c10af9f5>] filp_close+0xa/0x5b
      [ 4146.802674] *pdpt = 0000000015426001 *pde = 0000000000000000
      [ 4146.802684] Oops: 0000 [#1] PREEMPT SMP
      [ 4146.802692] last sysfs file: /sys/power/state
      [ 4146.802701] Modules linked in: g_audio(-) ioh_udc fuse asix usbnet [last unloaded: g_audio]
      [ 4146.802719]
      [ 4146.802728] Pid: 1394, comm: rmmod Not tainted 2.6.33.5-26.1-ivi #1 To be filled by O.E.M./To be filled by O.E.M.
      [ 4146.802738] EIP: 0060:[<c10af9f5>] EFLAGS: 00010206 CPU: 0
      [ 4146.802746] EIP is at filp_close+0xa/0x5b
      [ 4146.802753] EAX: 00023000 EBX: 00023000 ECX: 00000046 EDX: df842680
      [ 4146.802760] ESI: e071cd4c EDI: df842680 EBP: ddbbbef0 ESP: ddbbbee4
      [ 4146.802768]  DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
      [ 4146.802776] Process rmmod (pid: 1394, ti=ddbba000 task=dd95a4f0 task.ti=ddbba000)
      [ 4146.802782] Stack:
      [ 4146.802787]  d540c280 e071cd4c df2bc000 ddbbbefc e071b82c df11e440 ddbbbf04 e071c622
      [ 4146.802804] <0> ddbbbf28 e071c47f 00000008 e071cd74 df11e464 df2bc01c df2bc000 e071ce68
      [ 4146.802822] <0> 00000880 ddbbbf38 e07fd1b8 e071cef0 00000000 ddbbbf40 e071b9f4 ddbbbf48
      [ 4146.802842] Call Trace:
      [ 4146.802857]  [<e071b82c>] ? gaudio_cleanup+0x87/0xe0 [g_audio]
      [ 4146.802869]  [<e071c622>] ? audio_unbind+0x8/0xc [g_audio]
      [ 4146.802881]  [<e071c47f>] ? composite_unbind+0x8d/0xcb [g_audio]
      [ 4146.802895]  [<e07fd1b8>] ? usb_gadget_unregister_driver+0x7b/0xc0 [ioh_udc]
      [ 4146.802908]  [<e071b9f4>] ? usb_composite_unregister+0x15/0x17 [g_audio]
      [ 4146.802920]  [<e071c633>] ? cleanup+0xd/0xf [g_audio]
      [ 4146.802932]  [<c105a938>] ? sys_delete_module+0x185/0x1dd
      [ 4146.802944]  [<c101c3ea>] ? do_page_fault+0x248/0x276
      [ 4146.802956]  [<c10027d0>] ? sysenter_do_call+0x12/0x26
      [ 4146.802962] Code: 12 5f 3a 00 8b 43 04 8b 40 0c 0f b3 30 3b 73 44 73 03 89 73 44 89 f8 e8 f1 61 3a 00 5b 5e 5f 5d c3 55 89 e5 57 89 d7 56 53 89 c3 <8b> 40 18 85 c0 75 0f 68 32 15 5e c1 31 f6 e8 52 39 3a 00 5a eb
      [ 4146.803058] EIP: [<c10af9f5>] filp_close+0xa/0x5b SS:ESP 0068:ddbbbee4
      [ 4146.803071] CR2: 0000000000023018
      [ 4146.803112] ---[ end trace 0989a7e023da0434 ]---
      
      This patch makes sure not to assign the_card if gaudio_open_snd_dev fails,
      since the parent function will deallocate the card.
      
      Also make sure all filp's in gaudio_open_snd_dev is assigned NULL upon error
      and gaudio_close_snd_dev only cleanups when the filp's are non-NULL.
      Signed-off-by: default avatarRichard Röjfors <richard.rojfors@pelagicore.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      df4fedea
  3. 01 Dec, 2010 13 commits
  4. 30 Nov, 2010 12 commits
  5. 26 Nov, 2010 2 commits
  6. 17 Nov, 2010 3 commits
  7. 16 Nov, 2010 3 commits
    • Alan Stern's avatar
      USB: improve uses of usb_mark_last_busy · c08512c7
      Alan Stern authored
      This patch (as1434) cleans up the uses of usb_mark_last_busy() in
      usbcore.  The function will be called when a device is resumed and
      whenever a usage count is decremented.  A call that was missing from
      the hub driver is added: A hub is used whenever one of its ports gets
      suspended (this prevents hubs from suspending immediately after their
      last child).
      
      In addition, the call to disable autosuspend support for new devices
      by default is moved from usb_detect_quirks() (where it doesn't really
      belong) into usb_new_device() along with all the other runtime-PM
      initializations.  Finally, an extra pm_runtime_get_noresume() is added
      to prevent new devices from autosuspending while they are being
      registered.
      Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      c08512c7
    • Alan Stern's avatar
      USB: use the runtime-PM autosuspend implementation · fcc4a01e
      Alan Stern authored
      This patch (as1428) converts USB over to the new runtime-PM core
      autosuspend framework.  One slightly awkward aspect of the conversion
      is that USB devices will now have two suspend-delay attributes: the
      old power/autosuspend file and the new power/autosuspend_delay_ms
      file.  One expresses the delay time in seconds and the other in
      milliseconds, but otherwise they do the same thing.  The old attribute
      can be deprecated and then removed eventually.
      Signed-off-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      fcc4a01e
    • Ming Lei's avatar
      USB: make usb_mark_last_busy use pm_runtime_mark_last_busy · 6ddf27cd
      Ming Lei authored
      Since the runtime-PM core already defines a .last_busy field in
      device.power, this patch uses it to replace the .last_busy field
      defined in usb_device and uses pm_runtime_mark_last_busy to implement
      usb_mark_last_busy.
      Signed-off-by: default avatarMing Lei <tom.leiming@gmail.com>
      Reviewed-by: default avatarAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      6ddf27cd