Commits on Apr 24, 2014
  1. block: support volname for HTC devices with proc/emmc support

    Flemmard authored and mdmower committed Apr 21, 2014
    gets data from emmc_partitions and write it down on mmcblk0pX partitions
    this enables vold by-name mappings
    Change-Id: I4af7f34919ae1e94b960fcabfcfb70fe50825cf7
Commits on Nov 17, 2013
  1. msm: vidc: Validate userspace buffer count

    Pachika, Vikas Reddy authored and cyanogen committed Nov 1, 2013
    Makesure the number of buffers count is less than
    the maximum limit to avoid structure overflow errors.
    Change-Id: Icf3850de36325637ae43ac95f1c8f0f63e201d31
    CRs-fixed: 563694
    Signed-off-by: Pachika, Vikas Reddy <>
  2. msm: vidc: Validate userspace buffer count before using it

    Pachika, Vikas Reddy authored and cyanogen committed Nov 5, 2013
    Validate the number of buffers count variable before
    using it to avoid structure overflow error.
    Change-Id: I61582c93e0f26ec6842e437134fb8a42bdbc36ff
    CRs-fixed: 563654
    Signed-off-by: Pachika, Vikas Reddy <>
  3. msm: vidc: Initialize kernel space stack variables

    Deepak Verma authored and cyanogen committed Oct 18, 2013
    This change initializes kernel space stack variables
    that are passed between kernel space and user space
    using ioctls.
    Non initialization of these variables may lead to
    leakage of memory values from the kernel stack to
    user space.
    Change-Id: Icb195470545ee48b55671ac09798610178e833e1
    CRs-fixed: 556771,563420
    Signed-off-by: Deepak Verma <>
Commits on Nov 9, 2013
  1. msm: kgsl: Do not execute shader on wakeup from power collapse for 8064

    Anshuman Dani authored and intervigilium committed Oct 24, 2013
    Reverting "execute shader on wakeup from power collapse"
    workaround for 8064.
    This is causing GPU hang with all graphics test cases.
    CRs-fixed: 564030
    Change-Id: I7cc0eaad070fa929951be7247f95f24c1c7d849a
    Signed-off-by: Anshuman Dani <>
  2. msm: kgsl: Ignore kgsl flags while submitting cmds

    Anshuman Dani authored and intervigilium committed Oct 22, 2013
    Allow KGSL_CMD_FLAGS_EOF(end of frame) marker flag to
    pass while adding userspace commands to ringbuffer.
    CRs-fixed: 564030
    Change-Id: I730143d2d1a0f3231705371f2119c55e277849e2
    Signed-off-by: Anshuman Dani <>
Commits on Nov 7, 2013
  1. Revert "msm: msm_fb: Map RGB layers to the max possible size."

    intervigilium committed Nov 7, 2013
    This reverts commit 0d1e8ba.
    Change-Id: I93b3e11bb52d00dd418a17ad48c84151ead06fc6
  2. Revert "msm: msm_fb: Fix Regressions because of overmap changes."

    intervigilium committed Nov 7, 2013
    This reverts commit 1603038.
    Change-Id: I83b3e01bb52d01dd488a17dd48e84b5fead06fc6
