Permalink
Switch branches/tags
Nothing to show
Commits on Mar 1, 2013
  1. msm: kgsl: Optimize page_alloc allocations

    Jordan Crouse committed with KonstaT Jul 2, 2012
    User memory needs to be zeroed out before it is sent to the user.
    To do this, the kernel maps the page, memsets it to zero and then
    unmaps it.  By virtue of mapping it, this forces us to flush the
    dcache to ensure cache coherency between kernel and user mappings.
    Originally, the page_alloc loop was using GFP_ZERO (which does a
    map, memset, and unmap for each individual page) and then we were
    additionally calling flush_dcache_page() for each page killing us
    on performance.  It is far more efficient, especially for large
    allocations (> 1MB), to allocate the pages without GFP_ZERO and
    then to vmap the entire allocation, memset it to zero, flush the
    cache and then unmap. This process is slightly slower for very
    small allocations, but only by a few microseconds, and is well
    within the margin of acceptability. In all, the new scheme is
    faster than the default for all sizes greater than 16k, and is
    almost 4X faster for 2MB and 4MB allocations which are common for
    textures and very large buffer objects.
    
    The downside is that if there isn't enough vmalloc room for the
    allocation that we are forced to fallback to a slow page by
    page memset/flush, but this should happen rarely (if at all) and
    is only included for completeness.
    
    CRs-Fixed: 372638
    Change-Id: Ic0dedbadf3e27dcddf0f068594a40c00d64b495e
    Signed-off-by: Jordan Crouse <jcrouse@codeaurora.org>
  2. Update KGSL from ics_chocolate

    Grigori Goronzy committed with KonstaT Feb 24, 2013
    Lift KGSL from CAF's ics_chocolate branch as of commit 92b921b3. Modify
    board config and fixup various things to make it work right.
    
    Notably, this should fix some possible stability problems and fixes
    out of vmalloc space problems (white textures).
    
    Change-Id: I48eb04d464edd6ae73916d8c666818bac51d9cfb
Commits on Jan 29, 2013
  1. msm: display: fb blend setting via MSMFB_METADATA_SET ioctl

    Ken Zhang committed with KonstaT Aug 25, 2012
    MSMFB_METADATA_SET ioctl is added for the fb user to pass
    in additional infomation rather than using reserved
    fields.
    User can set pre-multiplied alpha for the frame buffer via this
    ioctl, overlay blend setting will take this into account.
    
    Change-Id: Ic2f6236d84691fb03174ec479874c6928489ea30
  2. msm_fb: fixup MDP 3.00 vsync events

    grigorig committed with KonstaT Jan 27, 2013
    This is the sum of several fixes and improvements to the MDP 3.00
    vsync event code.
    
    Make sure to never switch off MDP command clock twice; add timeout
    to the vsync wait completion and interpret the return value of the
    completion function correctly.
    
    Change-Id: Ic0a699c98a90e896a9ba185793cc7d9187bb6ec1
  3. msm_fb: vsync events for legacy MDP 3.00 targets

    grigorig committed with KonstaT Jan 23, 2013
    Pieced together from current code in CAF. This is very specific to
    MDP 3.00 targets that use the LCDC display controller, and it might
    break horribly and badly on anything else.
    
    Change-Id: I2b7086a17fd22a04d61d7962f4ea98ab1af00442
Commits on Jan 5, 2013
  1. fix charger mode detection

    KonstaT committed Jan 5, 2013
    Change-Id: Ic10913786edabe509569ef81eb808a4ee39254f9
Commits on Jan 1, 2013
  1. update ondemand governor & add boostpulse support

    KonstaT committed Dec 21, 2012
    Change-Id: Icc632681738fe5fc571420430291bd92339826af
Commits on Dec 25, 2012
  1. backport usb gadget from msm-3.0 kernel

    KonstaT committed Dec 25, 2012
    KANGed from WaylandACE (thanks :))
    
    Change-Id: I2e267bdee2895f91ca1d69e68ddf10b6894b3351
