Commit Graph

19 Commits

Author SHA1 Message Date
Naseer Ahmed
c5e6fb0fd3 gralloc: Align protected allocations with the spec
The specification for GRALLOC_USAGE_PROTECTED indicates that
allocations with that flag must be protected by securing with
hardware. If such protection is not possible, the buffer must not
be composited. In our current software only the MM_HEAP is
secured. If we allocate protected buffers from any other heap we
block those from being displayed.

CRs-fixed: 465012
Change-Id: I9d47aba3d28192db3fcc394fd6b38efe42ae118b
2013-03-22 17:10:30 -07:00
Arun Kumar K.R
0daaa99ee9 libgralloc: Change CAMERA_HEAP to ADSP_HEAP
This changes GRALLOC_USAGE_PRIVATE_CAMERA_HEAP to
GRALLOC_USAGE_PRIVATE_ADSP_HEAP as the CAMERA_HEAP
is not used anymore

Change-Id: I5a95f68c4c7f4445ade2398dd239faad9ed16b22
2013-03-12 15:35:57 -07:00
Naseer Ahmed
2ea027b04c gralloc: Allow IOMMU memory to be uncached
The IOMMU heap can give us uncached memory, so remove this
erroneous check.

Change-Id: Ie141c55821221a1c2f75b7cf2248794d93ea6c6a
2013-03-07 08:23:34 -08:00
Naomi Luis
01f5c8eacb libgralloc: Get the stride information from libadreno_utils.so
libadreno_utils.so is an adreno utility library. It computes the
optimal stride required for a surface of a particular width and
bpp. Using this computed stride allows us to efficiently use the
dual memory channels and increase performance.
Currently the utility library only computes the optimal stride
for RGB surfaces.

Change-Id: I0f70bd11602a5144515ab07c3bd2b80a01586a06
2013-02-15 16:55:51 -08:00
Naomi Luis
a44100cafc libgralloc: Add Perform function to get the stride.
- Introduce a new class to Get the Adreno computed stride information.
This class has been added to allow adreno library computed strides to
be propagated to the allocation function as well as those clients
requesting it.
- Add a new Perform function to get the stride. The width and the format
can be passed from the calling functions (like EGL) to get the stride of
the buffer.

Change-Id: I4c2b4a02deff327f0ea5558c478997527fe9d3cf
2013-02-14 09:19:35 -08:00
Linux Build Service Account
d46feac0cb Merge "gralloc: Do not set ION_SECURE for non-contiguous heaps" 2013-02-12 10:07:40 -08:00
Duy Truong
73d36df685 Update copyright to The Linux Foundation
Change-Id: I145b66896159ff9886ed73507f17b3165ba0266d
2013-02-09 20:33:23 -08:00
Naseer Ahmed
4b9784ea29 gralloc: Do not set ION_SECURE for non-contiguous heaps
The GRALLOC_USAGE_PROTECTED flag is being used for non TZ DRM
if non contiguous heaps such as IOMMU are used. Hence do not
set the ION_SECURE flag for such heaps as they cannot be secured
through trustzone.

Change-Id: I48e9460ef66abb827c9df1b3c55037e8e4214f81
2013-02-07 14:24:04 -05:00
Sushil Chauhan
7651a80dc9 display: Use GRALLOC_USAGE_PROTECTED to indicate secure content
For secure content, use GRALLOC_USAGE_PROTECTED flag instead of
the obsolete flag GRALLOC_USAGE_PRIVATE_CP_BUFFER.

Change-Id: I69bf8cfd3a978fd472608beb44056e1bf55c1414
2013-01-15 16:50:57 -08:00
Sushil Chauhan
73dcce48d6 libgralloc: Calculate aligned width & height using common header
For Venus, calculate aligned width & height using common header.

Change-Id: I622fee19693cfc550796d5949185c146c6a7f173
2012-12-20 14:44:55 -08:00
Sushil Chauhan
e8a01791fe libgralloc: Import header for Venus buffer size calculation
Import the common header file with Venus alignment requirements
to calculate venus buffer size.

Change-Id: I86cba91de8f7a3845a4592243b4f21e7cda03315
2012-12-20 14:43:34 -08:00
Sushil Chauhan
c5e61488bf display: Add support for Venus color format for newer platforms
Change-Id: I4c9a327bd30d1321e1f8383ffc1ca978efc8e9b9

Conflicts:

	liboverlay/overlayUtils.h
	libqdutils/gpuformats.h
	libqdutils/qcom_ui.cpp
2012-12-20 14:38:57 -08:00
Sushil Chauhan
c6bd6d92c2 display: Add target specific flag to support Venus color format
Venus color format is not supported on older platforms. Add target
specific flag in display hal and define Venus macros to zero for
older platforms.

Change-Id: I38141ae870e255a0e54ce9fde46fe6cc3415f179
2012-12-12 17:00:09 -08:00
Naseer Ahmed
4c588a200c hwc: Add support for external-only layers
Add support for different types of external-only layers
EXTERNAL_ONLY: General purpose
EXTERNAL_BLOCK: Blocks the display of other ext-only layers
EXTERNAL_CC: Used for closed captions with videos.

Change-Id: I9cc7b9a1dbf1085194725474d6a4d1094e27a0c8
Acked-by: Saurabh Shah <saurshah@codeaurora.org>
2012-08-14 14:18:13 -07:00
Naseer Ahmed
b16edac510 display: Fix warnings, make warnings as errors
Change-Id: I61f22765b04112be48e62135db930c415c9c7d37
2012-07-23 12:40:50 -07:00
Naseer Ahmed
01d3fd3318 display: Clean up gralloc
* Remove pmem and ashmem implementations
* Remove usage of RefBase
* Reduce log verbosity

Change-Id: If8ef543d236e5305bd5430f4f9c62c51b3a13787
2012-07-23 12:39:29 -07:00
Naseer Ahmed
a87da60090 display: Add QC Display utils
* Rename qcomui directory to qdutils
* Avoid inclusion of qcom_ui header
* Add class to get MDP version
* Add namespace for qdutils to prevent collison

Change-Id: I9a3f440e6b0fea1cfcc478ddca90af5df3bbb897
2012-07-13 17:50:32 -07:00
Naseer Ahmed
29a26818d7 qcom/display: Update HALs
- Update the display HAL from Code Aurora Forum
- Add updated overlay library
- Enable HWC with basic video going through overlay
- Cleanup some files

Change-Id: I65c687c51be458cee71213c79e03eeda962d9086
2012-06-21 11:52:07 -07:00
Iliyan Malchev
202a77d28a initial GL libraries for msm8960
Change-Id: I16451c70a079894ac326d3564d96f1fbafcd4f1b
Signed-off-by: Iliyan Malchev <malchev@google.com>
2012-06-11 23:50:46 -07:00