USB: EHCI: Fix bug in updating root hub state during initialization

commit e879990 (USB: EHCI: remove usages of hcd->state) removed the
hcd->state usage in EHCI driver.  Instead rh_state field of ehci_hcd
struct should be used. But the current code is still using
hcd->state. This bug is introduced during 3.4 kernel porting.

If rh_state field is not updated to RUNNING from HALT state during
root hub initialization, interrupts are not handled by EHCI code in
ehci-hcd.c. This causes multiple interrupts getting triggered and
eventually leads to disabling of USB interrupt by kernel. Due to this,
enumeration of connected peripherals will fail.

CRs-Fixed: 385124
Change-Id: Icbfaebd4830e0e2c00c2f6531242417e6047950d
Signed-off-by: Vijayavardhan Vennapusa <vvreddy@codeaurora.org>
usb: ehci-msm: Prevent USB resume during system suspend

MSM USB host controller drivers release wakelocks only after
USB bus gets suspended. This means that at the time of system
suspend, USB devices and controller are already in suspend
state. As there are no additional power savings by disabling
wakeup capability during LPM, hence, mark HCD bus's skip_resume
flag so that USB core doesn't try to resume devices during suspend
to change remote-wakeup flags. This also avoids unnecessarily
resuming USB BUS when coming out of suspend even if there is no
wakeup USB event.

Change-Id: Icf0aa8001cde6bfc5cc5b148a34e344a3015ac58
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
msm: msm_bus: fix memory leak in msm_bus_fabric_probe

Certain bus driver data structures do not get freed in the error
paths of msm_bus_fabric_probe. Fix the memory leak.

Change-Id: I7fd890612e33ca519fa4d94edde1954b60b8ef06
Signed-off-by: Syed Rameez Mustafa <rameezmustafa@codeaurora.org>
msm: msm_bus: Add checks during bus client unregistration

During unregistration clients should withdraw all pending
requests. This was earlier done in update-request function.
However, that caused acpuclock client requests to be
incorrectly zeroed out.

It seems more appropriate to let the client ensure that
they correctly clean up their requests than to have bus
driver forcefully remove non-zero requests. Hence, a
warning has been added in the unregistration path.

Change-Id: Icfd4f62f46fdd3219dc685007029be21b983c2d0
CRs-Fixed: 510389
Signed-off-by: Gagan Mac <gmac@codeaurora.org>
msm: msm_bus: Suspected fix for deadlock

mutex is not released while checking for
null pdata which can lead to possible deadlock
condition.

Change-Id: I1dc3efd725df5bb75c96434a81d9a8f3f868cd0a
Signed-off-by: Alok Chauhan <alokc@codeaurora.org>
msm: msm_bus: no need to bring actual bandwidth back
fuji: disable usb storage debug
fuji: more usb hid support
fuji: add usb printer support
HID: wiimote: fix uninitialized var