Commits on Nov 6, 2012
  1. msm: rotator: add downscale support in rotator

    adriansm committed with KonstaT Oct 22, 2011
    Rotator is capable of performing 1/2, 1/4 and 1/8 down scaling. Add
    downscale_ratio parameter to provide support for this feature.
    
    CRs-Fixed: 315874
    Change-Id: I57dc3456ccc9bec2a125750b3e9909ffcbaf45f6
    Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
  2. mm: ashmem: fix deadlock when system is low on memory

    Yuanyuan Zhong committed with KonstaT Jul 2, 2011
    When system is low on memory, allocating memory while holding the
    ashmem_mutex may try to directly reclaim memory. Then ashmem_shrink()
    is called in same thread. It will deadlock at acquiring ashmem_mutex.
    This change lets ashmem_shrink() return failure if ashmem_mutex is not
    available. Memory will be reclaimed from others.
    
    Change-Id: I3b6024d5477d37245f4ebde6d7069fb77af789ee
    Signed-off-by: Yuanyuan Zhong <yuanyuan.zhong@gmail.com>
  3. mm: ashmem: Make sure vma is valid while flushing

    Shubhraprakash Das committed with KonstaT Dec 22, 2011
    Ensure that the vma that the ashmem region is tied to
    is valid before flushing and hold the mm semaphore so
    that the vma does not get destroyed from under while
    it's being flushed.
    
    CRs-Fixed: 326685
    Change-Id: I86320ffe9e6570e6ffa7dda68ab26be7aed86afd
    Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
  4. mm: ashmem: Add cache clean and invalidate ioctls for ashmem

    Shubhraprakash Das committed with KonstaT Jul 19, 2011
    Change-Id: Idc120f9f869c1a68e5f012327aa7f599ac065fce
    CRs-fixed: 291124
    Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
  5. ashmem: Fix flush routine of ashmem

    Shubhraprakash Das committed with KonstaT Mar 21, 2011
    The ashmem flush function ashmem_flush_cache_range was calling
    dmac_clean_range and dmac_flush_range with a user virtual address
    which is not allowed. Instead of calling dmac_clean_range or
    dmac_flush_range use flush_cache_user_range which can be called
    with a user vitual address.
    
    Change-Id: I5dd137fb248b45ef2c7ea5f7bdb4b540b8310af9
    Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
  6. Use pmem from CAF

    LorDClockaN committed with KonstaT Oct 19, 2012
    Conflicts:
    	drivers/misc/pmem.c
    
    Change-Id: Ic6b51d39ec98d027a03832043014ccf8c6db7b90
  7. pmem: Correctly account for aligned blocks

    labbott committed with KonstaT Jun 12, 2011
    when finding an aligned chunk, the allocator cannot assume that
    bit 0 will point to an aligned block. The only way to guarantee
    a block will be aligned is to pass in the starting bit of a block
    that is aligned. if t is the start bit which points to an aligned
    block, and s is the spacing, bit t+n*s is guaranteed to be aligned
    to spacing s for positive integer values of n.
    
    CRs-Fixed: 288000
    Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
  8. pmem: Check for valid virtual address while flushing

    Shubhraprakash Das committed with KonstaT Nov 21, 2011
    Return invalid error if a NULL virtual address is
    passed for pmem cache maintenance ioctl's
    
    Change-Id: I18c369d4c2ac790b622408a988d171d6f75c4cd3
    Signed-off-by: Shubhraprakash Das <sadas@codeaurora.org>
  9. msm: pmem: Squashed update to version from msm 2.6.35 kernel

    arco committed with KonstaT Mar 12, 2012
    Conflicts:
    
    	drivers/misc/pmem.c
  10. msm: kgsl: Update pagetable on context destruction for A20x

    Rammohan Basavaraju committed with KonstaT Aug 30, 2012
    Ensure that pagetable is updated during context destruction. This
    resolves stability issues during Camera launch/exit scenarios. Applies
    only to A20x GPUs. This change is already done for Z180 device.
    
    Change-Id: I955c7220aa8234009f5bca0a273093e47147279d
    Signed-off-by: Rammohan Basavaraju <rammoh@codeaurora.org>
  11. msm: kgsl: Increase REG_RBBM_CNTL value to 0xFFFF for A200

    Rammohan Basavaraju committed with KonstaT Aug 17, 2012
    Increase number of clocks that RBBM will wait before de-asserting
    the Register Clock Active signal. This fixes kernel panics during
    stability tests on multiple devices
    
    Change-Id: I50ad69f28b50444e88239c2332bd5756db1ae089
    CRs-fixed: 372793
    Signed-off-by: Rammohan Basavaraju <rammoh@codeaurora.org>
Commits on Oct 30, 2012
  1. optimize compile flags

    KonstaT committed Oct 26, 2012
    Change-Id: I2353bf14ae2e99932611b892982451e05465711e
Commits on Oct 15, 2012
  1. enable zram

    KonstaT committed Oct 15, 2012
    Change-Id: Id308eac084962d09586989857bfe9c41402c64bc
Commits on Sep 15, 2012
  1. block fbearlysuspend to not break android's crt-off animation

    KonstaT committed Sep 13, 2012
    CyanogenMod/android_kernel_samsung_t1@7dfa557
    
    Change-Id: I90bbbcdd1218fe3bfe8ef55144230f30cdcef9d5
  2. update defconfig

    KonstaT committed Sep 12, 2012
    reduce kernel size and number of modules
    
    Change-Id: I098670a06c757a825e9bcc79a62bedd7ce1bf206
Commits on Sep 12, 2012
  1. Revert "increase MDP & ADSP sizes"

    KonstaT committed Sep 4, 2012
    This reverts commit 5962d66.
