)]}'
{
  "log": [
    {
      "commit": "411f5c7a502769ccc0377c5ba36cb0b283847ba8",
      "tree": "2c3a29671e3f923de48c55f94194849264a7bf53",
      "parents": [
        "6d7ed21d17e640b120b902a314143e5ef4917a70",
        "9ced9f03d12d7539e86b0bff5bc750153c976c34"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 19:08:06 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 19:08:06 2011 -0700"
      },
      "message": "Merge branch \u0027devel-stable\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027devel-stable\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm: (289 commits)\n  davinci: DM644x EVM: register MUSB device earlier\n  davinci: add spi devices on tnetv107x evm\n  davinci: add ssp config for tnetv107x evm board\n  davinci: add tnetv107x ssp platform device\n  spi: add ti-ssp spi master driver\n  mfd: add driver for sequencer serial port\n  ARM: EXYNOS4: Implement Clock gating for System MMU\n  ARM: EXYNOS4: Enhancement of System MMU driver\n  ARM: EXYNOS4: Add support for gpio interrupts\n  ARM: S5P: Add function to register gpio interrupt bank data\n  ARM: S5P: Cleanup S5P gpio interrupt code\n  ARM: EXYNOS4: Add missing GPYx banks\n  ARM: S3C64XX: Fix section mismatch from cpufreq init\n  ARM: EXYNOS4: Add keypad device to the SMDKV310\n  ARM: EXYNOS4: Update clocks for keypad\n  ARM: EXYNOS4: Update keypad base address\n  ARM: EXYNOS4: Add keypad device helpers\n  ARM: EXYNOS4: Add support for SATA on ARMLEX4210\n  plat-nomadik: make GPIO interrupts work with cpuidle ApSleep\n  mach-u300: define a dummy filter function for coh901318\n  ...\n\nFix up various conflicts in\n - arch/arm/mach-exynos4/cpufreq.c\n - arch/arm/mach-mxs/gpio.c\n - drivers/net/Kconfig\n - drivers/tty/serial/Kconfig\n - drivers/tty/serial/Makefile\n - drivers/usb/gadget/fsl_mxc_udc.c\n - drivers/video/Kconfig\n"
    },
    {
      "commit": "63a93699c6a58795b854ff573542a08367684dae",
      "tree": "057ab4cbde66862c51867dde030be69a2fa7073f",
      "parents": [
        "16d8775700f1815076f879719ce14b33f50a3171",
        "21bd6d37cf23e643020bf28b41844ff0040c9393"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 19:05:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 19:05:40 2011 -0700"
      },
      "message": "Merge branch \u0027remove\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm\n\n* \u0027remove\u0027 of master.kernel.org:/home/rmk/linux-2.6-arm:\n  ARM: 6629/2: aaec2000: remove support for mach-aaec2000\n  ARM: lh7a40x: remove unmaintained platform support\n\nFix up trivial conflicts in\n - arch/arm/mach-{aaec2000,lh7a40x}/include/mach/memory.h (removed)\n - drivers/usb/gadget/Kconfig (USB_[GADGET_]LH7A40X removed, others added)\n"
    },
    {
      "commit": "4c5811bf463b0ef82fabbd1708f8bb2d753aeb18",
      "tree": "ff37d31217c3804ca05de21a55a9b5ca1ca818b2",
      "parents": [
        "f74b9444192c60603020c61d7915b72893137edc",
        "9f15444fefdb33509132ff5c9be60cb315c44cb2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:28:10 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 17:28:10 2011 -0700"
      },
      "message": "Merge branch \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6\n\n* \u0027devicetree/next\u0027 of git://git.secretlab.ca/git/linux-2.6: (21 commits)\n  tty: serial: altera_jtaguart: Add device tree support\n  tty: serial: altera_uart: Add devicetree support\n  dt: eliminate of_platform_driver shim code\n  dt: Eliminate of_platform_{,un}register_driver\n  dt/serial: Eliminate users of of_platform_{,un}register_driver\n  dt/usb: Eliminate users of of_platform_{,un}register_driver\n  dt/video: Eliminate users of of_platform_{,un}register_driver\n  dt/net: Eliminate users of of_platform_{,un}register_driver\n  dt/sound: Eliminate users of of_platform_{,un}register_driver\n  dt/spi: Eliminate users of of_platform_{,un}register_driver\n  dt: uartlite: merge platform and of_platform driver bindings\n  dt: xilinx_hwicap: merge platform and of_platform driver bindings\n  ipmi: convert OF driver to platform driver\n  leds/leds-gpio: merge platform_driver with of_platform_driver\n  dt/sparc: Eliminate users of of_platform_{,un}register_driver\n  dt/powerpc: Eliminate users of of_platform_{,un}register_driver\n  dt/powerpc: move of_bus_type infrastructure to ibmebus\n  drivercore/dt: add a match table pointer to struct device\n  dt: Typo fix.\n  altera_ps2: Add devicetree support\n  ...\n"
    },
    {
      "commit": "971f115a50afbe409825c9f3399d5a3b9aca4381",
      "tree": "cb42dc07a032e325f22b64d961587c081225c6d6",
      "parents": [
        "2e270d84223262a38d4755c61d55f5c73ea89e56",
        "500132a0f26ad7d9916102193cbc6c1b1becb373"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 15:04:26 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Mar 16 15:04:26 2011 -0700"
      },
      "message": "Merge branch \u0027usb-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6\n\n* \u0027usb-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (172 commits)\n  USB: Add support for SuperSpeed isoc endpoints\n  xhci: Clean up cycle bit math used during stalls.\n  xhci: Fix cycle bit calculation during stall handling.\n  xhci: Update internal dequeue pointers after stalls.\n  USB: Disable auto-suspend for USB 3.0 hubs.\n  USB: Remove bogus USB_PORT_STAT_SUPER_SPEED symbol.\n  xhci: Return canceled URBs immediately when host is halted.\n  xhci: Fixes for suspend/resume of shared HCDs.\n  xhci: Fix re-init on power loss after resume.\n  xhci: Make roothub functions deal with device removal.\n  xhci: Limit roothub ports to 15 USB3 \u0026 31 USB2 ports.\n  xhci: Return a USB 3.0 hub descriptor for USB3 roothub.\n  xhci: Register second xHCI roothub.\n  xhci: Change xhci_find_slot_id_by_port() API.\n  xhci: Refactor bus suspend state into a struct.\n  xhci: Index with a port array instead of PORTSC addresses.\n  USB: Set usb_hcd-\u003estate and flags for shared roothubs.\n  usb: Make core allocate resources per PCI-device.\n  usb: Store bus type in usb_hcd, not in driver flags.\n  usb: Change usb_hcd-\u003ebandwidth_mutex to a pointer.\n  ...\n"
    },
    {
      "commit": "ba0a4d9aaae789a6a632968b27c21d49b858b13a",
      "tree": "22e76438fe70720fa89d683586009cc028bceb0e",
      "parents": [
        "01a1fdb9a7afa5e3c14c9316d6f380732750b4e4"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Feb 23 18:13:43 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:56 2011 -0700"
      },
      "message": "xhci: Clean up cycle bit math used during stalls.\n\nUse XOR to invert the cycle bit, instead of a more complicated\ncalculation.  Eliminate a check for the link TRB type in find_trb_seg().\nWe know that there will always be a link TRB at the end of a segment, so\nxhci_segment-\u003etrbs[TRBS_PER_SEGMENT - 1] will always have a link TRB type.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nTested-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "01a1fdb9a7afa5e3c14c9316d6f380732750b4e4",
      "tree": "a8a27f453ca6ce5e5919f77a51368020887f5674",
      "parents": [
        "bf161e85fb153c0dd5a95faca73fd6a9d237c389"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Feb 23 18:12:29 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:54 2011 -0700"
      },
      "message": "xhci: Fix cycle bit calculation during stall handling.\n\nWhen an endpoint stalls, we need to update the xHCI host\u0027s internal\ndequeue pointer to move it past the stalled transfer.  This includes\nupdating the cycle bit (TRB ownership bit) if we have moved the dequeue\npointer past a link TRB with the toggle cycle bit set.\n\nWhen we\u0027re trying to find the new dequeue segment, find_trb_seg() is\nsupposed to keep track of whether we\u0027ve passed any link TRBs with the\ntoggle cycle bit set.  However, this while loop\u0027s body\n\n\twhile (cur_seg-\u003etrbs \u003e trb ||\n\t\t\t\u0026cur_seg-\u003etrbs[TRBS_PER_SEGMENT - 1] \u003c trb) {\n\nWill never get executed if the ring only contains one segment.\nfind_trb_seg() will return immediately, without updating the new cycle\nbit.  Since find_trb_seg() has no idea where in the segment the TD that\nstalled was, make the caller, xhci_find_new_dequeue_state(), check for\nthis special case and update the cycle bit accordingly.\n\nThis patch should be queued to kernels all the way back to 2.6.31.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nTested-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "bf161e85fb153c0dd5a95faca73fd6a9d237c389",
      "tree": "950c8f7048754e0603e516b295badb869e832e2d",
      "parents": [
        "0c9ffe0f6286a02bf82f8d7fb7274aec2ad977f1"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Feb 23 15:46:42 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:53 2011 -0700"
      },
      "message": "xhci: Update internal dequeue pointers after stalls.\n\nWhen an endpoint stalls, the xHCI driver must move the endpoint ring\u0027s\ndequeue pointer past the stalled transfer.  To do that, the driver issues\na Set TR Dequeue Pointer command, which will complete some time later.\n\nTakashi was having issues with USB 1.1 audio devices that stalled, and his\nanalysis of the code was that the old code would not update the xHCI\ndriver\u0027s ring dequeue pointer after the command completes.  However, the\ndequeue pointer is set in xhci_find_new_dequeue_state(), just before the\nset command is issued to the hardware.\n\nSetting the dequeue pointer before the Set TR Dequeue Pointer command\ncompletes is a dangerous thing to do, since the xHCI hardware can fail the\ncommand.  Instead, store the new dequeue pointer in the xhci_virt_ep\nstructure, and update the ring\u0027s dequeue pointer when the Set TR dequeue\npointer command completes.\n\nWhile we\u0027re at it, make sure we can\u0027t queue another Set TR Dequeue Command\nwhile the first one is still being processed.  This just won\u0027t work with\nthe internal xHCI state code.  I\u0027m still not sure if this is the right\nthing to do, since we might have a case where a driver queues multiple\nURBs to a control ring, one of the URBs Stalls, and then the driver tries\nto cancel the second URB.  There may be a race condition there where the\nxHCI driver might try to issue multiple Set TR Dequeue Pointer commands,\nbut I would have to think very hard about how the Stop Endpoint and\ncancellation code works.  Keep the fix simple until when/if we run into\nthat case.\n\nThis patch should be queued to kernels all the way back to 2.6.31.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nTested-by: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "131dec344d5e41f01e4791aa4c80eb4bdb1e5274",
      "tree": "5ec2e11acfa9f21a4aeb4137721786b2ea67cd83",
      "parents": [
        "c6cc27c782e3a64cced0fcf1d6f492c8d8881c76"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Mon Dec 06 21:00:19 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:50 2011 -0700"
      },
      "message": "USB: Remove bogus USB_PORT_STAT_SUPER_SPEED symbol.\n\nUSB_PORT_STAT_SUPER_SPEED is a made up symbol that the USB core used to\ntrack whether USB ports had a SuperSpeed device attached.  This is a\nlinux-internal symbol that was used when SuperSpeed and non-SuperSpeed\ndevices would show up under the same xHCI roothub.  This particular\nport status is never returned by external USB 3.0 hubs.  (Instead they\nhave a USB_PORT_STAT_SPEED_5GBPS that uses a completely different speed\nmask.)\n\nNow that the xHCI driver registers two roothubs, USB 3.0 devices will only\nshow up under USB 3.0 hubs.  Rip out USB_PORT_STAT_SUPER_SPEED and replace\nit with calls to hub_is_superspeed().\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "c6cc27c782e3a64cced0fcf1d6f492c8d8881c76",
      "tree": "b671f8101eb7513343f8bb02a7e00712798aa0ed",
      "parents": [
        "b320937972d456db2a46fdcbc6bebc4dcdc9daa4"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Mar 11 10:20:58 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:48 2011 -0700"
      },
      "message": "xhci: Return canceled URBs immediately when host is halted.\n\nWhen the xHCI host controller is halted, it won\u0027t respond to commands\nplaced on the command ring.  So if an URB is cancelled after the first\nroothub is deallocated, it will try to place a stop endpoint command on\nthe command ring, which will fail.  The command watchdog timer will fire\nafter five seconds, and the host controller will be marked as dying, and\nall URBs will be completed.\n\nAdd a flag to the xHCI\u0027s internal state variable for when the host\ncontroller is halted.  Immediately return the canceled URB if the host\ncontroller is halted.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "b320937972d456db2a46fdcbc6bebc4dcdc9daa4",
      "tree": "a41cfa6897e7b2d6dfd79e43cfb6c77dbd9bf6a7",
      "parents": [
        "65b22f93fde320b34d43e4a3978e1b52b1bcc279"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Mon Mar 07 11:24:07 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:47 2011 -0700"
      },
      "message": "xhci: Fixes for suspend/resume of shared HCDs.\n\nMake sure the HCD_FLAG_HW_ACCESSIBLE flag is mirrored by both roothubs,\nsince it refers to whether the shared hardware is accessible.  Make sure\neach bus is marked as suspended by setting usb_hcd-\u003estate to\nHC_STATE_SUSPENDED when the PCI host controller is resumed.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "65b22f93fde320b34d43e4a3978e1b52b1bcc279",
      "tree": "087312018a0076866f28e056f1481db76cfe2b78",
      "parents": [
        "f9de8151877b4f01cc8e124b0e213a6c6c78d970"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Dec 17 12:35:05 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:45 2011 -0700"
      },
      "message": "xhci: Fix re-init on power loss after resume.\n\nWhen a host controller has lost power during a suspend, we must\nreinitialize it.  Now that the xHCI host has two roothubs, xhci_run() and\nxhci_stop() expect to be called with both usb_hcd structures.  Be sure\nthat the re-initialization code in xhci_resume() mirrors the process the\nUSB PCI probe function uses.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "f9de8151877b4f01cc8e124b0e213a6c6c78d970",
      "tree": "fa1fb7231c83430c098f20511ab99909fe1c2544",
      "parents": [
        "d30b2a208108a0b0fdeae7006b8824d9be16ca96"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Oct 29 14:37:23 2010 -0700"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:44 2011 -0700"
      },
      "message": "xhci: Make roothub functions deal with device removal.\n\nReturn early in the roothub control and status functions if the xHCI host\ncontroller is not electrically present in the system (register reads\nreturn all \"fs\").  This issue only shows up when the xHCI driver registers\ntwo roothubs and the host controller is removed from the system.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "d30b2a208108a0b0fdeae7006b8824d9be16ca96",
      "tree": "43df86628f31b4ad46d82258c8d8a1a8e88ae625",
      "parents": [
        "4bbb0ace9a3de8392527e3c87926309d541d3b00"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Tue Nov 23 10:42:22 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:42 2011 -0700"
      },
      "message": "xhci: Limit roothub ports to 15 USB3 \u0026 31 USB2 ports.\n\nThe USB core allocates a USB 2.0 roothub descriptor that has room for 31\n(USB_MAXCHILDREN) ports\u0027 worth of DeviceRemovable and PortPwrCtrlMask\nfields.  Limit the number of USB 2.0 roothub ports accordingly.  I don\u0027t\nexpect to run into this limitation ever, but this prevents a buffer\noverflow issue in the roothub descriptor filling code.\n\nSimilarly, a USB 3.0 hub can only have 15 downstream ports, so limit the\nUSB 3.0 roothub to 15 USB 3.0 ports.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "4bbb0ace9a3de8392527e3c87926309d541d3b00",
      "tree": "0b71bcd26cd66b4924c2e8997139a965e9b4304f",
      "parents": [
        "f6ff0ac878eb420011fa2448851dd48c3a7e7b31"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Mon Nov 29 16:14:37 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:41 2011 -0700"
      },
      "message": "xhci: Return a USB 3.0 hub descriptor for USB3 roothub.\n\nReturn the correct xHCI roothub descriptor, based on whether the roothub\nis marked as USB 3.0 or USB 2.0 in usb_hcd-\u003ebcdUSB.  Fill in\nDeviceRemovable for the USB 2.0 and USB 3.0 roothub descriptors, using the\nDevice Removable bit in the port status and control registers.  xHCI is\nthe first host controller to actually properly set these bits (other hosts\nsay all devices are removable).\n\nWhen userspace asks for a USB 2.0-style hub descriptor for the USB 3.0\nroothub, stall the endpoint.  This is what real external USB 3.0 hubs do,\nand we don\u0027t want to return a descriptor that userspace didn\u0027t ask for.\n\nThe USB core is already fixed to always ask for USB 3.0-style hub\ndescriptors.  Only usbfs (typically lsusb) will ask for the USB 2.0-style\nhub descriptors.  This has already been fixed in usbutils version 0.91,\nbut the kernel needs to deal with older usbutils versions.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "f6ff0ac878eb420011fa2448851dd48c3a7e7b31",
      "tree": "4073e9de7541030ee7b775d118a1ee1d1821a0c7",
      "parents": [
        "5233630fcdd6f7d415dcbed264031439cab73f9d"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Thu Dec 16 11:21:10 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:39 2011 -0700"
      },
      "message": "xhci: Register second xHCI roothub.\n\nThis patch changes the xHCI driver to allocate two roothubs.  This touches\nthe driver initialization and shutdown paths, roothub emulation code, and\nport status change event handlers.  This is a rather large patch, but it\ncan\u0027t be broken up, or it would break git-bisect.\n\nMake the xHCI driver register its own PCI probe function.  This will call\nthe USB core to create the USB 2.0 roothub, and then create the USB 3.0\nroothub.  This gets the code for registering a shared roothub out of the\nUSB core, and allows other HCDs later to decide if and how many shared\nroothubs they want to allocate.\n\nMake sure the xHCI\u0027s reset method marks the xHCI host controller\u0027s primary\nroothub as the USB 2.0 roothub.  This ensures that the high speed bus will\nbe processed first when the PCI device is resumed, and any USB 3.0 devices\nthat have migrated over to high speed will migrate back after being reset.\nThis ensures that USB persist works with these odd devices.\n\nThe reset method will also mark the xHCI USB2 roothub as having an\nintegrated TT.  Like EHCI host controllers with a \"rate matching hub\" the\nxHCI USB 2.0 roothub doesn\u0027t have an OHCI or UHCI companion controller.\nIt doesn\u0027t really have a TT, but we\u0027ll lie and say it has an integrated\nTT.  We need to do this because the USB core will reject LS/FS devices\nunder a HS hub without a TT.\n\nOther details:\n-------------\n\nThe roothub emulation code is changed to return the correct number of\nports for the two roothubs.  For the USB 3.0 roothub, it only reports the\nUSB 3.0 ports.  For the USB 2.0 roothub, it reports all the LS/FS/HS\nports.  The code to disable a port now checks the speed of the roothub,\nand refuses to disable SuperSpeed ports under the USB 3.0 roothub.\n\nThe code for initializing a new device context must be changed to set the\nproper roothub port number.  Since we\u0027ve split the xHCI host into two\nroothubs, we can\u0027t just use the port number in the ancestor hub.  Instead,\nwe loop through the array of hardware port status register speeds and find\nthe Nth port with a similar speed.\n\nThe port status change event handler is updated to figure out whether the\nport that reported the change is a USB 3.0 port, or a non-SuperSpeed port.\nOnce it figures out the port speed, it kicks the proper roothub.\n\nThe function to find a slot ID based on the port index is updated to take\ninto account that the two roothubs will have over-lapping port indexes.\nIt checks that the virtual device with a matching port index is the same\nspeed as the passed in roothub.\n\nThere\u0027s also changes to the driver initialization and shutdown paths:\n\n 1. Make sure that the xhci_hcd pointer is shared across the two\n    usb_hcd structures.  The xhci_hcd pointer is allocated and the\n    registers are mapped in when xhci_pci_setup() is called with the\n    primary HCD.  When xhci_pci_setup() is called with the non-primary\n    HCD, the xhci_hcd pointer is stored.\n\n 2. Make sure to set the sg_tablesize for both usb_hcd structures.  Set\n    the PCI DMA mask for the non-primary HCD to allow for 64-bit or 32-bit\n    DMA.  (The PCI DMA mask is set from the primary HCD further down in\n    the xhci_pci_setup() function.)\n\n 3. Ensure that the host controller doesn\u0027t start kicking khubd in\n    response to port status changes before both usb_hcd structures are\n    registered.  xhci_run() only starts the xHC running once it has been\n    called with the non-primary roothub.  Similarly, the xhci_stop()\n    function only halts the host controller when it is called with the\n    non-primary HCD.  Then on the second call, it resets and cleans up the\n    MSI-X irqs.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "5233630fcdd6f7d415dcbed264031439cab73f9d",
      "tree": "f877073953835d8989c83ab8473cf2100b64dd84",
      "parents": [
        "20b67cf51fa606442bb343afad0ee1a393a6afb3"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Thu Dec 16 10:49:09 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:38 2011 -0700"
      },
      "message": "xhci: Change xhci_find_slot_id_by_port() API.\n\nxhci_find_slot_id_by_port() tries to map the port index to the slot ID for\nthe USB device.  In the future, there will be two xHCI roothubs, and their\nport indices will overlap.  Therefore, xhci_find_slot_id_by_port() will\nneed to use information in the roothub\u0027s usb_hcd structure to map the port\nindex and roothub speed to the right slot ID.\n\nAdd a new parameter to xhci_find_slot_id_by_port(), in order to pass in\nthe roothub\u0027s usb_hcd structure.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "20b67cf51fa606442bb343afad0ee1a393a6afb3",
      "tree": "1d85e8b93aff185211d065a5113beaeb68cfcb26",
      "parents": [
        "5308a91b9fc1a8f94b860c2589b06908a97cba7e"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Dec 15 12:47:14 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:36 2011 -0700"
      },
      "message": "xhci: Refactor bus suspend state into a struct.\n\nThere are several variables in the xhci_hcd structure that are related to\nbus suspend and resume state.  There are a couple different port status\narrays that are accessed by port index.  Move those variables into a\nseparate structure, xhci_bus_state.  Stash that structure in xhci_hcd.\n\nWhen we have two roothhubs that can be suspended and resumed separately,\nwe can have two xhci_bus_states, and index into the port arrays in each\nstructure with the fake roothub port index (not the real hardware port\nindex).\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "5308a91b9fc1a8f94b860c2589b06908a97cba7e",
      "tree": "4f97e7ea4c3280b367b951ea3b1d3f07c22c1b46",
      "parents": [
        "ff9d78b36f76687c91c67b9f4c5c33bc888ed2f9"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Dec 01 11:34:59 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:35 2011 -0700"
      },
      "message": "xhci: Index with a port array instead of PORTSC addresses.\n\nIn the upcoming patches, the roothub emulation code will need to return\nport status and port change buffers based on whether they are called with\nthe xHCI USB 2.0 or USB 3.0 roothub.  To facilitate that, make the roothub\ncode index into an array of port addresses with wIndex, rather than\ncalculating the address using the offset and the address of the PORTSC\nregisters.  Later we can set the port array to be the array of USB 3.0\nport addresses, or the USB 2.0 port addresses, depending on the roothub\npassed in.\n\nCreate a temporary (statically sized) port array and fill it in with both\nUSB 3.0 and USB 2.0 port addresses.  This is inefficient to do for every\nroothub call, but this is needed for git bisect compatibility.  The\ntemporary port array will be deleted in a subsequent patch.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "ff9d78b36f76687c91c67b9f4c5c33bc888ed2f9",
      "tree": "c269f0ec7f830a478ab5738f7579221d7caecf5d",
      "parents": [
        "c56354378426e550aaf6ddf3983f502a8fddeab5"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Thu Dec 02 19:10:02 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:23:33 2011 -0700"
      },
      "message": "USB: Set usb_hcd-\u003estate and flags for shared roothubs.\n\nThe hcd-\u003eflags are in a sorry state.  Some of them are clearly specific to\nthe particular roothub (HCD_POLL_RH, HCD_POLL_PENDING, and\nHCD_WAKEUP_PENDING), but some flags are related to PCI device state\n(HCD_HW_ACCESSIBLE and HCD_SAW_IRQ).  This is an issue when one PCI device\ncan have two roothubs that share the same IRQ line and hardware.\n\nMake sure to set HCD_FLAG_SAW_IRQ for both roothubs when an interrupt is\nserviced, or an URB is unlinked without an interrupt.  (We can\u0027t tell if\nthe host actually serviced an interrupt for a particular bus, but we can\ntell it serviced some interrupt.)\n\nHCD_HW_ACCESSIBLE is set once by usb_add_hcd(), which is set for both\nroothubs as they are added, so it doesn\u0027t need to be modified.\nHCD_POLL_RH and HCD_POLL_PENDING are only checked by the USB core, and\nthey are never set by the xHCI driver, since the roothub never needs to be\npolled.\n\nThe usb_hcd\u0027s state field is a similar mess.  Sometimes the state applies\nto the underlying hardware: HC_STATE_HALT, HC_STATE_RUNNING, and\nHC_STATE_QUIESCING.  But sometimes the state refers to the roothub state:\nHC_STATE_RESUMING and HC_STATE_SUSPENDED.\n\nAlan Stern recently made the USB core not rely on the hcd-\u003estate variable.\nInternally, the xHCI driver still checks for HC_STATE_SUSPENDED, so leave\nthat code in.  Remove all references to HC_STATE_HALT, since the xHCI\ndriver only sets and doesn\u0027t test those variables.  We still have to set\nHC_STATE_RUNNING, since Alan\u0027s patch has a bug that means the roothub\nwon\u0027t get registered if we don\u0027t set that.\n\nAlan\u0027s patch made the USB core check a different variable when trying to\ndetermine whether to suspend a roothub.  The xHCI host has a split\nroothub, where two buses are registered for one PCI device.  Each bus in\nthe xHCI split roothub can be suspended separately, but both buses must be\nsuspended before the PCI device can be suspended.  Therefore, make sure\nthat the USB core checks HCD_RH_RUNNING() for both roothubs before\nsuspending the PCI host.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "b02d0ed677acb3465e7600366f2353413bf24074",
      "tree": "8efdbb5ea07a387a687aa24f0bcda8ba3a454d76",
      "parents": [
        "214f76f7d9198ddd090bd927a4bcd49391bfcd36"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Tue Oct 26 11:03:44 2010 -0700"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:13 2011 -0700"
      },
      "message": "xhci: Change hcd_priv into a pointer.\n\nInstead of allocating space for the whole xhci_hcd structure at the end of\nusb_hcd, make the USB core allocate enough space for a pointer to the\nxhci_hcd structure.  This will make it easy to share the xhci_hcd\nstructure across the two roothubs (the USB 3.0 usb_hcd and the USB 2.0\nusb_hcd).\n\nDeallocate the xhci_hcd at PCI remove time, so the hcd_priv will be\ndeallocated after the usb_hcd is deallocated.  We do this by registering a\ndifferent PCI remove function that calls the usb_hcd_pci_remove()\nfunction, and then frees the xhci_hcd.  usb_hcd_pci_remove() calls\nkput() on the usb_hcd structure, which will deallocate the memory that\ncontains the hcd_priv pointer, but not the memory it points to.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "214f76f7d9198ddd090bd927a4bcd49391bfcd36",
      "tree": "23caeedac25f87f12662850e861dc994b21420c9",
      "parents": [
        "aa1b13efb7cfa9f7bf4942c1e858463e335c9500"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Tue Oct 26 11:22:02 2010 -0700"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:13 2011 -0700"
      },
      "message": "xhci: Always use usb_hcd in URB instead of converting xhci_hcd.\n\nMake sure to call into the USB core\u0027s link, unlink, and giveback URB\nfunctions with the usb_hcd pointer found by using urb-\u003edev-\u003ebus.  This\nwill avoid confusion later, when the xHCI driver will deal with URBs from\ntwo separate buses (the USB 3.0 roothub and the faked USB 2.0 roothub).\n\nAssume xhci_urb_dequeue() will be called with the proper usb_hcd.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "aa1b13efb7cfa9f7bf4942c1e858463e335c9500",
      "tree": "3f5c6c8527d5998d615986cf67a2bce46399d09b",
      "parents": [
        "22c6a35d41f71b5b40ba8debcb8bd4e8e291ae43"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Thu Mar 03 05:40:51 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:12 2011 -0700"
      },
      "message": "xhci: Modify check for TT info.\n\nCommit d199c96d by Alan Stern ensured that low speed and full speed\ndevices below a high speed hub without a transaction translator (TT) would\nnever get enumerated.  Simplify the check for a TT in the xHCI virtual\ndevice allocation to only check if the usb_device references a parent\u0027s\nTT.\n\nMake sure not to set the TT information on LS/FS devices directly\nconnected to the roothub.  The xHCI host doesn\u0027t really have a TT, and the\nhost will throw an error when those virtual device TT fields are set for a\ndevice connected to the roothub.  We need this check because the xHCI\ndriver will shortly register two roothubs: a USB 2.0 roothub and a USB 3.0\nroothub.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "dbe79bbe9dcb22cb3651c46f18943477141ca452",
      "tree": "86e2dd608fd6ae7902b4abfdfbcf1969980386e3",
      "parents": [
        "ad73dff32e04cad1ff2af89512bf489224b503cc"
      ],
      "author": {
        "name": "John Youn",
        "email": "John.Youn@synopsys.com",
        "time": "Mon Sep 17 00:00:00 2001 -0700"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:11 2011 -0700"
      },
      "message": "USB 3.0 Hub Changes\n\nUpdate the USB core to deal with USB 3.0 hubs.  These hubs have a slightly\ndifferent hub descriptor than USB 2.0 hubs, with a fixed (rather than\nvariable length) size.  Change the USB core\u0027s hub descriptor to have a\nunion for the last fields that differ.  Change the host controller drivers\nthat access those last fields (DeviceRemovable and PortPowerCtrlMask) to\nuse the union.\n\nTranslate the new version of the hub port status field into the old\nversion that khubd understands.  (Note: we need to fix it to translate the\nroothub\u0027s port status once we stop converting it to USB 2.0 hub status\ninternally.)\n\nAdd new code to handle link state change status.  Send out new control\nmessages that are needed for USB 3.0 hubs, like Set Hub Depth.\n\nThis patch is a modified version of the original patch submitted by John\nYoun.  It\u0027s updated to reflect the removal of the \"bitmap\" #define, and\nchange the hub descriptor accesses of a couple new host controller\ndrivers.\n\nSigned-off-by: John Youn \u003cjohnyoun@synopsys.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: Nobuhiro Iwamatsu \u003cnobuhiro.iwamatsu.yj@renesas.com\u003e\nCc: Inaky Perez-Gonzalez \u003cinaky.perez-gonzalez@intel.com\u003e\nCc: Tony Olech \u003ctony.olech@elandigitalsystems.com\u003e\nCc: \"Robert P. J. Day\" \u003crpjday@crashcourse.ca\u003e\nCc: Max Vozeler \u003cmvz@vozeler.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Yoshihiro Shimoda \u003cyoshihiro.shimoda.uh@renesas.com\u003e\nCc: Rodolfo Giometti \u003cgiometti@linux.it\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nCc: Sebastian Siewior \u003cbigeasy@linutronix.de\u003e\nCc: Lothar Wassmann \u003cLW@KARO-electronics.de\u003e\nCc: Olav Kongas \u003cok@artecdesign.ee\u003e\nCc: Martin Fuzzey \u003cmfuzzey@gmail.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "ad73dff32e04cad1ff2af89512bf489224b503cc",
      "tree": "0c8728f65b5ccc7c1f9752af4347211933c65662",
      "parents": [
        "4814030ce11f08350b7a91573487ad4b600dae34"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Mar 11 13:49:55 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:10 2011 -0700"
      },
      "message": "xhci: Remove references to HC_STATE_RUNNING.\n\nThe USB core will set hcd-\u003estate to HC_STATE_RUNNING before calling\nxhci_run, so there\u0027s no point in setting it twice.  The USB core also\ndoesn\u0027t pay attention to HC_STATE_RUNNING on the resume path anymore; it\nuses HCD_RH_RUNNING(), which looks at hcd-\u003eflags \u0026 (1U \u003c\u003c\nHCD_FLAG_RH_RUNNING.  Therefore, it\u0027s safe to remove the state set in\nxhci_bus_resume().\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "ac04e6ff3e32699920ae75b22e2bec7f7c631434",
      "tree": "0b78396622fc9a17f933e2ca3541be4d5f2a4512",
      "parents": [
        "bdfca5025a159c8bb966e3b87b0c084dd1f831a9"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Mar 11 08:47:33 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:10 2011 -0700"
      },
      "message": "xhci: Remove references to HC_STATE_HALT.\n\nThe xHCI driver doesn\u0027t ever test hcd-\u003estate for HC_STATE_HALT.  The USB\ncore recently stopped using it internally, so there\u0027s no point in setting\nit in the driver.  We still need to set HC_STATE_RUNNING in order to make\nit past the USB core\u0027s hcd-\u003estate check in register_roothub().\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "bdfca5025a159c8bb966e3b87b0c084dd1f831a9",
      "tree": "c49bd0a596410686480933ac60beb2360c8a8ee9",
      "parents": [
        "019a35f1142b1cd153c8a38338515e633ec0cf77"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Thu Jan 06 15:43:39 2011 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:09 2011 -0700"
      },
      "message": "xHCI: prolong host controller halt time limit\n\nxHCI 1.0 spec specifies the xHC shall halt within 16ms after software clears\nRun/Stop bit. In xHCI 0.96 spec the time limit is 16 microframes (2ms), it\u0027s\ntoo short and often cause dmesg shows \"Host controller not halted, aborting\nreset.\" message when rmmod xhci-hcd.\n\nModify the time limit to comply with xHCI 1.0 specification and prevents the\nwarning message showing when remove xhci-hcd.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "019a35f1142b1cd153c8a38338515e633ec0cf77",
      "tree": "a61347c56b71a62d9774d3012f7dd449b174674f",
      "parents": [
        "518e848ea8e2932ce18ce2daef8ad5f55a145f27"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Thu Jan 06 15:43:17 2011 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:09 2011 -0700"
      },
      "message": "xHCI: Remove redundant variable in xhci_resume()\n\nSet hcd-\u003estate \u003d HC_STATE_SUSPENDED if there is a power loss during system\nresume or the system is hibernated, otherwise leave it be. The variable\nold_state is redundant and made an unreachable code path, so remove it.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "518e848ea8e2932ce18ce2daef8ad5f55a145f27",
      "tree": "623b2a258580f6fd28584d83c276c133ed423a15",
      "parents": [
        "1d5810b6923c76fc95e52d9d3491c91824c2f075"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Wed Dec 15 11:56:29 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:08 2011 -0700"
      },
      "message": "xhci: Rename variables and reduce register reads.\n\nThe xhci_bus_suspend() and xhci_bus_resume() functions are a bit hard to\nread, because they have an ambiguously named variable \"port\".  Rename it\nto \"port_index\".  Introduce a new temporary variable, \"max_ports\" that\nholds the maximum number of roothub ports the host controller supports.\nThis will reduce the number of register reads, and make it easy to change\nthe maximum number of ports when there are two roothubs.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "1d5810b6923c76fc95e52d9d3491c91824c2f075",
      "tree": "714c95e2f75cf703442abb4dd8f2cb522200616d",
      "parents": [
        "abc4f9b099e9e7db3f6f945210aee125571c236d"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Thu Dec 09 14:52:41 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:08 2011 -0700"
      },
      "message": "xhci: Rework port suspend structures for limited ports.\n\nThe USB core only allows up to 31 (USB_MAXCHILDREN) ports under a roothub.\nThe xHCI driver keeps track of which ports are suspended, which ports have\na suspend change bit set, and what time the port will be done resuming.\nIt keeps track of the first two by setting a bit in a u32 variable,\nsuspended_ports or port_c_suspend.  The xHCI driver currently assumes we\ncan have up to 256 ports under a roothub, so it allocates an array of 8\nu32 variables for both suspended_ports and port_c_suspend.  It also\nallocates a 256-element array to keep track of when the ports will be done\nresuming.\n\nSince we can only have 31 roothub ports, we only need to use one u32 for\neach of the suspend state and change variables.  We simplify the bit math\nthat\u0027s trying to index into those arrays and set the correct bit, if we\nassume wIndex never exceeds 30.  (wIndex is zero-based after it\u0027s\ndecremented from the value passed in from the USB core.)  Finally, we\nchange the resume_done array to only hold 31 elements.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: Andiry Xu \u003candiry.xu@amd.com\u003e\n"
    },
    {
      "commit": "da13051cc756756f10b2da8ea97b05bdf84bd7bb",
      "tree": "d4036bb80a731da1eeaa57211afe37f3fc000056",
      "parents": [
        "0b8ca72a23df365a413e03f991bc6b8179dee13f"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Tue Nov 30 15:55:51 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:07 2011 -0700"
      },
      "message": "USB: Remove bitmap #define from hcd.h\n\nUsing a #define to redefine a common variable name is a bad thing,\nespecially when the #define is in a header.  include/linux/usb/hcd.h\nredefined bitmap to DeviceRemovable to avoid typing a long field in the\nhub descriptor.  This has unintended side effects for files like\ndrivers/usb/core/devio.c that include that file, since another header\nincluded after hcd.h has different variables named bitmap.\n\nRemove the bitmap #define and replace instances of it in the host\ncontroller code.  Cleanup the spaces around function calls and square\nbrackets while we\u0027re at it.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: Nobuhiro Iwamatsu \u003cnobuhiro.iwamatsu.yj@renesas.com\u003e\nCc: Inaky Perez-Gonzalez \u003cinaky.perez-gonzalez@intel.com\u003e\nCc: Tony Olech \u003ctony.olech@elandigitalsystems.com\u003e\nCc: \"Robert P. J. Day\" \u003crpjday@crashcourse.ca\u003e\nCc: Max Vozeler \u003cmvz@vozeler.com\u003e\nCc: Tejun Heo \u003ctj@kernel.org\u003e\nCc: Yoshihiro Shimoda \u003cyoshihiro.shimoda.uh@renesas.com\u003e\nCc: Rodolfo Giometti \u003cgiometti@linux.it\u003e\nCc: Mike Frysinger \u003cvapier@gentoo.org\u003e\nCc: Anton Vorontsov \u003cavorontsov@mvista.com\u003e\nCc: Sebastian Siewior \u003cbigeasy@linutronix.de\u003e\nCc: Lothar Wassmann \u003cLW@KARO-electronics.de\u003e\nCc: Olav Kongas \u003cok@artecdesign.ee\u003e\nCc: Martin Fuzzey \u003cmfuzzey@gmail.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\n"
    },
    {
      "commit": "0b8ca72a23df365a413e03f991bc6b8179dee13f",
      "tree": "cbd91979d8c085346638e00bf07f0012d3fd83b7",
      "parents": [
        "db7c7c0aeef51dba12d877875b8deb78d9886647"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Thu Oct 21 12:22:28 2010 -0700"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Mar 13 18:07:07 2011 -0700"
      },
      "message": "xhci: Remove old no-op test.\n\nThe test of placing a number of command no-ops on the command ring and\ncounting the number of no-op events that were generated was only used\nduring the initial xHCI driver bring up.  This test is no longer used, so\ndelete it.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "8688a1a8637c6b833b9b70148809db4538352d2e",
      "tree": "7b5d6c2d83c8bd1686811501c6287a650c40751b",
      "parents": [
        "3afdb0f3528991de0833224f2dba60dc061e01fa",
        "f91f9cd505f92e4227ffda7e5799a33d4f34bf36"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Mar 12 20:33:51 2011 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Sat Mar 12 20:33:51 2011 +0000"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-tcc into devel-stable\n"
    },
    {
      "commit": "fbf9865c6d96f4a131092d2018056e86113e5cea",
      "tree": "ee9c5f63d8709bf50817a730360464031761fa27",
      "parents": [
        "79ad3b5add4a683af02d1b51ccb699d1b01f1fbf"
      ],
      "author": {
        "name": "Robert Morell",
        "email": "rmorell@nvidia.com",
        "time": "Wed Mar 09 16:28:57 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 11 14:22:12 2011 -0800"
      },
      "message": "USB: ehci: tegra: Align DMA transfers to 32 bytes\n\nThe Tegra2 USB controller doesn\u0027t properly deal with misaligned DMA\nbuffers, causing corruption.  This is especially prevalent with USB\nnetwork adapters, where skbuff alignment is often in the middle of a\n4-byte dword.\n\nTo avoid this, allocate a temporary buffer for the DMA if the provided\nbuffer isn\u0027t sufficiently aligned.\n\nSigned-off-by: Robert Morell \u003crmorell@nvidia.com\u003e\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "79ad3b5add4a683af02d1b51ccb699d1b01f1fbf",
      "tree": "2204af63c3c121b2a7c3ca2556e43d665a4e760c",
      "parents": [
        "91525d084e8f078330c949362f8084b06e69fd41"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Mar 09 16:28:56 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 11 14:22:11 2011 -0800"
      },
      "message": "usb: host: Add EHCI driver for NVIDIA Tegra SoCs\n\nThe Tegra 2 SoC has 3 EHCI compatible USB controllers. This patch adds\nthe necessary glue to allow the ehci-hcd driver to work on Tegra 2\nSoCs.\n\nThe platform data is used to configure board-specific phy settings and\nto configure the operating mode, as one of the ports may be used as a otg\nport. For additional power saving, the driver supports powering down the\nphy on bus suspend when it is used, for example, to connect an internal\ndevice that use an out-of-band remote wakeup mechanism (e.g. a gpio).\n\nSigned-off-by: Benoit Goby \u003cbenoit@android.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "0dfeefbc93e38c3a9bd6d4e579cc5a76d3f13dc2",
      "tree": "fbe357913fd0e0757088263602f38a3478cdcf5f",
      "parents": [
        "b88ccf6f97ceb3f34cecbb513edc58815707187d"
      ],
      "author": {
        "name": "Hubert Feurstein",
        "email": "h.feurstein@gmail.com",
        "time": "Thu Mar 10 10:06:37 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Mar 11 14:18:52 2011 -0800"
      },
      "message": "ehci-atmel: fix section mismatch warning\n\nFix the following section mismatch warning:\n\nWARNING: drivers/usb/built-in.o(.data+0x74c): Section mismatch in reference from the variable ehci_atmel_driver to the function .init.text:ehci_atmel_drv_probe()\nThe variable ehci_atmel_driver references\nthe function __init ehci_atmel_drv_probe()\nIf the reference is valid then annotate the\nvariable with __init* or __refdata (see linux/init.h) or name the variable:\n*_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,\n\nSigned-off-by: Hubert Feurstein \u003ch.feurstein@gmail.com\u003e\nSigned-off-by: Nicolas Ferre \u003cnicolas.ferre@atmel.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "3afdb0f3528991de0833224f2dba60dc061e01fa",
      "tree": "0d9c7529c6cc2b41f0df778cc396edd74699721a",
      "parents": [
        "71d8c5b11e3b5936ae6c2e0b1dd6f5c78b305b65",
        "f7fdaca910e6bc13659ecdffc28c97938b752e01"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Thu Mar 10 13:53:29 2011 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Thu Mar 10 13:53:29 2011 +0000"
      },
      "message": "Merge branch \u0027for-rmk\u0027 of git://git.pengutronix.de/git/imx/linux-2.6 into devel-stable\n"
    },
    {
      "commit": "fa417c369b48a8f7acaf9aba1ff94b0969b0cb7e",
      "tree": "2e63e36a0f16aa24770988c544150adb024133b0",
      "parents": [
        "dfb2130c453c2c6d36b5e0f39eca289cbdbb631d"
      ],
      "author": {
        "name": "Sergei Shtylyov",
        "email": "sshtylyov@ru.mvista.com",
        "time": "Thu Mar 03 21:10:05 2011 +0300"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Mar 07 12:15:21 2011 -0800"
      },
      "message": "USB: OHCI: use pci_dev-\u003erevision\n\nCommit ab1666c1364a209e6141d7c14e47a42b5f00eca2 (USB: quirk PLL power down mode)\nadded code that reads the revision ID from the PCI configuration register while\nit\u0027s stored by PCI subsystem in the \u0027revision\u0027 field of \u0027struct pci_dev\u0027...\n\nSigned-off-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "dfb2130c453c2c6d36b5e0f39eca289cbdbb631d",
      "tree": "c1bf393818c782c06b968c9a3a8a595df1de42c8",
      "parents": [
        "d3cf2a8d4ddd121dbf4ad48c995648af04e0cfbf"
      ],
      "author": {
        "name": "Pavankumar Kondeti",
        "email": "pkondeti@codeaurora.org",
        "time": "Fri Mar 04 22:45:02 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Mar 07 12:15:21 2011 -0800"
      },
      "message": "USB: Rename \"msm72k_otg.c\" to \"msm_otg.c\"\n\nThis driver is used across all MSM SoCs.  Hence give a generic name.\nAll Functions and strutures are also using \"msm_otg\" as prefix.\n\nSigned-off-by: Pavankumar Kondeti \u003cpkondeti@codeaurora.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d3cf2a8d4ddd121dbf4ad48c995648af04e0cfbf",
      "tree": "2398d52e4bfaa3035e114a39618a1d3cd841daac",
      "parents": [
        "9b37596a2e860404503a3f2a6513db60c296bfdc"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Mon Mar 07 15:36:21 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Mar 07 12:14:07 2011 -0800"
      },
      "message": "usb/isp1760: Fix crash when unplugging bug\n\nThis fixes a problem with my previous patch series where there\u0027s a great\nrisk that the kernel will crash when unplugging interrupt devices from\nthe USB port. These lines must have got missing when I rebased the\npatches from the older kernel I was working with to 2.6.37 and 2.6-next:\n\nThis fixes a bug where the kernel may crash if you unplug a USB device\nthat has active interrupt transfers.\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "337fc720d85b98a71b1ff6e3a5449a24a7c33cfe",
      "tree": "19e145665b8ed4d2da67cb4f076b33f1d059db0c",
      "parents": [
        "dd9c1549edef02290edced639f67b54a25abbe0e"
      ],
      "author": {
        "name": "Michal Simek",
        "email": "monstr@monstr.eu",
        "time": "Mon Feb 14 11:40:09 2011 +0100"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Wed Mar 02 13:45:18 2011 -0700"
      },
      "message": "of: Add missing of_address.h to xilinx ehci driver\n\nBuild log:\nIn file included from drivers/usb/host/ehci-hcd.c:1208:\ndrivers/usb/host/ehci-xilinx-of.c: In function \u0027ehci_hcd_xilinx_of_probe\u0027:\ndrivers/usb/host/ehci-xilinx-of.c:168: error: implicit declaration of function \u0027of_address_to_resource\u0027\n\nSigned-off-by: John Williams \u003cjohn.williams@petalogix.com\u003e\nSigned-off-by: Michal Simek \u003cmonstr@monstr.eu\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "60b0bf0f11a02a6c288c7a923b2521aa7cfdc6c3",
      "tree": "33f751ced166fdce75efa89b3b4f9e80b178e009",
      "parents": [
        "ad93562bdeecdded7d02eaaaf1aa5705ab57b1b7"
      ],
      "author": {
        "name": "Yoshihiro Shimoda",
        "email": "yoshihiro.shimoda.uh@renesas.com",
        "time": "Tue Mar 01 16:58:37 2011 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 01 16:01:46 2011 -0500"
      },
      "message": "usb: EHCI, OHCI: Add configuration for the SH USB controller\n\nThe SH EHCI/OHCI driver hardcoded the CPU type in {ehci,ohci}-hcd.c.\nSo if we will add the new CPU, we had to add to the hcd driver each time.\nThe patch adds the CONFIG_USB_{EHCI,OHCI}_SH configuration. So if we\nwant to use the SH EHCI/OHCI, we only enable the configuration.\n\nSigned-off-by: Yoshihiro Shimoda \u003cyoshihiro.shimoda.uh@renesas.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ad93562bdeecdded7d02eaaaf1aa5705ab57b1b7",
      "tree": "92bd220ce673a8260fb4cb4799024529af664208",
      "parents": [
        "53689ac1b677532be666a779e24b0ac9bd266354"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Tue Mar 01 14:57:05 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 01 16:01:45 2011 -0500"
      },
      "message": "USB host: Move AMD PLL quirk to pci-quirks.c\n\nThis patch moves the AMD PLL quirk code in OHCI/EHCI driver to pci-quirks.c,\nand exports the functions to be used by xHCI driver later.\n\nAMD PLL quirk disable the optional PM feature inside specific\nSB700/SB800/Hudson-2/3 platforms under the following conditions:\n\n1. If an isochronous device is connected to OHCI/EHCI/xHCI port and is active;\n2. Optional PM feature that powers down the internal Bus PLL when the link is\n   in low power state is enabled.\n\nWithout AMD PLL quirk, USB isochronous stream may stutter or have breaks\noccasionally, which greatly impair the performance of audio/video streams.\n\nCurrently AMD PLL quirk is implemented in OHCI and EHCI driver, and will be\nadded to xHCI driver too. They are doing similar things actually, so move\nthe quirk code to pci-quirks.c, which has several advantages:\n\n1. Remove duplicate defines and functions in OHCI/EHCI (and xHCI) driver and\n   make them cleaner;\n2. AMD chipset information will be probed only once and then stored.\n   Currently they\u0027re probed during every OHCI/EHCI initialization, move\n   the detect code to pci-quirks.c saves the repeat detect cost;\n3. Build up synchronization among OHCI/EHCI/xHCI driver. In current\n   code, every host controller enable/disable PLL only according to\n   its own status, and may enable PLL while there is still isoc transfer on\n   other HCs. Move the quirk to pci-quirks.c prevents this issue.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alex He \u003calex.he@amd.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "19403165c272cc4ed00c97973e7271714b009708",
      "tree": "9f0923ec4d4514b9a9d615d5ca8d3d0bb0e881ce",
      "parents": [
        "3b68ae73d8afa925807ebaae7eb14e2afd43f5b5"
      ],
      "author": {
        "name": "Keshava Munegowda",
        "email": "keshava_mgowda@ti.com",
        "time": "Tue Mar 01 20:08:21 2011 +0530"
      },
      "committer": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Tue Mar 01 17:02:49 2011 +0200"
      },
      "message": "usb: host: omap: ehci and ohci simplification\n\nThe ehci and ohci drivers are simplified; Since\nUHH and TLL initialization, clock handling are\ndone by common usbhs core driver, these functionalities\nare removed from ehci and ohci drivers.\n\nSigned-off-by: Keshava Munegowda \u003ckeshava_mgowda@ti.com\u003e\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\n"
    },
    {
      "commit": "181b250cf53233a7a7c6d7e1e9df402506712e93",
      "tree": "476b60593f7b646bdc1e0d56cd38368bed31fe4d",
      "parents": [
        "a8480ea0bedbf049423a4caa9b09d371614c07dc"
      ],
      "author": {
        "name": "Keshava Munegowda",
        "email": "keshava_mgowda@ti.com",
        "time": "Tue Mar 01 20:08:16 2011 +0530"
      },
      "committer": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Tue Mar 01 17:01:11 2011 +0200"
      },
      "message": "arm: omap: usb: create common enums and structures for ehci and ohci\n\nCreate the ehci and ohci specific platform data structures.\nThe port enum values are made common for both ehci and ohci.\n\nSigned-off-by: Keshava Munegowda \u003ckeshava_mgowda@ti.com\u003e\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\n"
    },
    {
      "commit": "09f0607d8be62469a9b33034c8d3def9a5c7cbb7",
      "tree": "5b73bdcf3133ff598b7b059839e24630c2359266",
      "parents": [
        "a9031e5f0b82225ea676d729d68beb6c69799a67"
      ],
      "author": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Tue Mar 01 20:08:14 2011 +0530"
      },
      "committer": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Tue Mar 01 17:00:58 2011 +0200"
      },
      "message": "usb: host: omap: switch to platform_get_resource_byname\n\nnow that we have names on all memory bases, we can\nswitch to use platform_get_resource_byname() which\nwill make it simpler when we move to a setup where\nOHCI and EHCI on OMAP play well together.\n\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\n"
    },
    {
      "commit": "87ecc73b3d74ca70100e7100313c005fa471f177",
      "tree": "18762ed9b092982b196aa0c5681d01cb80e2e1ab",
      "parents": [
        "c88ba39c1ea6a1591b6842199069ff50748d2073"
      ],
      "author": {
        "name": "Anand Gadiyar",
        "email": "gadiyar@ti.com",
        "time": "Wed Feb 16 15:43:14 2011 +0530"
      },
      "committer": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Tue Mar 01 17:00:56 2011 +0200"
      },
      "message": "usb: ehci: omap: add support for TLL mode on OMAP4\n\nThe EHCI controller in OMAP4 supports a transceiver-less link\nmode (TLL mode), similar to the one in OMAP3. On the OMAP4\nhowever, there are an additional set of clocks that need\nto be turned on to get this working.\n\nRequest and configure these for each port if that port\nis connected in TLL mode.\n\nSigned-off-by: Anand Gadiyar \u003cgadiyar@ti.com\u003e\nCc: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\n"
    },
    {
      "commit": "7adc14b14b43b6ca9f2f00ac7a4780577dbe883b",
      "tree": "d878823dd8c7c72d1f934612d90f4512f11d7a38",
      "parents": [
        "65f1b5255ce0e657e4d8de92098837d36831320a"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:08:47 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:39 2011 -0800"
      },
      "message": "usb/isp1760: Handle toggle bit in queue heads only\n\nRemove redundant \"toggle\" member from struct isp1760_qtd, and store toggle\nstatus in struct isp1760_qh only.\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "65f1b5255ce0e657e4d8de92098837d36831320a",
      "tree": "ccb5d598233a24c53d0a8303faae4bb7a2acf208",
      "parents": [
        "6bda21bc0941c11f07cbf436ff6ca85e7e6e47f0"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:07:35 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:38 2011 -0800"
      },
      "message": "usb/isp1760: Replace period calculation for INT packets with something readable\n\nReplace the period calculation for INT packets with something readable. Seems\nto fix a rare bug with quickly repeated insertion/removal of several USB\ndevices simultaneously (hub control INT packets).\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "6bda21bc0941c11f07cbf436ff6ca85e7e6e47f0",
      "tree": "f0a871bace736393a9bbdd03dcfac80fe4ab601a",
      "parents": [
        "bbaa387674b65a2f784631cc4c87c77ec9d3374e"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:06:37 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:38 2011 -0800"
      },
      "message": "usb/isp1760: Consolidate printouts and remove unused code\n\nConsolidate printouts to use dev_XXX functions instead of an assortment of\nprintks and driver specific macros. Remove some unused code snippets and struct\nmembers. Remove some unused function parameters and #defines. Change the\n\"queue_entry\" variable name which has different but related meanings in\ndifferent places and use \"slot\" only.\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bbaa387674b65a2f784631cc4c87c77ec9d3374e",
      "tree": "545540742b6c8928acadadec905309924dbe58cf",
      "parents": [
        "a041d8e4375ee6d78409a721221878dcad5eff8a"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:05:26 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:37 2011 -0800"
      },
      "message": "usb/isp1760: Remove redundant \"data_buffer\" member from struct inter_packet_info\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "a041d8e4375ee6d78409a721221878dcad5eff8a",
      "tree": "9749f4c0e373aace706ac037b2b535e1427ba31a",
      "parents": [
        "fd436aee97d157ff6441e7aaff2a2dc802765b5b"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:04:40 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:37 2011 -0800"
      },
      "message": "usb/isp1760: Clean up payload address handling\n\nEncapsulate payload addresses within qtds.\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "fd436aee97d157ff6441e7aaff2a2dc802765b5b",
      "tree": "84f6b909856181d463db97b309bc1974580ad916",
      "parents": [
        "bedc0c31ac3db828e6ade7a8c5cb708688f0a7e1"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:03:49 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:36 2011 -0800"
      },
      "message": "usb/isp1760: Remove redundant variables and defines\n\nRemoves the redundant hw_next list pointer from struct isp1760_qtd, removes some\nunused #defines, removes redundant \"urb\" member from struct inter_packet_info.\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bedc0c31ac3db828e6ade7a8c5cb708688f0a7e1",
      "tree": "4d673769f7cc5a7fac603cd3822f644d650c3096",
      "parents": [
        "6d42fcdb685e3b7af45c77181537db4bc1a715f9"
      ],
      "author": {
        "name": "Arvid Brodin",
        "email": "arvid.brodin@enea.com",
        "time": "Sat Feb 26 22:02:57 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:23:36 2011 -0800"
      },
      "message": "usb/isp1760: Move to native-endian ptds\n\nThis helps users with platform-bus-connected isp176xs, big-endian cpu,\nand missing byteswapping on the data bus. It does so by collecting all\nSW byteswaps in one place and also fixes a bug with non-32-bit io\ntransfers on this hardware, where payload has to be byteswapped\ninstead of ptds.\n\nSigned-off-by: Arvid Brodin \u003carvid.brodin@enea.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "06125beb41af06fd197a7d216d57aa32b83f6cbd",
      "tree": "052e355d0325bf59bd25043999f46da0b7e8bdd3",
      "parents": [
        "601e72a067f0230cb815ae0c206081c3ea19c095"
      ],
      "author": {
        "name": "Justin P. Mattock",
        "email": "justinmattock@gmail.com",
        "time": "Sat Feb 26 20:33:57 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Feb 28 19:19:56 2011 -0800"
      },
      "message": "usb: host: uhci-hcd.c Remove one to many n\u0027s in a word.\n\nThe Patch below removes one to many \"n\u0027s\" in a word..\n\nSigned-off-by: Justin P. Mattock \u003cjustinmattock@gmail.com\u003e\nCC: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: linux-usb@vger.kernel.org\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "d35fb6417655ebf6de93e2135dc386c3c470f545",
      "tree": "23eade825b224e48ab300017395ddd92db837da0",
      "parents": [
        "28541d0f1894cd0c8f4a90c6e006c88d38ad3ac0"
      ],
      "author": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Tue Feb 22 21:08:34 2011 -0700"
      },
      "committer": {
        "name": "Grant Likely",
        "email": "grant.likely@secretlab.ca",
        "time": "Mon Feb 28 13:22:45 2011 -0700"
      },
      "message": "dt/usb: Eliminate users of of_platform_{,un}register_driver\n\nGet rid of users of of_platform_driver in drivers/usb.  The\nof_platform_{,un}register_driver functions are going away, so the\nusers need to be converted to using the platform_bus_type directly.\n\nSigned-off-by: Grant Likely \u003cgrant.likely@secretlab.ca\u003e\n"
    },
    {
      "commit": "22ced6874fc47bb051e7460443e454ca8efc457e",
      "tree": "a57bebdf1c0ea7410bb687d0694c40f09829452e",
      "parents": [
        "2edb11cbac95231f66f1239b3ca26bdc0967183a"
      ],
      "author": {
        "name": "Anoop",
        "email": "paanoop1@paanoop1-desktop.(none)",
        "time": "Thu Feb 24 19:26:28 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 25 11:37:31 2011 -0800"
      },
      "message": "USB: EHCI bus glue for on-chip PMC MSP USB controller\n\nThis patch add bus glue for USB controller commonly found in PMC-Sierra MSP71xx family of SoC\u0027s.\n\nSigned-off-by: Anoop P A \u003canoop.pa@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "18f53461e786f21e5625124b507802a797337f6f",
      "tree": "43939023aeed6ca3cae9e6ea0f9dac944d349fd6",
      "parents": [
        "541cace8cd619808424ffaf1c8f7a006e5d55742"
      ],
      "author": {
        "name": "Pavankumar Kondeti",
        "email": "pkondeti@codeaurora.org",
        "time": "Fri Feb 18 17:30:11 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 25 11:34:35 2011 -0800"
      },
      "message": "USB: EHCI: Fix compiler warnings with MSM driver\n\nThis patch fixes the following compile warnings\n\ndrivers/usb/host/ehci-dbg.c:45: warning: \u0027dbg_hcs_params\u0027 defined but not used\ndrivers/usb/host/ehci-dbg.c:89: warning: \u0027dbg_hcc_params\u0027 defined but not used\n\nSigned-off-by: Pavankumar Kondeti \u003cpkondeti@codeaurora.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "294d95f2cbc2aef5346258f216cd9df570e271a5",
      "tree": "e999eac991ebb3b4f43753cfe7d922eb0a9f05a4",
      "parents": [
        "0fd857ae09c455f0036bf548fb6ec26b3049f5de"
      ],
      "author": {
        "name": "Matthew Garrett",
        "email": "mjg@redhat.com",
        "time": "Tue Jan 11 12:26:48 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 25 11:32:13 2011 -0800"
      },
      "message": "ehci: Check individual port status registers on resume\n\nIf a device plug/unplug is detected on an ATI SB700 USB controller in D3,\nit appears to set the port status register but not the controller status\nregister. As a result we\u0027ll fail to detect the plug event. Check the port\nstatus register on resume as well in order to catch this case.\n\nSigned-off-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nCc: stable \u003cstable@kernel.org\u003e [after .39-rc1 is out]\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "8212a49d1c1e53ad2bc3176b983a2483b48fd989",
      "tree": "9f9bedbd1be279a1fb8ab14721db07ff80547a76",
      "parents": [
        "c50a00f8feba42c5bccff47e052e4cb0c95dcd2b"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@vmware.com",
        "time": "Tue Feb 08 13:55:59 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Tue Feb 22 17:12:58 2011 -0800"
      },
      "message": "USB: xhci: mark local functions as static\n\nFunctions that are not used outsde of the module they are defined\nshould be marked as static.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@vmware.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "c50a00f8feba42c5bccff47e052e4cb0c95dcd2b",
      "tree": "fa425c6792ac53866fb97f13851de726c091efef",
      "parents": [
        "09ece30e06b19994e6f3d260e5c4be18dce22714"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@vmware.com",
        "time": "Tue Feb 08 16:29:34 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Feb 20 07:07:07 2011 -0800"
      },
      "message": "USB: xhci: fix couple sparse annotations\n\nThere is no point in casting to (void *) when setting up xhci-\u003eir_set\nas it only makes us lose __iomem annotation and makes sparse unhappy.\n\nOTOH we do need to cast to (void *) when calculating xhci-\u003edba from\noffset, but since it is IO memory we need to annotate it as such.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@vmware.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "09ece30e06b19994e6f3d260e5c4be18dce22714",
      "tree": "f2b12741be0fa144369aabca88a1108f29cb3122",
      "parents": [
        "07194ab7be63a972096309ab0ea747df455c6a20"
      ],
      "author": {
        "name": "Dmitry Torokhov",
        "email": "dtor@vmware.com",
        "time": "Tue Feb 08 16:29:33 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Feb 20 07:07:05 2011 -0800"
      },
      "message": "USB: xhci: rework xhci_print_ir_set() to get ir set from xhci itself\n\nxhci-\u003eir_set points to __iomem region, but xhci_print_ir_set accepts\nplain struct xhci_intr_reg * causing multiple sparse warning at call\nsites and inside the fucntion when we try to read that memory.\n\nInstead of adding __iomem qualifier to the argument let\u0027s rework the\nfunction so it itself gets needed register set from xhci and prints\nit.\n\nSigned-off-by: Dmitry Torokhov \u003cdtor@vmware.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "bcd2fde05341cef0052e49566ec88b406a521cf3",
      "tree": "e2d101797ba072dea57c465b47b2892e7e4a19a3",
      "parents": [
        "5807795bd4dececdf553719cc02869e633395787"
      ],
      "author": {
        "name": "Paul Zimmerman",
        "email": "Paul.Zimmerman@synopsys.com",
        "time": "Sat Feb 12 14:07:57 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Feb 20 07:01:28 2011 -0800"
      },
      "message": "xhci: Fix an error in count_sg_trbs_needed()\n\nThe expression\n\n\twhile (running_total \u003c sg_dma_len(sg))\n\ndoes not take into account that the remaining data length can be less\nthan sg_dma_len(sg). In that case, running_total can end up being\ngreater than the total data length, so an extra TRB is counted.\nChanging the expression to\n\n\twhile (running_total \u003c sg_dma_len(sg) \u0026\u0026 running_total \u003c temp)\n\nfixes that.\n\nThis patch should be queued for stable kernels back to 2.6.31.\n\nSigned-off-by: Paul Zimmerman \u003cpaulz@synopsys.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "5807795bd4dececdf553719cc02869e633395787",
      "tree": "d200e995de9dffbc6e6e44a8da4fcdc5f37a94aa",
      "parents": [
        "a2490187011cc2263117626615a581927d19f1d3"
      ],
      "author": {
        "name": "Paul Zimmerman",
        "email": "Paul.Zimmerman@synopsys.com",
        "time": "Sat Feb 12 14:07:20 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Feb 20 07:01:27 2011 -0800"
      },
      "message": "xhci: Fix errors in the running total calculations in the TRB math\n\nCalculations like\n\n\trunning_total \u003d TRB_MAX_BUFF_SIZE -\n\t\t(sg_dma_address(sg) \u0026 (TRB_MAX_BUFF_SIZE - 1));\n\tif (running_total !\u003d 0)\n\t\tnum_trbs++;\n\nare incorrect, because running_total can never be zero, so the if()\nexpression will never be true. I think the intention was that\nrunning_total be in the range of 0 to TRB_MAX_BUFF_SIZE-1, not 1\nto TRB_MAX_BUFF_SIZE. So adding a\n\n\trunning_total \u0026\u003d TRB_MAX_BUFF_SIZE - 1;\n\nfixes the problem.\n\nThis patch should be queued for stable kernels back to 2.6.31.\n\nSigned-off-by: Paul Zimmerman \u003cpaulz@synopsys.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "a2490187011cc2263117626615a581927d19f1d3",
      "tree": "32e60d30546512b1c38259558954462c6a81f6bb",
      "parents": [
        "68e41c5d032668e2905404afbef75bc58be179d6"
      ],
      "author": {
        "name": "Paul Zimmerman",
        "email": "Paul.Zimmerman@synopsys.com",
        "time": "Sat Feb 12 14:06:44 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Feb 20 07:01:27 2011 -0800"
      },
      "message": "xhci: Clarify some expressions in the TRB math\n\nThis makes it easier to spot some problems, which will be fixed by the\nnext patch in the series. Also change dev_dbg to dev_err in\ncheck_trb_math(), so any math errors will be visible even when running\nwith debug disabled.\n\nNote: This patch changes the expressions containing\n\"((1 \u003c\u003c TRB_MAX_BUFF_SHIFT) - 1)\" to use the equivalent\n\"(TRB_MAX_BUFF_SIZE - 1)\". No change in behavior is intended for\nthose expressions.\n\nThis patch should be queued for stable kernels back to 2.6.31.\n\nSigned-off-by: Paul Zimmerman \u003cpaulz@synopsys.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "68e41c5d032668e2905404afbef75bc58be179d6",
      "tree": "5fbdd52b525f59f0883d8668ee9b79b392753979",
      "parents": [
        "9ce4f80fb67b47b96c647ac6280a06dbd4bb50d2"
      ],
      "author": {
        "name": "Paul Zimmerman",
        "email": "Paul.Zimmerman@synopsys.com",
        "time": "Sat Feb 12 14:06:06 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Sun Feb 20 07:01:26 2011 -0800"
      },
      "message": "xhci: Avoid BUG() in interrupt context\n\nChange the BUGs in xhci_find_new_dequeue_state() to WARN_ONs, to avoid\nbringing down the box if one of them is hit\n\nThis patch should be queued for stable kernels back to 2.6.31.\n\nSigned-off-by: Paul Zimmerman \u003cpaulz@synopsys.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "04b31c776f34d127b422da92899272a0b8cda21d",
      "tree": "1ec5d989e4630e1d347bc08c0e0d8091f40ae956",
      "parents": [
        "5c8d61bfcc6396f80b884e0f23f08cbd8bf10778"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Feb 16 23:47:51 2011 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 11:00:24 2011 -0800"
      },
      "message": "usb: isp1362-hcd: use bitmap_clear() and bitmap_set()\n\nUse bitmap_set()/bitmap_clear() to fill/zero a region of a bitmap\ninstead of doing set_bit()/clear_bit() each bit.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "5c8d61bfcc6396f80b884e0f23f08cbd8bf10778",
      "tree": "aa0ae62eb07834f82776a923d6264065e673c0ed",
      "parents": [
        "bcf40815e0cda371cecc242398fe39b873bb1047"
      ],
      "author": {
        "name": "Matthieu CASTET",
        "email": "matthieu.castet@parrot.com",
        "time": "Tue Feb 15 18:41:54 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 10:57:13 2011 -0800"
      },
      "message": "USB: make ehci msm driver use ehci_run.\n\nNow that ehci_run don\u0027t call ehci_reset, we can use ehci_run.\n\nSigned-off-by: Matthieu CASTET \u003ccastet.matthieu@parrot.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "bcf40815e0cda371cecc242398fe39b873bb1047",
      "tree": "19d63e63e3b62aafa41040f7e76d1e5db6e748bd",
      "parents": [
        "e2904ee43c7009e6c4fc18738f15051312f22483"
      ],
      "author": {
        "name": "Matthieu CASTET",
        "email": "matthieu.castet@parrot.com",
        "time": "Tue Feb 15 18:40:28 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 10:57:13 2011 -0800"
      },
      "message": "USB: don\u0027t run ehci_reset in ehci_run for tdi device\n\nTDI driver does the ehci_reset in their reset callback.\nDon\u0027t reset in ehci_run because configuration settings done in\nplatform driver will be reset.\n\nThis will allow to make msm use ehci_run.\n\nSigned-off-by: Matthieu CASTET \u003ccastet.matthieu@parrot.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b14e840d04dba211fbdc930247e379085623eacd",
      "tree": "8b57a59f211b3304fe8e10a7c8a23791b11771d3",
      "parents": [
        "4f9e6c64d1fc4668f3153f456b41cf40b30c730f"
      ],
      "author": {
        "name": "Sebastian Andrzej Siewior",
        "email": "bigeasy@linutronix.de",
        "time": "Tue Feb 08 21:07:40 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 10:47:55 2011 -0800"
      },
      "message": "USB: isp1760: Implement solution for erratum 2\n\nThe document says:\n|2.1 Problem description\n|    When at least two USB devices are simultaneously running, it is observed that\n|    sometimes the INT corresponding to one of the USB devices stops occurring. This may\n|    be observed sometimes with USB-to-serial or USB-to-network devices.\n|    The problem is not noticed when only USB mass storage devices are running.\n|2.2 Implication\n|    This issue is because of the clearing of the respective Done Map bit on reading the ATL\n|    PTD Done Map register when an INT is generated by another PTD completion, but is not\n|    found set on that read access. In this situation, the respective Done Map bit will remain\n|    reset and no further INT will be asserted so the data transfer corresponding to that USB\n|    device will stop.\n|2.3 Workaround\n|    An SOF INT can be used instead of an ATL INT with polling on Done bits. A time-out can\n|    be implemented and if a certain Done bit is never set, verification of the PTD completion\n|    can be done by reading PTD contents (valid bit).\n|    This is a proven workaround implemented in software.\n\nRussell King run into this with an USB-to-serial converter. This patch\nimplements his suggestion to enable the high frequent SOF interrupt only\nat the time we have ATL packages queued. It goes even one step further\nand enables the SOF interrupt only if we have more than one ATL packet\nqueued at the same time.\n\nCc: \u003cstable@kernel.org\u003e # [2.6.35.x, 2.6.36.x, 2.6.37.x]\nTested-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\nSigned-off-by: Sebastian Andrzej Siewior \u003cbigeasy@linutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4f9e6c64d1fc4668f3153f456b41cf40b30c730f",
      "tree": "348e482c5bfe7c91875bbcc5471f8349f47d9e57",
      "parents": [
        "6b2e30c07f6c1514bb9946171770af61c305b86c"
      ],
      "author": {
        "name": "Maksim Rayskiy",
        "email": "mrayskiy@broadcom.com",
        "time": "Tue Feb 08 10:41:42 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 10:47:55 2011 -0800"
      },
      "message": "USB: Mark EHCI LPM functions as __maybe_unused\n\nehci_lpm_set_da and ehci_lpm_check are EHCI 1.1 specific functions which\nare not used on many platforms but do generate annoying gcc warnings\n\nSigned-off-by: Maksim Rayskiy \u003cmrayskiy@broadcom.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "66b0835e2bb3d345f060a47bb8c8f883bd25ec2b",
      "tree": "d1fc390dfa58f131df908267d87ef99d4522a596",
      "parents": [
        "479b46b5599b1e610630d7332e168c1f9c4ee0b4",
        "85e2efbb1db9a18d218006706d6e4fbeb0216213"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 09:56:40 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 09:56:55 2011 -0800"
      },
      "message": "Merge 2.6.38-rc5 into usb-next\n\nThis is needed to resolve some merge conflicts that were found\nin the USB host controller patches, and reported by Stephen Rothwell.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "479b46b5599b1e610630d7332e168c1f9c4ee0b4",
      "tree": "c5d7e48576f5b5b6a61a2a2e5f85abaa941b85ab",
      "parents": [
        "ce1fd3585709e833ad102167024e97217734dbfd"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 09:54:16 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 17 09:54:16 2011 -0800"
      },
      "message": "Revert \"USB host: Move AMD PLL quirk to pci-quirks.c\"\n\nThis reverts commit b7d5b439b7a40dd0a0202fe1c118615a3fcc3b25.\nIt conflicts with commit baab93afc2844b68d57b0dcca5e1d34c5d7cf411 \"USB:\nEHCI: ASPM quirk of ISOC on AMD Hudson\" and merging the two just doesn\u0027t\nwork properly.\n\nCc: Andiry Xu \u003candiry.xu@amd.com\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alex He \u003calex.he@amd.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4bd597b633ae630e09d58957bd99870eac35fcb4",
      "tree": "39b829bee667531ac41ea48d7f392ecb9258f956",
      "parents": [
        "cb07625d1f84fb48e6849cb530762ffcc6f8e458"
      ],
      "author": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Mon Jan 03 11:30:28 2011 +0100"
      },
      "committer": {
        "name": "Sascha Hauer",
        "email": "s.hauer@pengutronix.de",
        "time": "Fri Feb 11 08:40:45 2011 +0100"
      },
      "message": "ARM i.MX ehci: do ehci init in board specific functions\n\nThe mxc-ehci driver calls SoC specific phy initialization right after\ncalling board specific initialization. To offer greater flexibility for\nboards to setup the phy and to get rid of some unnecessary flags in\nplatform data this patch lets the boards call the SoC specific phy\ninitialization and remove it from the driver.\n\nSigned-off-by: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\n"
    },
    {
      "commit": "8cf28f1f4de58c70e6af657bb46ca8f304c073d4",
      "tree": "0127ff6c9f92106d42e07f5607547e5ebb71fdd3",
      "parents": [
        "148fc55fd0449683a1d15bf219ad8d8b6fa17545"
      ],
      "author": {
        "name": "Pavankumar Kondeti",
        "email": "pkondeti@codeaurora.org",
        "time": "Fri Feb 04 10:08:18 2011 +0530"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 12:38:14 2011 -0800"
      },
      "message": "USB: Fix trout build failure with ci13xxx_msm gadget\n\nThis patch fixes the below compilation errors.\n\n  CC      drivers/usb/gadget/ci13xxx_msm.o\n  CC      net/mac80211/led.o\n  drivers/usb/gadget/ci13xxx_msm.c: In function \u0027ci13xxx_msm_notify_event\u0027:\n  drivers/usb/gadget/ci13xxx_msm.c:42: error: \u0027USB_AHBBURST\u0027 undeclared (first use in this function)\n  drivers/usb/gadget/ci13xxx_msm.c:42: error: (Each undeclared identifier is reported only once\n  drivers/usb/gadget/ci13xxx_msm.c:42: error: for each function it appears in.)\n  drivers/usb/gadget/ci13xxx_msm.c:43: error: \u0027USB_AHBMODE\u0027 undeclared (first use in this function)\nmake[4]: *** [drivers/usb/gadget/ci13xxx_msm.o] Error 1\nmake[3]: *** [drivers/usb/gadget] Error 2\n\nMSM USB driver is not supported on boards like trout (MSM7201) which\nhas an external PHY.\n\nSigned-off-by: Pavankumar Kondeti \u003cpkondeti@codeaurora.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "c8cf203a1d228fa001b95534f639ffb7a23d5386",
      "tree": "73192ffb1334abf40a62f87e94f870801fc1f629",
      "parents": [
        "d25bc4db723a44c097268b466ff74bfba4bcc4f3"
      ],
      "author": {
        "name": "Robert Morell",
        "email": "rmorell@nvidia.com",
        "time": "Wed Jan 26 19:06:47 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 11:48:18 2011 -0800"
      },
      "message": "USB: HCD: Add usb_hcd prefix to exported functions\n\nThe convention is to prefix symbols exported from the USB HCD core with\n\"usb_hcd\".  This change makes unmap_urb_setup_for_dma() and\nunmap_urb_for_dma() consistent with that.\n\nSigned-off-by: Robert Morell \u003crmorell@nvidia.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "ac8d67417816fa7c568b24a8f2891eb02e6d0462",
      "tree": "77ca466e0dc5bc7466292cc16292649132c82bf0",
      "parents": [
        "eb34a90861a290cd271f4b887c0d59070e1b69b0"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Tue Jan 25 09:59:37 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 11:43:59 2011 -0800"
      },
      "message": "USB: EHCI: Rearrange create_companion_file() to avoid GCC-4.6 warnings.\n\nIn create_companion_file() there is a bogus assignemt to i created for\nthe express purpose of avoiding an ignored return value warning.\n\nWith pre-release GCC-4.6, this causes a \u0027set but not used\u0027 warning.\n\nKick the problem further down the road by just returning i.  All the\ncallers of create_companion_file() ignore its return value, so all is\ngood:\n\no No warnings are issued.\n\no We still subvert the desires of the authors of device_create_file()\n  by ignorning error conditions.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "eb34a90861a290cd271f4b887c0d59070e1b69b0",
      "tree": "628c648d44be4c7ef57c29c11ed848c0f9a22ebd",
      "parents": [
        "9a1cadb9dd9130345d59638f5b6a8a4982c2b34a"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Tue Jan 25 09:59:36 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 11:43:59 2011 -0800"
      },
      "message": "USB: EHCI: Rearrange EHCI_URB_TRACE code to avoid GCC-4.6 warnings.\n\nWith pre-release GCC-4.6, we get a \u0027set but not used\u0027 warning when\nEHCI_URB_TRACE is not set because we set the qtd variable without\nusing it.\n\nRearrange the statements so that we only set qtd if it will be used.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "9a1cadb9dd9130345d59638f5b6a8a4982c2b34a",
      "tree": "e0cbbdb3bfab215994bd2dcbb666fe1ab23e3874",
      "parents": [
        "fc427a5a4bf3be770d7fbd933474957062049f1f"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Tue Jan 25 09:59:35 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 11:43:58 2011 -0800"
      },
      "message": "USB: EHCI: Cleanup and rewrite ehci_vdgb().\n\nThe vdbg macro is not used anywhere so it can be removed.\n\nWith pre-release GCC-4.6, there are several complaints of variables\nthat are \u0027set but not used\u0027 caused by the ehci_vdbg() macro expanding\nto something that does not contain any of its arguments.  We can quiet\nthis warning by rewriting ehci_vdbg() as a variadic static inline that\ndoes nothing.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "fc427a5a4bf3be770d7fbd933474957062049f1f",
      "tree": "e42b1a532b15bc237936d1ae999f9db01d523c33",
      "parents": [
        "b7d5b439b7a40dd0a0202fe1c118615a3fcc3b25"
      ],
      "author": {
        "name": "David Daney",
        "email": "ddaney@caviumnetworks.com",
        "time": "Tue Jan 25 09:59:34 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 11:42:52 2011 -0800"
      },
      "message": "USB: EHCI: Remove dead code from ehci-sched.c\n\nThe pre-release GCC-4.6 now correctly flags this code as dead.\n\nSigned-off-by: David Daney \u003cddaney@caviumnetworks.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "b7d5b439b7a40dd0a0202fe1c118615a3fcc3b25",
      "tree": "8a9be25f550e4a9921733d5b0dae9c8fcdc274f6",
      "parents": [
        "a51ea8cc9cfcfd719240455ff8f217b4f165d1d0"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Tue Jan 25 18:41:21 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Feb 04 11:42:52 2011 -0800"
      },
      "message": "USB host: Move AMD PLL quirk to pci-quirks.c\n\nThis patch moves the AMD PLL quirk code in OHCI/EHCI driver to pci-quirks.c,\nand exports the functions to be used by xHCI driver later.\n\nAMD PLL quirk disable the optional PM feature inside specific\nSB700/SB800/Hudson-2/3 platforms under the following conditions:\n\n1. If an isochronous device is connected to OHCI/EHCI/xHCI port and is active;\n2. Optional PM feature that powers down the internal Bus PLL when the link is\n   in low power state is enabled.\n\nWithout AMD PLL quirk, USB isochronous stream may stutter or have breaks\noccasionally, which greatly impair the performance of audio/video streams.\n\nCurrently AMD PLL quirk is implemented in OHCI and EHCI driver, and will be\nadded to xHCI driver too. They are doing similar things actually, so move\nthe quirk code to pci-quirks.c, which has several advantages:\n\n1. Remove duplicate defines and functions in OHCI/EHCI (and xHCI) driver and\n   make them cleaner;\n2. AMD chipset information will be probed only once and then stored.\n   Currently they\u0027re probed during every OHCI/EHCI initialization, move\n   the detect code to pci-quirks.c saves the repeat detect cost;\n3. Build up synchronization among OHCI/EHCI/xHCI driver. In current\n   code, every host controller enable/disable PLL only according to\n   its own status, and may enable PLL while there is still isoc transfer on\n   other HCs. Move the quirk to pci-quirks.c prevents this issue.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Alex He \u003calex.he@amd.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "148fc55fd0449683a1d15bf219ad8d8b6fa17545",
      "tree": "afeb8c44c4993f6f5acd6228a1efbb8ff654874d",
      "parents": [
        "4e8ed7e4991a24860c0504c403f015a8201c2ffa"
      ],
      "author": {
        "name": "Yin Kangkai",
        "email": "kangkai.yin@intel.com",
        "time": "Fri Jan 28 12:04:35 2011 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 03 16:57:43 2011 -0800"
      },
      "message": "USB: EHCI: fix scheduling while atomic during suspend\n\nThere is a msleep with spin lock held during ehci pci suspend, which will\ncause kernel BUG: scheduling while atomic. Fix that.\n\n[  184.139620] BUG: scheduling while atomic: kworker/u:11/416/0x00000002\n[  184.139632] 4 locks held by kworker/u:11/416:\n[  184.139640]  #0:  (events_unbound){+.+.+.}, at: [\u003cc104ddd4\u003e] process_one_work+0x1b3/0x4cb\n[  184.139669]  #1:  ((\u0026entry-\u003ework)){+.+.+.}, at: [\u003cc104ddd4\u003e] process_one_work+0x1b3/0x4cb\n[  184.139686]  #2:  (\u0026__lockdep_no_validate__){+.+.+.}, at: [\u003cc127cde3\u003e] __device_suspend+0x2c/0x154\n[  184.139706]  #3:  (\u0026(\u0026ehci-\u003elock)-\u003erlock){-.-...}, at: [\u003cc132f3d8\u003e] ehci_pci_suspend+0x35/0x7b\n[  184.139725] Modules linked in: serio_raw pegasus joydev mrst_gfx(C) battery\n[  184.139748] irq event stamp: 52\n[  184.139753] hardirqs last  enabled at (51): [\u003cc14fdaac\u003e] mutex_lock_nested+0x258/0x293\n[  184.139766] hardirqs last disabled at (52): [\u003cc14fe7b4\u003e] _raw_spin_lock_irqsave+0xf/0x3e\n[  184.139777] softirqs last  enabled at (0): [\u003cc10371c1\u003e] copy_process+0x3d2/0x109d\n[  184.139789] softirqs last disabled at (0): [\u003c  (null)\u003e]   (null)\n[  184.139802] Pid: 416, comm: kworker/u:11 Tainted: G         C  2.6.37-6.3-adaptation-oaktrail #37\n[  184.139809] Call Trace:\n[  184.139820]  [\u003cc102eeff\u003e] __schedule_bug+0x5e/0x65\n[  184.139829]  [\u003cc14fbca5\u003e] schedule+0xac/0xc4c\n[  184.139840]  [\u003cc11d4845\u003e] ? string+0x37/0x8b\n[  184.139853]  [\u003cc1044f21\u003e] ? lock_timer_base+0x1f/0x3e\n[  184.139863]  [\u003cc14fe7da\u003e] ? _raw_spin_lock_irqsave+0x35/0x3e\n[  184.139876]  [\u003cc1061590\u003e] ? trace_hardirqs_off+0xb/0xd\n[  184.139885]  [\u003cc14fccdc\u003e] schedule_timeout+0x283/0x2d9\n[  184.139896]  [\u003cc104516f\u003e] ? process_timeout+0x0/0xa\n[  184.139906]  [\u003cc14fcd47\u003e] schedule_timeout_uninterruptible+0x15/0x17\n[  184.139916]  [\u003cc104566a\u003e] msleep+0x10/0x16\n[  184.139926]  [\u003cc132f316\u003e] ehci_adjust_port_wakeup_flags+0x69/0xf6\n[  184.139937]  [\u003cc132f3eb\u003e] ehci_pci_suspend+0x48/0x7b\n[  184.139946]  [\u003cc1326587\u003e] suspend_common+0x52/0xbb\n[  184.139956]  [\u003cc1326625\u003e] hcd_pci_suspend+0x26/0x28\n[  184.139967]  [\u003cc11e7182\u003e] pci_pm_suspend+0x5f/0xd0\n[  184.139976]  [\u003cc127ca3a\u003e] pm_op+0x5d/0xf0\n[  184.139986]  [\u003cc127ceac\u003e] __device_suspend+0xf5/0x154\n[  184.139996]  [\u003cc127d2c8\u003e] async_suspend+0x16/0x3a\n[  184.140006]  [\u003cc1058f54\u003e] async_run_entry_fn+0x89/0x111\n[  184.140016]  [\u003cc104deb6\u003e] process_one_work+0x295/0x4cb\n[  184.140026]  [\u003cc1058ecb\u003e] ? async_run_entry_fn+0x0/0x111\n[  184.140036]  [\u003cc104e3d0\u003e] worker_thread+0x17f/0x298\n[  184.140045]  [\u003cc104e251\u003e] ? worker_thread+0x0/0x298\n[  184.140055]  [\u003cc105277f\u003e] kthread+0x64/0x69\n[  184.140064]  [\u003cc105271b\u003e] ? kthread+0x0/0x69\n[  184.140075]  [\u003cc1002efa\u003e] kernel_thread_helper+0x6/0x1a\n\nSigned-off-by: Yin Kangkai \u003ckangkai.yin@intel.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCC: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCC: stable@kernel.org\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "4e8ed7e4991a24860c0504c403f015a8201c2ffa",
      "tree": "cc1861edb774a2ca88250e0b9e364dbb3b658b6a",
      "parents": [
        "3ea3c9b5a8464ec8223125f95e5dddb3bfd02a39",
        "3e434a86cb21fba95d86b8d756997c235eade037"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 03 16:52:34 2011 -0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 03 16:52:54 2011 -0800"
      },
      "message": "Merge branch \u0027for-greg\u0027 of git://gitorious.org/usb/usb into usb-next\n\n* \u0027for-greg\u0027 of git://gitorious.org/usb/usb:\n  usb: ehci-omap: Show fatal probing time errors to end user\n  usb: musb: introduce api for dma code to check compatibility with usb request\n  usb: musb: maintain three states for buffer mappings instead of two\n  usb: musb: disable double buffering when it\u0027s broken\n  usb: musb: hsdma: change back to use musb_read/writew\n  usb: musb: core: fix IRQ check\n  usb: musb: fix kernel panic during s2ram(v2)\n"
    },
    {
      "commit": "2bd15f1f49629f110bbbbc5a2a226bec892de87c",
      "tree": "41bff6cce241bd43d657ee011a99d732bbea4e11",
      "parents": [
        "b14de3857227cd978f515247853fd15cc2425d3e"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Sun Jan 23 23:08:31 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Feb 03 16:42:17 2011 -0800"
      },
      "message": "USB SL811HS HCD: Fix memory leak in sl811h_urb_enqueue()\n\nIn drivers/usb/host/sl811-hcd.c::sl811h_urb_enqueue(), memory is allocated\nwith kzalloc() and assigned to \u0027ep\u0027. If we leave via the \u0027fail\u0027 label due\nto \u0027if (ep-\u003emaxpacket \u003e H_MAXPACKET)\u0027, then \u0027ep\u0027 will go out of scope\nwithout having been assigned to anything, so we\u0027ll leak the memory we\nallocated.\nThis patch fixes the leak by simply calling kfree(ep); before jumping to\nthe \u0027fail\u0027 label.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "3e434a86cb21fba95d86b8d756997c235eade037",
      "tree": "44d7e6e3c20835433c964ce5baafa3a64ef31628",
      "parents": [
        "5f5761cb8e77f2f2321b7847eef9629e6896cd47"
      ],
      "author": {
        "name": "Jarkko Nikula",
        "email": "jhnikula@gmail.com",
        "time": "Fri Jan 07 11:19:52 2011 +0200"
      },
      "committer": {
        "name": "Felipe Balbi",
        "email": "balbi@ti.com",
        "time": "Tue Feb 01 11:06:09 2011 +0200"
      },
      "message": "usb: ehci-omap: Show fatal probing time errors to end user\n\nThere are a few error paths in ehci_hcd_omap_probe that can be triggered\nbecause of memory allocation or hw failure. Change those dev_dbg error\nprints to dev_err with an error code printed so that the end users are able\nto notice the issue.\n\nSigned-off-by: Jarkko Nikula \u003cjhnikula@gmail.com\u003e\nSigned-off-by: Felipe Balbi \u003cbalbi@ti.com\u003e\n"
    },
    {
      "commit": "82e6923e1862428b755ec306b3dbccf926849314",
      "tree": "e0be095c30c7cbfeff2a2096cf53e9c2f92fed13",
      "parents": [
        "1bae4ce27c9c90344f23c65ea6966c50ffeae2f5"
      ],
      "author": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Fri Jan 21 11:04:45 2011 +0000"
      },
      "committer": {
        "name": "Russell King",
        "email": "rmk+kernel@arm.linux.org.uk",
        "time": "Mon Jan 24 19:05:19 2011 +0000"
      },
      "message": "ARM: lh7a40x: remove unmaintained platform support\n\nlh7a40x has only been receiving updates for updates to generic code.\nThe last involvement from the maintainer according to the git logs was\nin 2006.  As such, it is a maintainence burden with no benefit.\n\nThis gets rid of two defconfigs.\n\nSigned-off-by: Russell King \u003crmk+kernel@arm.linux.org.uk\u003e\n"
    },
    {
      "commit": "fd96d0d8d8079b1ea7a7e8943a4da9dfc9621124",
      "tree": "1d1314722847d56e3b703ec721f9534e93fa5580",
      "parents": [
        "3c47eb06f08eb970ea9d696bcdb57a175d37b470",
        "50d64676d132a8a72a1a1657d7b3e6efa53da1ac"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jan 24 08:11:18 2011 +0900"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Mon Jan 24 08:14:07 2011 +0900"
      },
      "message": "Merge branch \u0027for-usb-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/sarah/xhci into usb-linus\n\n* \u0027for-usb-linus\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/sarah/xhci:\n  xhci: Remove more doorbell-related reads\n  xHCI: fix printk_ratelimit() usage\n  xHCI: replace dev_dbg() with xhci_dbg()\n  xHCI: fix cycle bit set in giveback_first_trb()\n  xHCI: remove redundant parameter in giveback_first_trb()\n  xHCI: fix queue_trb in isoc transfer\n  xhci: Use GFP_NOIO during device reset.\n  usb: Realloc xHCI structures after a hub is verified.\n  xhci: Do not run xhci_cleanup_msix with irq disabled\n  xHCI: synchronize irq in xhci_suspend()\n  xhci: Resume bus on any port status change.\n"
    },
    {
      "commit": "a464dc4d4044c936d4558725fa2229fb4a1aa932",
      "tree": "a551fcf656c2a3bb489efc0f7e71f6bf6958c053",
      "parents": [
        "3bb8029a2445e289efade6133b01545143336f70"
      ],
      "author": {
        "name": "Arnaud Patard (Rtp)",
        "email": "arnaud.patard@rtp-net.org",
        "time": "Tue Jan 18 00:04:12 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Jan 22 18:48:10 2011 -0800"
      },
      "message": "USB: ehci-mxc: add work-around for efika mx/sb bug\n\nAdd support for setting CHRGVBUS to workaround a hardware bug on efika mx/sb\nboards.\nSee http://lists.infradead.org/pipermail/linux-arm-kernel/2011-January/037341.html\n\nSigned-off-by: Arnaud Patard \u003carnaud.patard@rtp-net.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "3bb8029a2445e289efade6133b01545143336f70",
      "tree": "8502898e82b76aed9e336fa07d7042cccfd1b348",
      "parents": [
        "96a3e79edff6f41b0f115a82f1a39d66218077a7"
      ],
      "author": {
        "name": "Eric Bénard",
        "email": "eric@eukrea.com",
        "time": "Thu Jan 13 14:53:17 2011 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Jan 22 18:48:08 2011 -0800"
      },
      "message": "USB: unbreak ehci-mxc on otg port of i.MX27\n\ncommit 711669e5b80b6f2d88f61ed8a9681f83d8cbd201 fixed port 0 support\nfor i.MX51 but broke it for (at least) i.MX27 which doesn\u0027t have\na usb_phy1 clock but has a pdev-\u003eid 0.\n\nSigned-off-by: Eric Bénard \u003ceric@eukrea.com\u003e\nCc: Arnaud Patard \u003carnaud.patard@rtp-net.org\u003e\nCc: Sascha Hauer \u003cs.hauer@pengutronix.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "cc604ddd118cf4a699c12bc41a5fa2d2f225f702",
      "tree": "6efdd3c28567a7cbdb030a08f1a27b95f88364ce",
      "parents": [
        "ad84e4a9efb7c8ed322bafb6ebdb9c3a49a3d3a8"
      ],
      "author": {
        "name": "Peter Tyser",
        "email": "ptyser@xes-inc.com",
        "time": "Mon Jan 10 17:34:14 2011 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Jan 22 18:38:58 2011 -0800"
      },
      "message": "USB: ehci-fsl: Fix \u0027have_sysif_regs\u0027 detection\n\nPreviously a check was done on an ID register at the base of a CPU\u0027s\ninternal USB registers to determine if system interface regsiters were\npresent.  The check looked for an ID register that had the format\nID[0:5] \u003d\u003d ~ID[8:13] as described in the MPC5121 User\u0027s Manual to\ndetermine if a MPC5121 or MPC83xx/85xx was being used.\n\nThere are two issues with this method:\n- The ID register is not defined on the MPC83xx/85xx CPUs, so its\n  unclear what is being checked on them.\n- Newer CPUs such as the P4080 also don\u0027t document the ID register, but\n  do share the same format as the MPC5121.  Thus the previous code did\n  not set \u0027have_sysif_regs\u0027 properly which results in the P4080 not\n  properly initializing its USB ports.\n\nUsing the device tree \u0027compatible\u0027 node is a cleaner way to determine if\n\u0027have_sysif_regs\u0027 should be set and resolves the USB initialization issue\nseen on the P4080.\n\nTested on a P4080-based system and compile tested on mpc512x_defconfig\nwith Freescale EHCI driver enabled.\n\nCc: Anatolij Gustschin \u003cagust@denx.de\u003e\nCc: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Kumar Gala \u003cgalak@kernel.crashing.org\u003e\nCc: linuxppc-dev@lists.ozlabs.org\nSigned-off-by: Peter Tyser \u003cptyser@xes-inc.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "f75593ceaa08e6d27aec1a5de31cded19e850dd1",
      "tree": "884e842e5ad6dbfd8035f8615106936d68c48a30",
      "parents": [
        "06f1b9715c324589b42be69ad33422b83bd42f02"
      ],
      "author": {
        "name": "Alan Stern",
        "email": "stern@rowland.harvard.edu",
        "time": "Thu Jan 06 10:17:09 2011 -0500"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Jan 22 18:36:43 2011 -0800"
      },
      "message": "USB: EHCI: fix DMA deallocation bug\n\nThis patch (as1440) fixes a bug in ehci-hcd.  ehci-\u003eperiodic_size is\nused to compute the size in a dma_alloc_coherent() call, but then it\ngets changed later on.  As a result, the corresponding call to\ndma_free_coherent() passes a different size from the original\nallocation.  Fix the problem by adjusting ehci-\u003eperiodic_size before\ncarrying out any of the memory allocations.\n\nSigned-off-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nTested-by: Larry Finger \u003cLarry.Finger@lwfinger.net\u003e\nCC: David Brownell \u003cdavid-b@pacbell.net\u003e\nCC: \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "baab93afc2844b68d57b0dcca5e1d34c5d7cf411",
      "tree": "eb97c38afa1039de058b2b1828a97bf5cd74a3f3",
      "parents": [
        "1e4cba8bd2cddd10849e769ff502e255c27c81b4"
      ],
      "author": {
        "name": "Alex He",
        "email": "alex.he@amd.com",
        "time": "Tue Dec 21 17:45:46 2010 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sat Jan 22 18:32:54 2011 -0800"
      },
      "message": "USB: EHCI: ASPM quirk of ISOC on AMD Hudson\n\nAMD Hudson also needs the same ASPM quirk as SB800\n\nSigned-off-by: Alex He \u003calex.he@amd.com\u003e\nCc: stable \u003cstable@kernel.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "50d64676d132a8a72a1a1657d7b3e6efa53da1ac",
      "tree": "b2c5b85f15e4068d29fd41d2e6e65f81dd7339d5",
      "parents": [
        "7961acd7327fe48e55abef277630abdbb3f2081a"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Wed Dec 15 14:18:11 2010 -0500"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:52:00 2011 -0800"
      },
      "message": "xhci: Remove more doorbell-related reads\n\nThe unused space in the doorbell is now marked as RsvdZ, not RsvdP, so\nwe can avoid reading the doorbell before writing it.\n\nUpdate the doorbell-related defines to produce the entire doorbell value\nfrom a single macro.  Document the doorbell format in a comment.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "7961acd7327fe48e55abef277630abdbb3f2081a",
      "tree": "dc54ae6af0a222017042d8acc4a84df9943c3472",
      "parents": [
        "f2c565e223af39ed38be5c84b1a37b591b22db83"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Mon Dec 20 17:14:20 2010 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:51:58 2011 -0800"
      },
      "message": "xHCI: fix printk_ratelimit() usage\n\nprintk_ratelimit() is misused in xhci-ring.c.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "f2c565e223af39ed38be5c84b1a37b591b22db83",
      "tree": "a8231ade4b22f47772713207504f846b117404c7",
      "parents": [
        "50f7b52a83a893929edf87a89ebc081ff26a7b91"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Mon Dec 20 17:12:24 2010 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:51:57 2011 -0800"
      },
      "message": "xHCI: replace dev_dbg() with xhci_dbg()\n\ndev_dbg() is used to print ordinary transfer messages in xhci-ring.c.\nSystem log messages will be flushed if CONFIG_USB_DEBUG is set. Replace the\ndev_dbg() with xhci_dbg().\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "50f7b52a83a893929edf87a89ebc081ff26a7b91",
      "tree": "8cf753001566c0b925bee66c9458a30d96b94b49",
      "parents": [
        "e1eab2e00015bfe48388920ff287efdbefb6af24"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Mon Dec 20 15:09:34 2010 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:51:55 2011 -0800"
      },
      "message": "xHCI: fix cycle bit set in giveback_first_trb()\n\ngiveback_first_trb() controls the cycle bit set of the start_trb, to ensure\nthat the start_trb is written last and the host controller will receive a\nwhole td at a time.\n\nHowever, if the ring is wrapped and cycle bit is toggled to zero, then\ngiveback_first_trb() will be of no effect. In this case, set the cycle bit of\nstart_trb to 1 at the beginning and clear it in giveback_first_trb().\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "e1eab2e00015bfe48388920ff287efdbefb6af24",
      "tree": "d2f6bb672c47717c41e8d67866686f7a0bd3f75a",
      "parents": [
        "47cbf6925cd0ef8af4b8165b43a60b5f37c36d8a"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Tue Jan 04 16:30:39 2011 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:51:54 2011 -0800"
      },
      "message": "xHCI: remove redundant parameter in giveback_first_trb()\n\nParameter *td is not used in giveback_first_trb(). Remove it.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "47cbf6925cd0ef8af4b8165b43a60b5f37c36d8a",
      "tree": "0f8e31424b650353580532504bd41d34345240d6",
      "parents": [
        "a6d940dd759bf240d28624198660ed34582a327b"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Mon Dec 20 14:49:48 2010 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:51:53 2011 -0800"
      },
      "message": "xHCI: fix queue_trb in isoc transfer\n\nFix the more_trbs_coming field of queue_trb() in isoc transfer.\n\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\n"
    },
    {
      "commit": "a6d940dd759bf240d28624198660ed34582a327b",
      "tree": "4a6ce6ef72bb872a9f0a94933b3d6f749b58538e",
      "parents": [
        "653a39d1f61bdc9f277766736d21d2e9be0391cb"
      ],
      "author": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Tue Dec 28 13:08:42 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:51:51 2011 -0800"
      },
      "message": "xhci: Use GFP_NOIO during device reset.\n\nWhen xhci_discover_or_reset_device() is called after a host controller\npower loss, the virtual device may need to be reallocated.  Make sure\nxhci_alloc_dev() uses GFP_NOIO.  This avoid causing a deadlock by allowing\nthe kernel to flush pending I/O while reallocating memory for a virtual\ndevice for a USB mass storage device that\u0027s holding the backing store for\ndirty memory buffers.\n\nThis patch should be queued for the 2.6.37 stable tree.\n\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "40a9fb17f32dbe54de3d636142a59288544deed7",
      "tree": "4a09844c73d72cbfa5b3e936377ec85c724c8550",
      "parents": [
        "0029227f1bc30b6c809ae751f9e7af6cef900997"
      ],
      "author": {
        "name": "Zhang Rui",
        "email": "rui.zhang@intel.com",
        "time": "Fri Dec 17 13:17:04 2010 -0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:28:52 2011 -0800"
      },
      "message": "xhci: Do not run xhci_cleanup_msix with irq disabled\n\nwhen unloading xhci_hcd, I got:\n[  134.856813] xhci_hcd 0000:02:00.0: remove, state 4\n[  134.858140] usb usb3: USB disconnect, address 1\n[  134.874956] xhci_hcd 0000:02:00.0: Host controller not halted, aborting reset.\n[  134.876351] BUG: sleeping function called from invalid context at kernel/mutex.c:85\n[  134.877657] in_atomic(): 0, irqs_disabled(): 1, pid: 1451, name: modprobe\n[  134.878975] Pid: 1451, comm: modprobe Not tainted 2.6.37-rc5+ #162\n[  134.880298] Call Trace:\n[  134.881602]  [\u003cffffffff8104156a\u003e] __might_sleep+0xeb/0xf0\n[  134.882921]  [\u003cffffffff814763dc\u003e] mutex_lock+0x24/0x50\n[  134.884229]  [\u003cffffffff810a745c\u003e] free_desc+0x2e/0x5f\n[  134.885538]  [\u003cffffffff810a74c8\u003e] irq_free_descs+0x3b/0x71\n[  134.886853]  [\u003cffffffff8102584d\u003e] free_irq_at+0x31/0x36\n[  134.888167]  [\u003cffffffff8102723f\u003e] destroy_irq+0x69/0x71\n[  134.889486]  [\u003cffffffff8102747a\u003e] native_teardown_msi_irq+0xe/0x10\n[  134.890820]  [\u003cffffffff8124c382\u003e] default_teardown_msi_irqs+0x57/0x80\n[  134.892158]  [\u003cffffffff8124be46\u003e] free_msi_irqs+0x8b/0xe9\n[  134.893504]  [\u003cffffffff8124cd46\u003e] pci_disable_msix+0x35/0x39\n[  134.894844]  [\u003cffffffffa01b444a\u003e] xhci_cleanup_msix+0x31/0x51 [xhci_hcd]\n[  134.896186]  [\u003cffffffffa01b4b3a\u003e] xhci_stop+0x3a/0x80 [xhci_hcd]\n[  134.897521]  [\u003cffffffff81341dd4\u003e] usb_remove_hcd+0xfd/0x14a\n[  134.898859]  [\u003cffffffff813500ae\u003e] usb_hcd_pci_remove+0x5c/0xc6\n[  134.900193]  [\u003cffffffff8123c606\u003e] pci_device_remove+0x3f/0x91\n[  134.901535]  [\u003cffffffff812e7ea4\u003e] __device_release_driver+0x83/0xd9\n[  134.902899]  [\u003cffffffff812e8571\u003e] driver_detach+0x86/0xad\n[  134.904222]  [\u003cffffffff812e7d56\u003e] bus_remove_driver+0xb2/0xd8\n[  134.905540]  [\u003cffffffff812e8633\u003e] driver_unregister+0x6c/0x74\n[  134.906839]  [\u003cffffffff8123c8e4\u003e] pci_unregister_driver+0x44/0x89\n[  134.908121]  [\u003cffffffffa01b940e\u003e] xhci_unregister_pci+0x15/0x17 [xhci_hcd]\n[  134.909396]  [\u003cffffffffa01bd7d2\u003e] xhci_hcd_cleanup+0xe/0x10 [xhci_hcd]\n[  134.910652]  [\u003cffffffff8107fcd1\u003e] sys_delete_module+0x1ca/0x23b\n[  134.911882]  [\u003cffffffff81123932\u003e] ? path_put+0x22/0x26\n[  134.913104]  [\u003cffffffff8109a800\u003e] ? audit_syscall_entry+0x2c/0x148\n[  134.914333]  [\u003cffffffff8100ac82\u003e] system_call_fastpath+0x16/0x1b\n[  134.915658] xhci_hcd 0000:02:00.0: USB bus 3 deregistered\n[  134.916465] xhci_hcd 0000:02:00.0: PCI INT A disabled\n\nand the same issue when xhci_suspend is invoked.  (Note from Sarah: That\u0027s\nfixed by Andiry\u0027s patch before this, by synchronizing the irqs rather than\nfreeing them on suspend.)\n\nDo not run xhci_cleanup_msix with irq disabled.\n\nThis patch should be queued for the 2.6.37 stable tree.\n\nSigned-off-by: Zhang Rui \u003crui.zhang@intel.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    },
    {
      "commit": "0029227f1bc30b6c809ae751f9e7af6cef900997",
      "tree": "4962aacd3349c149c1d1567aaa09cd9ac8efec0f",
      "parents": [
        "7111ebc97ed53a32314011c85a6f235f0dab8ae8"
      ],
      "author": {
        "name": "Andiry Xu",
        "email": "andiry.xu@amd.com",
        "time": "Mon Dec 27 17:39:02 2010 +0800"
      },
      "committer": {
        "name": "Sarah Sharp",
        "email": "sarah.a.sharp@linux.intel.com",
        "time": "Fri Jan 14 15:28:52 2011 -0800"
      },
      "message": "xHCI: synchronize irq in xhci_suspend()\n\nSynchronize the interrupts instead of free them in xhci_suspend(). This will\nprevent a double free when the host is suspended and then the card removed.\n\nSet the flag hcd-\u003emsix_enabled when using MSI-X, and check the flag in\nsuspend_common(). MSI-X synchronization will be handled by xhci_suspend(),\nand MSI/INTx will be synchronized in suspend_common().\n\nThis patch should be queued for the 2.6.37 stable tree.\n\nReported-by: Matthew Garrett \u003cmjg@redhat.com\u003e\nSigned-off-by: Andiry Xu \u003candiry.xu@amd.com\u003e\nSigned-off-by: Sarah Sharp \u003csarah.a.sharp@linux.intel.com\u003e\nCc: stable@kernel.org\n"
    }
  ],
  "next": "7111ebc97ed53a32314011c85a6f235f0dab8ae8"
}