Commits on Nov 5, 2013
  1. ASoC: msm: qdsp6: Fix pop noise seen with touch tone during playback

    Mohammad Johny Shaik authored and intervigilium committed Sep 18, 2013
    Issue: When a session is opened for playback of the touch tone and
    	routed through the COPP, the PBE and IIR params are being
    	reconfigured in the COPP every time a session is open.
    Rootcause:Configuring the PBE/IIR in the COPP every time a session
               is open.
    Fix: Configuring the PBE and IIR param in the COPP one time a session
          is open
    CRs-Fixed: 541722
    Change-Id: If0d1a8c6893a94186e1c6c2a75432d2f4a89f842
    Signed-off-by: Satish Kamuju <>
  2. ASoC: msm:Initialize local variable output_meta_data.

    Mohammad Johny Shaik authored and intervigilium committed Sep 24, 2013
    The local variable output_meta_data is not initialized if
    prtd->meta_data_mode is false. It can lead unexpected behavior
    Change-Id: I64f87342b02a3fb7b5c09c376f72ef7e0ca1efd6
    Signed-off-by: Mohammad Johny Shaik <>
    Signed-off-by: Satish Kamuju <>
  3. msm: kgsl: Use msecs_to_jiffies for ADRENO_IDLE_TIMEOUT

    Hareesh Gundu authored and intervigilium committed Oct 15, 2013
    This change is about to cherrypick of missing code part
    from Change-Id: Ic0dedbad33630706d909931bf616bd69399f7ff1
    Change-Id: I6c9766be0651e99251e1cb280f92e06e47875b4f
    Signed-off-by: Hareesh Gundu <>
  4. Revert "msm: kgsl: Submit a draw command on resume"

    Lynus Vaz authored and intervigilium committed Oct 4, 2013
    This reverts commit a24ed9e2aac9c9d85d84c6f49eb451d8fee7b0b5.
    Change-Id: I08d8082b9a849227032d6f5f46f12863865d85a2
    Signed-off-by: Lynus Vaz <>
    Signed-off-by: Ananta Kishore K <>
  5. Execute shader on wakeup from power collapse

    rruigrok authored and intervigilium committed Sep 14, 2013
    After wakeup from power-collapse, a shader execution is needed
    to reset the GPU to a known and stable state on certain targets.
    This change implements the required shader execution only
    on initialization and on recovery from power-collapse on A3xx
    GPU targets.
    CRs-fixed: 526544
    Change-Id: Ibd33578ecbb94df5ff276d1e460d94235a82dc43
    Signed-off-by: Richard Ruigrok <>
    Signed-off-by: Ananta Kishore K <>
  6. msm: kgsl: enable CPU IRQ while suspending context

    Gaurav Gagrani authored and intervigilium committed Oct 9, 2013
    Make sure that CPU interrupt is enabled before calling adreno
    suspend_context when moving from NAP/SLEEP to SLUMBER state.
    We send commands to GPU in adreno_drawctxt_switch() which will generate
    GPU interrupt. Since CPU interrupt is not enabled, adreno_idle() will
    fail because pending interrupt will not be served by CPU this causes
    false GPU hang.
    CRs-Fixed: 547813
    Change-Id: Ia4b730b8f8cda1e820f571ffb7ddb00336ca1a8c
    Signed-off-by: Gaurav Gagrani <>
  7. msm: kgsl: Remove drawctxt_active from setstate default

    Jordan Crouse authored and intervigilium committed Aug 30, 2013
    drawctxt_active is cleared after the old context is removed
    during context switch.  Unfortunately, the context restore calls
    adreno_use_default_setstate() which always returns true if
    drawctxt_active is NULL, effectively always forcing us down the
    software path.
    Remove the check - adreno_use_default_setstate() already checks to see
    if the GPU is idle and that is a more reliable verification that the
    software path is worth going down.
    Change-Id: Ic0dedbad57d7783bc23dd925a277a63cd2d78a7e
    Signed-off-by: Jordan Crouse <>
    Signed-off-by: Hareesh Gundu <>
  8. msm: kgsl: Hold driver process mutex till sysfs entries deleted

    Prakash Kamliya authored and intervigilium committed Sep 3, 2013
    sysfs entries deletion logic is not under the driver
    process mutex lock, there was a Camera test case
    where a single process was trying to call
    kgsl_open/kgsl_release very rapidly from multiple
    thread, sometimes sysfs entries remained valid
    and kgsl_open was trying to create new sysfs
    entries for same process id. This caused
    WARNING in kernel logs "sysfs: cannot create
    duplicate filename '/devices/virtual/kgsl/kgsl/proc/277'"
    This change holds the driver process mutex
    lock till sysfs entries are deleted.
    Change-Id: I0f66314e704c2b53657961303f76e2bd4f34e5b5
    Signed-off-by: Prakash Kamliya <>
  9. msm: kgsl: Do not wait for FT gate in fault tolerance state

    Tarun Karra authored and intervigilium committed Aug 22, 2013
    When device start fails, device is in INIT state and FT is triggered.
    In FT we trigger snapshot which waits on ft_gate when active count is
    0 and device is not in active state. This causes a deadlock. This
    change does not wait for FT gate in FT state and thereby prevents
    the deadlock.
    CRs-Fixed: 526206
    Change-Id: Id9e0a7c3f3f9367d0b3cc17e45fbba4b42bebf64
    Signed-off-by: Tarun Karra <>
  10. msm: kgsl: always check ft and hw gates in kgsl_active_count_get

    jgebben authored and intervigilium committed Apr 29, 2013
    The device state can fluctuate during recovery and resume, so
    it is safer to check the gates unconditionally rather than
    trust the state. The gates are left open until recovery
    or suspend starts.
    Change-Id: Idad91976ceba0904425e54c71faf88b4fccb8fdd
    Signed-off-by: Jeremy Gebben <>
  11. msm: kgsl: Get an active count before snapshotting GPU

    Hareesh Gundu authored and intervigilium committed Sep 25, 2013
    Acquire an active count before attempting to capture a snapshot.
    Doing so prevents instances of not being able to snapshot because of
    switched off clocks.
    CRs-fixed: 511878
    Change-Id: Ib80b57c127566e274d4018001561f4da7ea38265
    Signed-off-by: Hareesh Gundu <>
  12. msm: vidc: Check validity of userspace address

    Deepak Verma authored and intervigilium committed Oct 21, 2013
    Before writing to a userspace address, verification
    of the validity of user space address is required.
    Change-Id: I9141e44a6c11aaf3f4d57c08bb0dd26a7b214f34
    CRs-fixed: 556356
    Signed-off-by: Deepak Verma <>
  13. msm: msm_fb: Fix Regressions because of overmap changes.

    Vishnuvardhan Prodduturi authored and intervigilium committed Oct 22, 2013
    Previous MDP overmap change is causing issues with HDMI because of
    assumptions about overmap. This patch fixes all such issues.
    Change-Id: Ifd2f8a0596d9df08538464bdcdd5946cf84db4d9
    Signed-off-by: Vishnuvardhan Prodduturi <>
  14. msm: msm_fb: Map RGB layers to the max possible size.

    Vishnuvardhan Prodduturi authored and intervigilium committed Oct 18, 2013
    IOMMU Page Faults are observed on RGB layers during stability
    because MDP is trying to fetch out of mapped area of the buffer.
    This patch avoids the issue by overmapping the RGB layers to the
    max possible RGB buffer size.
    Change-Id: Idc7ac9acad70e351acac5dba2ae43b8731e84d35
    Signed-off-by: Vishnuvardhan Prodduturi <>
  15. msm: msm_fb: Remove Warnings when required BW exceeds Max Bandwidth.

    Vishnuvardhan Prodduturi authored and intervigilium committed Oct 9, 2013
    When required BW exceeds max bandwidth, warnings are printed on the
    console which are causing performance degradation. This Patch fixes
    the issue.
    Change-Id: I769f55dd76a3f28639b848bd5461e2ff3abae3f5
    Signed-off-by: Vishnuvardhan Prodduturi <>
  16. msm: fb: Copy unsigned int for notify update

    Krishna Chaitanya Parimi authored and intervigilium committed Oct 3, 2013
    Change to correct signature of msmfb_notify_update
    from the ioctl declaration.
    Change-Id: Ia7bdfd3dbe8494a641ffd46d484794b4bec7d27c
    Signed-off-by: Krishna Chaitanya Parimi <>
  17. msm: fb: Null check mfd data

    Krishna Chaitanya Parimi authored and intervigilium committed Oct 3, 2013
    Add appropriate null check for mfd data
    structure before accessing it's members.
    This prevents null pointer accesses in
    the driver.
    Change-Id: I5aae937f839e4f6ed8d5c5a4b54ab45f0ff07332
    Signed-off-by: Krishna Chaitanya Parimi <>
  18. msm: msm_fb: validating backlight level and scale value

    Krishna Chaitanya Parimi authored and intervigilium committed Aug 27, 2013
    Validating the value of backlight to be not more than the
    max value and also ensuring that the backlight scale value
    is not more than 1024, thereby ensuring that backlight
    scaling factor is not more than 1
    Change-Id: I6a6f4f0f0a8c272edcac5078276fb406ddee3e90
    Signed-off-by: Krishna Chaitanya Parimi <>
  19. msm: vidc: Validate input data before processing

    Deepak Verma authored and intervigilium committed Sep 20, 2013
    User controlled data needs to be validated before
    processing, otherwise it may corrupt existing data
    and other programming variables which may further
    lead to crash in kernel space.
    This change validates user specified buffer's data,
    such as offset and data length, before performing
    any operations in kernel.
    Change-Id: Idb2a5c4c270cdbb55adfc0c22b9296b7dd359de9
    CRs-fixed: 547695
    Signed-off-by: Deepak Verma <>
  20. msm: vidc: return error in case of init failure

    Pushkaraj Patil authored and intervigilium committed Sep 12, 2013
    Return error if error comes in video driver
    Change-Id: I54c516808587fb7d94c3d517f8c72c6c9aa9d91d
    CRs-fixed: 542535
    Signed-off-by: Pushkaraj Patil <>
