summaryrefslogtreecommitdiffstats
path: root/services
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'cm-13.0' of ↵HEADreplicant-6.0-0001replicant-6.0Wolfgang Wiedmeyer2017-05-021-2/+1
|\ | | | | | | https://github.com/LineageOS/android_frameworks_native into replicant-6.0
| * Fix security vulnerabilityFabien Sanglard2017-04-051-2/+1
| | | | | | | | | | | | | | | | | | | | | | AOSP-Change-Id: I4c9ea3a3177131fa29d2561da71ef18bec3af108 Test: angler, marlin Bug: 32628763 CVE-2017-0546 Change-Id: I3e87518163540a9fce1d4fc3751ed558d4854140 (cherry picked from commit 45b202513ba7440beaefbf9928f73fb6683dcfbd)
* | SurfaceFlinger: disable VSync thread if no clients requiring.Wang, Yue A2017-01-031-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In EventThread, 2 VSYNCs are needed to do composition and update the client status. So, a 30FPS video may leads to 60FPS VSYNC, which means the DispSync thread would be waked 60FPS. This is a unexpected behavior which takes more power consumption. Now we update the SF status soon after the first VSYNC, which means no extra VSYNC needed, and the DispSync could be awaked as expected, and consequently power get saved. Change-Id: If486eb9b87f109a71f71b510768f15dd733f1233 Orig-Change-Id: I1d3b166021e15a81b2ad770b039761fc2c15fddf Tracked-On: https://jira01.devtools.intel.com/browse/IMINAN-12211 Category: aosp improvement Domain: Graphics-SF Origin: internal Upstream-Candidate: yes Signed-off-by: Wang, Yue A <yue.a.wang@intel.com> Reviewed-on: https://android.intel.com:443/238344
* | Merge branch 'cm-13.0' of ↵Wolfgang Wiedmeyer2016-12-1327-68/+763
|\ \ | |/ | | | | https://github.com/CyanogenMod/android_frameworks_native into replicant-6.0
| * surfaceflinger: Add support for Exynos HWC servicesChristopher N. Hesse2016-08-182-0/+50
| | | | | | | | Change-Id: I600e946a22064d64549e266c5a3cf452d0cf6299
| * surfaceflinger: Access s3d flags only for valid display ID.Namit Solanki2016-08-131-0/+3
| | | | | | | | | | | | | | | | - Check if display id is within display ID range. Negative display ids lead to undefined behavior in CTS tests. Change-Id: I2db8caf8d7ac65700e5bc37c180763357cc90aad CRs-Fixed: 1043297
| * Fixed stylus eraser being rejected by palm rejectionFPtje2016-08-051-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | The stylus eraser appeared not to work, i.e. Android did not respond to input from the eraser. It turned out that all input except stylus input is rejected when palm rejection is activated. The problem was that the eraser itself activates palm rejection when it hovers. The solution is to allow the eraser during palm rejection. This solution makes sense because the eraser input works in the exact same way as normal stylus input. Change-Id: I9c7451112ce7dbca14a1e1694eedca2d4ed041a1
| * surfaceflinger: Fix uninitialized variableSteve Kondik2016-08-032-1/+9
| | | | | | | | | | | | * And don't try to reinit the lib after a failure. Change-Id: Ic055a48670ed8cf01e27b16c5d4ddf214db53d20
| * surfaceflinger: Unbreak casting and other use casesSteve Kondik2016-08-031-0/+4
| | | | | | | | | | | | | | * If QCOM WFD isn't in use, we'll get -1 here. Don't try and dig into the array because we'll get some random memory back. Change-Id: Ib14642fea760dc0e659473bb183c5e0116622302
| * surfaceflinger: Add check for number of queued buffersAnjaneya Prasad Musunuri2016-08-031-1/+6
| | | | | | | | | | | | | | | | Pop buffer item from shadow queue only when number of queued buffer items is greater than zero. Change-Id: I039bc133842293c29e3e130efd65f521ef0049c6 CRs-Fixed: 1009466
| * sf: Fix compliation for non-8996 platformsdianlujitao2016-08-021-0/+6
| | | | | | | | Change-Id: I3edad5934ef9d9ec523e091fa2c959bbc9770f29
| * surfaceflinger: Isolate S3D code to msm8996 onlySteve Kondik2016-08-014-6/+9
| | | | | | | | Change-Id: Ie4b77b55eb306c795b452c59d8ae3383bd2804bc
| * surfaceflinger: Cleanups for blurSteve Kondik2016-08-013-28/+109
| | | | | | | | | | | | * Dynamically load it so no direct linkage or headers are required. Change-Id: I4eba035f527ae4f0fa2485e24a8586145baf0adc
| * sf: Allow HWC composition of virtual displays for HDMI primaryTatenda Chipeperekwa2016-07-311-3/+18
| | | | | | | | | | | | | | | | Allow HWC composition of virtual displays for HDMI primary only when the output pixel format of the HDMI display is RGB. CRs-Fixed: 1007249 Change-Id: I9680b162d844e9e6397f919e8dcc1b1a948d182c
| * SF: Add support to draw S3D framebuffer targetfeifanz2016-07-319-1/+263
| | | | | | | | | | | | | | | | Add support to draw S3D framebuffer target in case HWC driver can not handle due to resource or capability issue. Change-Id: I536fa4a03e246d51891045b692d5dc5be88f2adf CRs-fixed: 999055
| * surfaceflinger: Fix the fix of the opaque check fixSteve Kondik2016-07-241-1/+1
| | | | | | | | | | | | * Use the right define. Change-Id: I78e2aea4bf4ff933ec828cffee1a3e925622ad31
| * SF: Fix NULL pointer dereferencing in dumpDrawCycle()Ramkumar Radhakrishnan2016-07-201-0/+4
| | | | | | | | | | | | | | Check for NULL before dereferencing a pointer in dumpDrawCycle() Change-Id: I1f06214577d0065c988877acb0f1b4378080690f CRs-Fixed: 1018335
| * SF: Add support for all flips of panel mountSaurabh Shah2016-07-204-15/+13
| | | | | | | | | | | | | | | | | | Add support for all flips of panel mount, H, V, HV (180). Property persist.panel.mountflip can be set to 1 for H-Flip, 2 for V-Flip, 3 for HV-Flip (180 / inverse mount). Change-Id: Ide7b8378ad6a423e5d7335fedc27d480a25b53ae CRs-fixed: 990622
| * SF: more DispSync improvements.Haixia Shi2016-07-202-13/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pass the reference time to DispSyncThread. Since the phase offset is calculated using timestamps relative to the reference time, we must also adjust the phase offset by the same reference time when computing the next refresh time. Always reset phase offset to zero when updating the reference time because the reference time equals the first timestamp. After beginResync() we need to keep HW vsync enabled until the model is updated. Bug: 25113115 Change-Id: I8eae227bee91c24a99bf8e57fbebceb98d29c77d Test: check in systrace that app/sf vsync events have correct phase
| * SF: use first sample timestamp as reference.Haixia Shi2016-07-202-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | Do not use the absolute 64-bit nsecs_t timestamp directly in phase and error calculations. Compared to the estimated vsync period, the timestamp tend to many orders of magnitudes larger, and consequently the integer modulo operation used to calculate phase and error can be very sensitive to tiny fluctuation in vsync period. Bug: 25113115 Test: set kTraceDetailedInfo=true; see Phase and Error are stable in systrace Change-Id: I687703eec31b1072c606898c0424a96c0a8ca033
| * sf: Fix blending mode for legacy BSPArne Coucheron2016-07-201-1/+1
| | | | | | | | | | | | | | * After 0c5f3af, glitches when blending is observed on A family devices. Modify ifdef to not include QCOM_BSP_LEGACY. Change-Id: Ibb53df5709abbb0e7132065aec23a14f7accf4b3
| * sf: Make sure HWC_BLENDING_NONE is set for opaque layerradhakrishna2016-07-151-0/+4
| | | | | | | | | | | | | | | | Before configuring the layers to HWC, make sure HWC_BLENDING_NONE is set if the layer is opaque Change-Id: Ie84aa9d93e98a244692a0cffc2de653a9079f8b4 Crs-fixed: 957373
| * sf: Only apply hwrotation to primary displaysChristopher N. Hesse2016-06-171-1/+1
| | | | | | | | Change-Id: Ib51030cec5ce7609f12be9a5e46310f75442b680
| * Merge tag 'android-6.0.1_r46' into HEADJessica Wagantall2016-06-074-3/+48
| |\ | | | | | | | | | | | | | | | | | | Android 6.0.1 release 46 # gpg: Signature made Mon 06 Jun 2016 10:38:23 AM PDT using DSA key ID 9AB10E78 # gpg: Can't check signature: public key not found
| | * Add new MotionEvent flag for partially obscured windows.Michael Wright2016-04-214-3/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to more complex window layouts resulting in lots of overlapping windows, the policy around FLAG_WINDOW_IS_OBSCURED has changed to only be set when the point at which the window was touched is obscured. Unfortunately, this doesn't prevent tapjacking attacks that overlay the dialog's text, making a potentially dangerous operation seem innocuous. To avoid this on particularly sensitive dialogs, introduce a new flag that really does tell you when your window is being even partially overlapped. We aren't exposing this as API since we plan on making the original flag more robust. This is really a workaround for system dialogs since we generally know their layout and screen position, and that they're unlikely to be overlapped by other applications. Bug: 26677796 Change-Id: I9e336afe90f262ba22015876769a9c510048fd47
| * | SurfaceFlinger : Ensure position changes are drawn with correct buffer sizeDanesh M2016-05-124-3/+136
| | | | | | | | | | | | | | | | | | | | | | | | If a single transaction has both positional and size changes, ensure we don't draw any frames using the incorrect buffer size using the updated position. Wait for the correct buffer size and then proceed. Change-Id: I8e25f21f17e0936e66bb5053f85f8336c8464c7b
| * | surfaceflinger: Add support for Exynos BGRA mixerChristopher N. Hesse2016-04-272-0/+20
| | | | | | | | | | | | Change-Id: Ibc9f784b35a7bd6d8cc6b13ff68b12418cce98c5
| * | sensorservice: fix an invalid format stringKhalid Zubair2016-04-201-1/+1
| | | | | | | | | | | | Change-Id: Ib41bca95e6be7831c5ce77bceaf6a3d9f8b37d41
| * | sensorservice: add power usage to dumpsysKhalid Zubair2016-04-201-0/+2
| | | | | | | | | | | | | | | | | | | | | Include each sensor's power usage info in the per-sensor dumpsys info section. Change-Id: If10535d1e7fe6a35d9385ce2e6083a4c5188a06d
| * | surfaceflinger: Add support for secondary color matrixSteve Kondik2016-04-122-3/+33
| | | | | | | | | | | | | | | | | | | | | | | | * Add a new binder transaction for applying a secondary color matrix using RenderEngine. This stacks with the primary color matrix (if set for a11y) to enable GPU-based display calibration. Change-Id: I766455bfb5212e2dcc8ad0cb8ebdddbda87af732
* | | surfaceflinger: set a fitting EGL config for MesaWolfgang Wiedmeyer2016-08-251-5/+5
|/ / | | | | | | | | | | Otherwise, the view is distorted and has the wrong colors. Signed-off-by: Wolfgang Wiedmeyer <wolfgit@wiedmeyer.de>
* | vds: Allocate Framebuffer target bufferManoj Kumar AVM2016-03-131-1/+9
| | | | | | | | | | | | | | | | | | | | Increase frame buffer surface buffers to 3. Call allocateBuffers from the producer so that buffers are allocated. With out this, BufferQueue implementation will only allocate 1 buffer CRs-Fixed: 930504 @Buganizer: 26778657 Change-Id: Id0cadeb78957273d670d63f9956a09454b45eb69
* | SurfaceFlinger: Add support for continuous dumpsys to file.Dileep Marchya2016-03-135-0/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Collect dumpsys to an outfile file when triggered. - Collect dumpsys before calling Prepare on hwc module in each draw cycle. Recollect dumpsys if Commit goes through successfully and replace former dumpsys with this. - Wrap around if file size reaches appx 20 MB. - Generate output file at /data/misc/display/dumpsys.txt - Syntax: adb shell dumpsys SurfaceFlinger --file [--no-limit] --file : Ouput dumpsys to file --no-limit : Do not wrap around, keep appending Use same command to trigger start and end of dumping. - Output format: | start code | after commit? | time stamp | dump size | dump data | CRs-Fixed: 947084 Change-Id: Ie520f51c69757aeec88b9400688a7f3271472349
* | sf: ex-sf: Remove screenshot surface from secondary displaysArun Kumar K.R2016-03-111-1/+14
| | | | | | | | | | | | | | | | | | | | - When rotation animation is disabled on secondary displays, remove the screenshot surface from the secondary display list, without this it would show up upside down frame on secondary. - Mark IntOnly layers as invisible on secondary displays. Change-Id: Ia859ee1c6ac7caa132c95e4f906bd2589e786fac Crs-fixed: 949263
* | Merge tag 'android-6.0.1_r22' of ↵Steve Kondik2016-03-102-0/+11
|\ \ | | | | | | | | | | | | | | | https://android.googlesource.com/platform/frameworks/native into cm-13.0 Android 6.0.1 release 22
| * \ Revert "inputflinger: Initial support for rotary encoders."Prashant Malani2016-01-134-123/+0
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | am: d983fd11d4 * commit 'd983fd11d4a00b03f92d09f32c08840e66d90777': Revert "inputflinger: Initial support for rotary encoders."
| | * | Revert "inputflinger: Initial support for rotary encoders."Prashant Malani2016-01-134-123/+0
| | | | | | | | | | | | | | | | This reverts commit ac72bbf4e46d6689070df09a25db2960a9036eb2.
| * | | Revert "inputflinger: Add support for scaling and true value reporting"Prashant Malani2016-01-132-14/+2
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | am: 2c09b78656 * commit '2c09b78656dd97727f94fada81845b133cf142f3': Revert "inputflinger: Add support for scaling and true value reporting"
| | * | Revert "inputflinger: Add support for scaling and true value reporting"Prashant Malani2016-01-132-14/+2
| | | | | | | | | | | | | | | | This reverts commit ee03865fe5fc6ffe9deda0e0870a18206027cfaf.
| * | | inputflinger: Add support for scaling and true value reportingPrashant Malani2016-01-132-2/+14
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | am: ee03865fe5 * commit 'ee03865fe5fc6ffe9deda0e0870a18206027cfaf': inputflinger: Add support for scaling and true value reporting
| | * | inputflinger: Add support for scaling and true value reportingPrashant Malani2016-01-112-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -1/+1 somewhat simplifies the values that can be generated by rotary encoders, and rules out the possibility of batching and more nuanced movement reporting. So, we modify the device configuration to allow values other than -1 and 1 to be supported. In order to give the developer a sense of what these values map to in terms of angular displacement, we also parse a resolution configuration from the devices IDC file. This will be specified as: device.res = xxxx of type float. If a value is not provided, a default res value of 0.0f is used. This patch also adds a per device scaling factor, which is used to suitably modify the values reported (as well as the resolution) to tune the input events generated and resulting UI according to the hardware. This can be specified in the IDC file as: device.scalingFactor = xxxx of type float. If a scaling factor is not provided, a default of 1.0f is used. Bug: 22836852 Bug: 18707397 Change-Id: I13686f64de1b52d3f6c97b2587ae41e52d1db6e2
| * | | Merge "inputflinger: Initial support for rotary encoders." into cw-e-devPrashant Malani2015-12-084-0/+123
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | am: 68fca5a176 * commit '68fca5a1763203164a19a9aa983895242a671387': inputflinger: Initial support for rotary encoders.
| | * | Merge "inputflinger: Initial support for rotary encoders." into cw-e-devPrashant Malani2015-12-084-0/+123
| | |\ \
| | | * | inputflinger: Initial support for rotary encoders.Prashant Malani2015-09-144-0/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change introduces support for rotary encoder input devices. We also define a new input source (namely, AINPUT_SOURCE_ROTARY_ENCODER) and a new axis of input (namely, AXIS_SCROLL), since the rotary encoder motion doesn't necessarily tie to a horizontal or vertical scroll motion. A ROTARY_ENCODER input device class is also introduced, corresponding to the new input source. A new input source can be defined as producing rotary encoder motion events, if its corresponding .idc file contains the following declaration: device.type = rotaryEncoder Bug: 18707397 Change-Id: I8ccd540908311d1ff44fdfeba81b691895413641 Signed-off-by: Prashant Malani <pmalani@google.com>
| | * | | Revert "DO NOT MERGE ANYWHERE Add new interface for sensor physical data"Ben Fennema2015-12-024-25/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit d4db70a7b8b2d136c46c50f89b276f8150be5fc2. Change-Id: Ifb52d5595970a5178e12c2a90da4aac0e38f5942
| | * | | DO NOT MERGE ANYWHERE Add new interface for sensor physical dataJani Suonpera2015-11-304-0/+25
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is special solution only for emerald branch. Changes including new const char* value/interface for sensor physical data. Sensor service and manager does not take care of content, structure or other details of string. Sensor HAL is taking care of parsing data from string and setting values to Sensor HW. Change-Id: I3abc3ddc7c6adc4b32a40b9a43f2a94c5af7b2b0 Signed-off-by: Ben Fennema <fennema@google.com>
| * | | Set cpuset from surfaceflinger.Tim Murray2015-11-182-0/+11
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | SurfaceFlinger shouldn't be limited to little cores exclusively, as the binder threads should be placed on big cores when they are in the critical path for a RenderThread. bug 25745866 Change-Id: I9fb65f6d951733f91b4735ff27018411b58b2bfb
* | | surfaceflinger: Use only one EventThread when phase offsets are same.Omprakash Dhyade2016-02-291-9/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SurfaceFlinger uses two event-threads to support phase-offsets for application and SurfaceFlinger itself. Extra thread may cause scheduling issues and wake-up latency for either SurfaceFlinger or Application, depending on scheduling, even when running at higher priority as these threads have low-load and qualify for task-packing. Use single event-thread when phase offsets are same. Debug runtime service call behavior change when same phase-offset: 1018 (set phase offset for Application): will change both Application and SurfaceFlinger phase offsets. 1019 (set phase offset for SurfaceFlinger): Will be a no-op. Change-Id: I2514b4ff6249e9bce3eb19f60b1dfe0de12b86d9
* | | surfaceflinger: Don't allow QC HWC virtual display without QC HWC copyEthan Chen2016-02-101-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | * QC media encoder appears to be incapable of switching between RGBA8888 buffers and NV12_ENCODEABLE dynamically. This requires that we switch the entire stack to use the QC opaque format, or RGBA8888. REF: CRACKLING-938 Change-Id: Ibd6a8faf8d268d3bfb4d61e4118a778ed82f1ab5
* | | surfaceflinger: Correct QTI_BSP ifdefEthan Chen2016-02-101-1/+1
| | | | | | | | | | | | | | | | | | | | | * Should be #ifdef, not #if REF: CRACKLING-938 Change-Id: Iaa203413eaf404ba03ba2eb640f6ca93fd8c901d