summaryrefslogtreecommitdiff
path: root/sdm/libs/hwc2/hwc_buffer_allocator.cpp
AgeCommit message (Collapse)Author
2019-10-14hwc2 : Validate allocated buffer before access.Ramakant Singh
Change-Id: Icb4173576cddc80c1bade67042f34ffbd87b9c44 CRs-Fixed: 2542989
2019-06-11hwc: Support IMapper/IAllocator 3.0 in hwc_buffer_allocatorTharaga Balachandran
This change checks for IMapper and IAllocator v3.0 and falls back if they are unavailable. CRs-Fixed: 2451975 Change-Id: I3122c262af99c9b5506f147a47ddbec580c99913
2018-11-13gralloc: Add support to RGB compressed format and handle errorRamkumar Radhakrishnan
1. Add corresponding adreno format for RGB compressed hal format, as new adreno API adreno_init_memory_layout needs ADRENO_FORMAT to be passed. 2. Handle the error returned by adreno_init_memory_layout API for the inappropriate values passed. Change-Id: Iedcf306583b83ecb80db5495a801f37d2479276b CRs-Fixed: 2262839
2018-06-20sdm: Avoid fb_id creation and removal in each frameSushil Chauhan
- Cache the <handle_id, fb_id> map in SDM layer. - Registry finds the handle_id in layer map. If it is found, then mapped fb_id is programmed to DRM driver. Else fb_id is created and it is added in map for the given handle_id key. This map is cleared and fb_ids are removed, when the SDM layer gets deleted. - "vendor.display.disable_fbid_cache" system prop needs to be set to disable the fb_id caching in SDM. So, fb_id will be removed and created for each SDM layer in every draw cycle. CRs-Fixed: 2235202 Change-Id: I1d6c7fbc1fc5c1f9afad36cf49f17bc8c5322fe5
2018-05-04hwc2: Get Mapper instance in frame dump utilityAnjaneya Prasad Musunuri
Mapper instance is not available if frame dump is called prior to buffer allocation through hwc buffer allocator. Change-Id: I2b92aa594978d996be8f0036ac7c006fe23d3efa CRs-Fixed: 2233209
2018-03-21display: hwc_buffer_allocator fixesNaseer Ahmed
Fixes an issue where the HWC init randomly blocks on the allocator init by doing a lazy initialization of the allocator object. The allocator may not have fully initialized at HWC init. Also, increases the allocator connection threadpool to 4. Change-Id: I38454ee25aaf2a211125e55297300eac754fb5cf CRs-Fixed: 2201202
2018-03-21gralloc: Add allocator and mapper HALsNaseer Ahmed
Implement the hidl .hal interfaces directly instead of using the default shims. This is required since new additions to .hal will no longer be added to the legacy gralloc1 C header. Change-Id: If577a14f75d7d13da0ff656c96ab451d21c910ce
2018-02-27sdm: Set fb id for inline rotator sessionRohit Kulkarni
- Add support to set backup buffer fb id for inline rotator session. - Define tiled and uncompressed layer buffer formats to handle setting of inline rotator buffer fb id. Change-Id: I6be48c5abd418ec18816780e1af9e9783fa22233 CRs-Fixed: 2195047
2017-11-30sdm: Add support for P010 Venus formatMathew Joseph Karimpanal
Add support for P010 Venus video format in SDM. Handle Qualcomm Venus h/w video decoder aligned P010 buffer format. Change-Id: I3edf21a5c3d90556c69c9944558398b65e4ed1e5 CRs-Fixed: 2149780
2017-10-27hwc2: Unmap buffer after Map buffer during framedumpUday Kiran Pichika
- Unmap the buffer to avoid ion buffer leaks - Map the buffer during dump output buffers CRs-Fixed: 2119590 Change-Id: Iae32b477ebf82438c95b0443dc3d765f3c10d3bf
2017-10-05sdm: Add support for compliance test mode for DPRamakant Singh
1. Add functionality in qdutils to get the DP test config from the sysfs node. 2. Add support to generate ColorRamp, ColorSquare and Black and White vertical line test pattern for 18/24/30 bpp DP display 3. Create layer stack with test layer and ignore all layers from the SF framework. 4. Generate the pattern with 18/24/30 bpp based on pattern type and bpp read from sysfs node and send it to DP interface. 5. Add support to calculate CRC to validate the color pattern. CRs-Fixed: 1107663 Change-Id: I49469d94a96ada729d24d7cc03a7e79f2af6edc0
2017-09-26hwc2: Use GRALLOC1_PFN_ALLOCATE to allocate bufferRamkumar Radhakrishnan
1. Define gralloc1 function pointers needed to allocate buffer 2. Use the gralloc1 function pointers to allocate buffer instead of perform function to avoid any synchronization issues. 3. Remove functionality to allocate buffer from perform function Change-Id: If686181409a179d3d911dfbd0f0c0eab7a7ffa99 CRs-Fixed: 2115331
2017-08-23hwc2: Fix usage bits for Rotator buffer during Secure CameraSushil Chauhan
Fix the gralloc usage bits for Rotator buffer allocation during Secure Camera use case. CRs-Fixed: 2098154 Change-Id: I506665b5b091996fbe33b2cf4e4be98ab96dad93
2017-08-03hwc2: Fix ubwc flags for fb targetPrabhanjan Kandula
- Use right property to disable ubwc for fb target. - Remove unused property from gralloc1. Change-Id: I4235d8898bcae1e16d7dbcc92d8d7a021ef9a052 CRs-fixed: 2073135
2017-07-26sdm: Handle error on gralloc device open and closeRamkumar Radhakrishnan
Handle the error returned by gralloc open and gralloc close in Init() and Deinit() functions of HWCBufferAllocator to avoid NULL pointer dereferencing. Change-Id: I56dcb0d35747d98eabb1ce9408b98e5b55aa3417 CRs-Fixed: 2066748
2017-07-26sdm: fix null pointer dereference and vector initialization.Pramodh Kumar Mukunda
Change-Id: I25bb8daa6b49223a443a31d1ae17560ed6fca486 Signed-off-by: Pramodh Kumar Mukunda <pkmuku@codeaurora.org>
2017-07-25sdm:hwc2: Add buffer map to tonemap output bufferCh Ganesh Kumar
Add support for map buffer in hwc buffer allocator Map intermediate TM buffers before dumping to file Change-Id: Ic595aec0bca6d841f5469244ece3fd9ba21625e8
2017-06-10Merge "gralloc1: Support GRALLOC1_CAPABILITY_RELEASE_IMPLY_DELETE"Linux Build Service Account
2017-06-01Merge "hwc2: Add support for HDR and HWC tonemapping"Linux Build Service Account
2017-05-31gralloc1: Support GRALLOC1_CAPABILITY_RELEASE_IMPLY_DELETENaseer Ahmed
v2: Handle buffers allocated outside gralloc with flag PRIV_FLAGS_CLIENT_ALLOCATED. CRs-Fixed: 2041607 Bug: 36355756 Change-Id: Icb0c4b724f7bf7097812f6306fb0b9a56bb790a9
2017-05-25sdm: Add support for new pixel formats in hwc2Camus Wong
Add support for new color formats in HWC2. The new format will be used by camera application. Change-Id: I36c81f84a7e2593565c3098b52cb4e41c8ff8387 CRs-Fixed: 1116491
2017-05-24hwc2: Add support for HDR and HWC tonemappingArun Kumar K.R
- Identify HDR layer in HWC, and add support to handle tonemap requests from SDM - Include hwc tonemapper which tonemaps layers using the gpu tonemapper - Add hint in BufferAllocator to specify gfx client Change-Id: I45a2182fa96e366600d81cdb4cb08bceff3bfcb8 Crs-fixed: 2036626
2017-05-03sdm: Pass arguments to GetBufferSizeAndDimensions() appropriatelyRamkumar Radhakrishnan
Pass pointer to buffer_size, buffer_width and buffer_height as per GetBufferSizeAndDimensions() declaration to avoid any functionality failures. Change-Id: I67169d1e6e2b85374bb47c1a81f8ca74d2217b0f CRs-Fixed: 2042304
2017-04-14hwc2/gralloc1: Create libgrallocutilsSaurabh Shah
--For gralloc1, create a libgrallocutils that provides helpers to calculate various buffer related info --Make hwc2/gralloc1 structures independent of libdrmutils and fb_id / gemhandles --Implement GetBufferLayout API from BufferAllocator that can be called by DAL before creating fb_id Change-Id: I0aede7d1ea87302ecda593047728d381383484b9 CRs-fixed: 1114808
2017-03-27display-hal: Add support for P010 ubwc formatRohit Kulkarni
This patch adds support for handling P010 ubwc format in display-hal libs. Change-Id: I1c7489be859a608566240c3b6722c84bb9a468ca CRs-fixed: 2018756
2017-03-20gralloc1: Work around handle delete by hidl wrapperNaseer Ahmed
This works around bug 36355756. Initializing the fds in the handle to -1 before deleting is probably good practice anyway. The handle delete needs to move to gralloc1 FreeBuffer() but currently the client does it. CRs-Fixed: 2022058 Change-Id: I4ae51e4cd90adb709287a01d66138df51924af8c
2017-02-17sdm: enable gralloc1 from hwc2Naseer Ahmed
Add support for hwc2 to call into gralloc1 CRs-Fixed: 2007392 Change-Id: Iade3b7cba7d3b99685530a8f4dcde67228e78f68