Commits on Sep 3, 2012
  1. msm_fb: display: add out of range check for display sizes

    Huaibin Yang committed with KonstaT Jul 24, 2012
    MDP pipe or mixer size registers have 12-bit number, so boundary
    checks are needed for those parameters. If not, input req sizes could
    be very large 32 bit unsigned numbers, e.g. 0xffffffff, unsigned
    operations may have overflow to pass all later checks, causing MDP
    underruns or hang issues.
    
    CRs-fixed: 380469
    Change-Id: I096d7022ede21d54266b46a140782ab0348dd54b
    Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
    Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
  2. msm_fb: display: Configure MDP clock table based on DSI Video pixel clk

    Nagamalleswararao Ganji committed with KonstaT Jul 4, 2012
    To avoid display underrun issues, configure the MDP clock table's rate
    according to DSI Video mode panel's pixel clock frequency by 1.15 times.
    
    Change-Id: I9bc864a754c2d51c9d86ece79863820eb72cdae8
    Signed-off-by: Nagamalleswararao Ganji <nganji@codeaurora.org>
    Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
  3. msm_fb: display: Enable MDP clock's overlay block during panel on

    Ravishangar Kalyanam committed with KonstaT Jun 26, 2012
    MDP clock's overlay block is enabled during first update after panel
    on currently. This is now moved to panel on to keep clock enabled
    right from display on time.
    
    Signed-off-by: Ravishangar Kalyanam <rkalya@codeaurora.org>
    Change-Id: Ie201186c1471201874f2eff246486bc4a73b5872
  4. msm_fb: Correct the chroma offset calculations for Yamato format

    Padmanabhan Komanduru committed with KonstaT Jun 4, 2012
    In the PPP blit operations, when the source image format is
    Yamato, there is chroma offset calculations going wrong in
    the case when a frame is split into parts and blit is done
    separately. Correct the chroma offset calculations in this
    case.
    
    CRs-fixed: 366908
    Change-Id: I867024632fda9f64a569150e0b6389d55614cd3a
    Signed-off-by: Padmanabhan Komanduru <pkomandu@codeaurora.org>
  5. msm-fb: display: Perf changes for mdp composition

    Nagamalleswararao Ganji committed with KonstaT Apr 24, 2012
    Display under-run issues are observed with mdp composition.
    Fix underrun issues by changing perf level.
    
    CRs-Fixed: 354377
    Change-Id: I82346e65af173d7592506f1cee7f90f40ee01485
    Signed-off-by: Siddhartha Agrawal <agrawals@codeaurora.org>
    
    Conflicts:
    
    	drivers/video/msm/mdp4_overlay.c
  6. msm_fb : Disable power collapse before VSync to negate wake up latenc…

    Anitha Anand committed with KonstaT Apr 24, 2012
    …ies.
    
    For a 16ms frame period  the CPU may go into deep power collapse.
    Based on the power collapse exit latency for that low power mode,
    the frame period gets extended by the latency to wake up the CPU at the
    next VSYNC. This results in a user experience glitch. Adding an hrtimer
    to wake up the CPU few ms before the Vsync and disabling power collapse
    compensates for the extra time spent in waking up the CPU out of deep
    sleep. On timer expiry, set wakelock to veto idle power collapse till
    the next VSync. The wakelock is released on the next VSYNC occurrence.
    
    Change-Id: I3e013cc54c36d3015d6fafa4b9ccd435cb5532ab
    Signed-off-by: Anitha Anand <anithas@codeaurora.org>
    
    Conflicts:
    
    	drivers/video/msm/mdp4_overlay_dsi_video.c
    	drivers/video/msm/msm_fb.c
  7. msm_fb: display: Fix invalid x offset programming for YUV444 fmt

    adriansm committed with KonstaT May 22, 2012
    Source x offset adjustment is not properly programmed for YUV444 format,
    it is always programmed as 0. Add support for correct x offset
    adjustment.
    
    Change-Id: I73e87f961bda60670cc764c66be955e48ccf2734
    Signed-off-by: Adrian Salido-Moreno <adrianm@codeaurora.org>
  8. msm_fb: display: Move mipi dsi clock enable before dsi soft reset

    Mayank Chopra committed with KonstaT Apr 10, 2012
    mipi_dsi_clk_enable() is called after dsi soft reset. Move mipi dsi clock
    enable before dsi soft reset as per mipi dsi hardware design document.
    
    Change-Id: Ie1cfdf53bc74b87b5a0e0679ab26bc513205673d
    Signed-off-by: Mayank Chopra <makchopra@codeaurora.org>
  9. msm_fb: display: disable pan display and memory access to fb1 and fb2

    Huaibin Yang committed with KonstaT May 8, 2012
    The native fb1 and fb2 framebuffer memory is not used and not
    allocated on the board file. So on the driver side, pan display ioctl
    or other operations on fb1 or fb2 framebuffer memory is checked and
    invalidated.
    
    CRs-fixed: 357242
    Change-Id: I2883926251a0465f69f18c442d5867556a4651bf
    Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>
    
    Conflicts:
    
    	drivers/video/msm/msm_fb.c
  10. msm_fb: display: remove #if 0

    Huaibin Yang committed with KonstaT Mar 27, 2012
    Cleanup all #if 0s in display driver.
    
    Change-Id: I32473b33ad4dff3e5d3d91aae42d70955836cd52
    Signed-off-by: Huaibin Yang <huaibiny@codeaurora.org>