Commits on Oct 19, 2013
  1. msm_fb: display: set HTC width and height panel parameters

    intervigilium committed Oct 19, 2013
    Change-Id: I8a802b95fed1acc635c5a59fb6be91b98eec5823
Commits on Oct 10, 2013
  1. dlx: Update board and defconfig for USB changes

    cyanogen authored and invisiblek committed Oct 10, 2013
    Change-Id: I1e27828c42aefee52b0b4bd49c19e708f5420797
Commits on Oct 9, 2013
  1. m7: Disable USB debug logging

    cyanogen authored and Gerrit Code Review committed Oct 8, 2013
    Change-Id: I8a60610575af0e254c1ea16c95f7af5d9567d58e
  2. usb: Squashed commit of upstream USB fixes

    Hemant Kumar Gerrit Code Review
    Hemant Kumar authored and Gerrit Code Review committed Sep 18, 2012
     * Corrects power management and latency/jitter issues.
    EHCI: HSIC: Increase IAA watchdog timeout to 100ms
    In order to remove queue heads(QH) from Asynchronous Schedule Interrupt
    on Async Advance(IAA) bit is used in USBCMD as doorbell by ehci driver
    to handshake with host controller. When the host controller has evicted
    all appropriate cached schedule states, then the host controller will
    assert an interrupt which indicates ehci driver that it is safe to
    modify a removed queue head from the asynchronous list.
    EHCI driver walks through the asynchronous schedule list to search for
    the QH(say QH1) which needs to be unlinked from HW. It removes QH1 from
    the list, sets ehci->reclaim points to QH1 and starts iaa watchdog timer
    after setting IAAD bit in USBCMD register. Before getting IAAD interrupt
    for QH1, rest of other interface drives can also issue unlinking of their
    QHs which get added to the list of QHs to be removed and pointed by
    ehci->reclaim. It is possible that IAAD interrupt gets delayed for more
    than current watchdog timeout value. This causes watchdog handler to
    finish the unlinking process of QH1 with ehci lock held. Unlinking process
    ends by setting QH1's next pointer to NULL, ehci->reclaim pointing to next
    QH to be unlinked(say QH2) and calling qh_completions() to retire all the
    transfer descriptor associated with QH1. qh_completions() releases
    ehci->lock in ehci_urb_done(). There is a possibility of controller
    asserting IAAD interrupt during this time on other core. After ehci lock
    is released, ehci irq handler gets a chance to acquire ehci lock and
    execute which results in premature unlinking of QH2, since ehci->reclaim
    now points to QH2. QH2 is not yet removed from the asynchronous list and
    ehci driver has not initiated IAAD handshake for QH2. Similarly unlinking
    ends for QH2 by setting QH2's next qh pointer to NULL, since QH2 is not yet
    removed from asynchronous list, this breaks the list. Due to this racing
    between IAAD interrupt and watchdog timer interrupt ehci driver loses
    track of which IAAD interrupt triggered for which QH. This results in NULL
    pointer dereference while searching for subsequent QHs to be unlinked, in
    already broken asynchronous list. Hence increase the IAA watchdog timeout
    value from 10ms to a higher value of 100ms. Higher timeout value avoids
    the race between IAAD interrupt and IAA watchdog handler and allows IAAD
    interrupt to finish the unlinking of QH. Watchdog handler is still be
    used to take care of scenarios when controller does not generate IAAD
    interrupt for some reason (which is rare, but possible).
    CRs-Fixed: 396250
    Change-Id: Id1deccf834ca1108121c6533e016b9b3f5fc0ff2
    Signed-off-by: Hemant Kumar <>
    (cherry picked from commit 8a657de16d301e1bfab7ba69349446720d4a70e3)
    Signed-off-by: Sudhir Sharma <>
    usb: ehci-msm2: Fix unbalanced clock warning
    The EHCI controller may be in suspend state in which its clocks
    are already disabled. Fix warning given by clock subsystem when
    disabling the clocks a second time when the controller's platform
    device is removed by first checking if the device is suspended.
    Change-Id: I3c491d0db11cc172d0e6779042c04fc726936b36
    Signed-off-by: Jack Pham <>
    usb: ehci-msm2: Fix controller autosuspend
    When the EHCI controller is removed using platform_device_del(),
    the PM disable_depth counter is decremented once by the driver
    core. Thus the driver's remove callback additionally calling
    pm_runtime_disable() is leading to an unbalanced counter since
    pm_runtime_enable() call happens only once when platform_device_add()
    calls the probe callback. Fix this by removing the extraneous
    Change-Id: Ie76256ac50ba65022814285bf57feca109f79d6b
    Signed-off-by: Jack Pham <>
    Revert "usb: ehci-msm-hsic: replace wakelock with wakeup source"
    This reverts commit dd5ad79f501c462fbee8e36c57747883d2317d29.
    Signed-off-by: Iliyan Malchev <>
    Change-Id: Ie9aeff9fe6e1ab1cf3797dc7d7499ee9ab8a6654
    Signed-off-by: Ajay Dudani <>
    Signed-off-by: Iliyan Malchev <>
    usb: ehci-msm-hsic: abort suspend when interrupts are pending
    Since the wakelock was removed, an interrupt coming during the
    transition to system suspend relies on pm_stay_awake() to indicate
    that the controller's wakeup source is now active. However, this
    depends on pm_save_wakeup_count() to be called by the process
    that initiated the suspend. The forthcoming autosleep feature will
    be doing this.
    But until autosleep is implemented, for robustness additionally
    introduce a .suspend_noirq callback which checks for pending
    interrupts and returns -EBUSY if there are any, which will force
    the PM core to unwind its suspend actions.
    Change-Id: If286d654b667d00a0130accb7a783258901ff760
    Signed-off-by: Jack Pham <>
    msm: hsic: Retry port RESUME if unable to send SOFs within 3ms
    Due to h/w bug in hsic controller, interrupts are disabled during
    resume signalling (~20ms), commit: e404049, which may result in
    below issues
    1. Delayed MDP interrupts causing display stutters
    2. Since default workqueue disables preemption for 20ms, the kernel
       scheduler schedules out the worker thread for long time. It results
       in MDM crash due to delayed response
    To avoid busy loop, port resume is performed without disabling the
    interrupts. Due to this if resume time constraint is not met then
    don't start SOF and retry RESUME after some time. This delay (w/o SOF)
    lets the device to enter SUSPEND state (after issuing remote wakeup)
    and followed by RESUME after sometime. Also, Move the resume code to
    hsic controller driver to avoid changes to ehci upstream code.
    CRs-Fixed: 383752
    Change-Id: Ic4768587bbb9a00d8cf495065ec9e14c46a5c1d4
    Signed-off-by: Vamsi Krishna <>
    Signed-off-by: Manu Gautam <>
    Signed-off-by: Ajay Dudani <>
    EHCI: Update qTD next pointer in QH overlay region during unlink
    There is a possibility of QH overlay region having reference to a stale
    qTD pointer during unlink.
    Consider an endpoint having two pending qTD before unlink process begins.
    The endpoint's QH queue looks like this.
    qTD1 --> qTD2 --> Dummy
    To unlink qTD2, QH is removed from asynchronous list and Asynchronous
    Advance Doorbell is programmed.  The qTD1's next qTD pointer is set to
    qTD2'2 next qTD pointer and qTD2 is retired upon controller's doorbell
    interrupt.  If QH's current qTD pointer points to qTD1, transfer overlay
    region still have reference to qTD2. But qtD2 is just unlinked and freed.
    This may cause EHCI system error.  Fix this by updating qTD next pointer
    in QH overlay region with the qTD next pointer of the current qTD.
    CRs-Fixed: 386914
    Change-Id: Idbc41b93674955325c8da445fcb25d189bddddb2
    Signed-off-by: Pavankumar Kondeti <>
    EHCI: HSIC: Prevent disabling wakeup irq twice
    If PM resume and Wakeup irq happen at same time
    its possible to disable wakeup irq twice. Prevent
    the same by protecting with spinlock
    CRs-Fixed: 396895
    Change-Id: I3320478d6c770787bc571964f4a38dce6927af63
    Signed-off-by: Hemant Kumar <>
    (cherry picked from commit d343c01025fc3bb597fbb60c8fc4369cc17cbf5d)
    Signed-off-by: Sudhir Sharma <>
    EHCI: HSIC: Handle wakeup interrupt properly during probe
    During HSIC probe driver registers the level triggered interrupt
    on wakeup gpio. Wakeup irq line is disabled based on the return
    status of interrupt registration. There is a possibility that
    wakeup gpio is already pulled high after registering the interrupt
    which can cause wakeup interrupts to be fired on continuously
    without getting chance to disable the irq line. Hence do not
    enable wake up interrupt on request irq.
    CRs-Fixed: 394540
    Signed-off-by: Hemant Kumar <>
    (cherry picked from commit bbcdcbc3f09cc90d4b8fdd607244c3d73c9ae801)
    Change-Id: I9b20d54d919333d11201d30513b4111f3fb31df3
    Signed-off-by: Sudhir Sharma <>
    EHCI: HSIC: Fail root hub bus suspend when port is not enabled
    HSIC controller can not detect HSIC device in low power mode.  Hence
    controller suspend is allowed only when port is enabled.  But this
    check is done in controller suspend routine.  Controller suspend is
    attempted after root hub bus is suspended.  Even if we fail, controller
    suspend, root hub bus remains in suspend state.  This would delay
    the enumeration of HSIC device as root hub bus resume takes some time.
    CRs-Fixed: 396444
    Signed-off-by: Pavankumar Kondeti <>
    (cherry picked from commit a723f744025854c7132410fd1699bc0997617fb9)
    Change-Id: I30c2117a0a6debfbc98a08610a83b56d5ac75f5b
    Signed-off-by: Sudhir Sharma <>
    ehci_msm2: Fix enumeration during PHY suspend failure
    PHY suspend fails as part of USB LPM at times. Currently, we are resetting
    the PHY and Link during this failure case, but the EHCI stack is not reset
    due to which we are seeing device enumeration failure cases. Fix this issue
    by removing hcd and adding hcd back during PHY suspend failure.
    CRs-Fixed: 382279
    Change-Id: I2d69e75409ec2b783dbdd06de4f34fe0356c1c45
    Signed-off-by: Chiranjeevi Velempati <>
    (cherry picked from commit ce16958d07cedf2c46c97a9b0088a410c1a464a2)
    EHCI: HSIC: Fix GPT timer count values used for resume sequence
    The counter value to be loaded into GPT timer represents the time
    in micro seconds minus 1 for the timer duration.  The current code
    incorrectly programs the timer.  Fix it.
    CRs-Fixed: 449090
    Change-Id: I53eddb6b4323bbfaf0e3a1d3aaa0fb9120c70647
    Signed-off-by: Pavankumar Kondeti <>
  3. Revert "USB: ensure parent device is resumed for child's system-resume"

    Jack Pham Gerrit Code Review
    Jack Pham authored and Gerrit Code Review committed Nov 7, 2012
    This reverts commit de86e64.
    Commit 7c8527ce ("PM: Prevent runtime suspend during system resume")
    fixes the general issue of a parent device being prematurely
    runtime suspended before a child device is resumed. It does so
    by moving the pm_runtime_put_sync() call from the device_resume()
    stage to device_complete(), which happens to act on the devices
    in reverse (children before parent) order.
    Thus when usb_resume() is called by device_resume(), we know its
    parent will be runtime PM enabled and its usage counter is still
    non-zero. This obviates the need to do an additional
    pm_runtime_get_sync() before calling usb_resume_both() as the
    device and its interfaces now have the opportunity to increment
    the parent's power.child_count if necessary without fear of
    having a runtime suspended parent.
    (cherry picked from commit d48e904824ec38f9db01fcaccb527063b4c5d894)
    Change-Id: I6d092c649889daf9483ed27aebe67df50d38ae91
    CRs-fixed: 396041
    Signed-off-by: Jack Pham <>
  4. PM: Prevent runtime suspend during system resume

    AlanStern authored and Gerrit Code Review committed Sep 19, 2012
    This patch (as1591) moves the pm_runtime_get_noresume() and
    pm_runtime_put_sync() calls from __device_suspend() and
    device_resume() to device_prepare() and device_complete() in the PM
    The reason for doing this is to make sure that parent devices remain
    at full power (i.e., don't go into runtime suspend) while their
    children are being resumed from a system sleep.
    The PCI core already contained equivalent code to serve the same
    purpose.  The patch removes the duplicated code, since it is no longer
    needed.  One of the comments from the PCI core gets moved into the PM
    core, and a second comment is added to explain whe the _get_noresume
    and _put_sync calls are present.
    Change-Id: I31d311cd9d82ad53eca57d5825ae4d81c32e92b5
    Signed-off-by: Alan Stern <>
    Signed-off-by: Rafael J. Wysocki <>
  5. msm: usbaudio: Fix memory allocation for USB audio module init

    Alex Fradkin Gerrit Code Review
    Alex Fradkin authored and Gerrit Code Review committed Jan 3, 2013
    Fix memory allocation issue in snd_usb_audio_init()
    use sizeof(struct) insead of sizeof(pointer)
    Change-Id: I270bbd7111e97dd4e0e92378f61d5025e16f5fca
    Signed-off-by: Alex Fradkin <>