80 Commits

Author SHA1 Message Date
Mathias Agopian
118c366fe8 make the gralloc test linux only
Change-Id: Ib245f7936bbe71b34903172629e09763dd725d80
2010-07-02 16:37:27 -07:00
Jamie Gennis
1553bff4b0 Refactor the qsd8k gralloc implementation.
The purpose of this change is to add support for allocating gralloc buffers
from either /dev/pmem or /dev/pmem_adsp depending on the usage flags.  It does
this by factoring out and abstracting the interactions with the pmem device.
For /dev/pmem allocations, the kernel allocator is not used, so a single master
fd is opened, and all the allocations are sub-allocated from that by gralloc.
For /dev/pmem_adsp the kernel allocator is used, so it simply opens a new fd
for each allocation.

A very basic unit test that can be run on the host is included.  It requires
gtest, so to run it on a host system gtest must (currently) be compiled with
BUILD_WITH_ASTL=true.

Change-Id: If2ae0151698fad8107e18e808a3fa012a846263f
2010-07-02 12:57:36 -07:00
Mathias Agopian
718ff01742 remove unused YUV formats
Change-Id: Ia590a9cb9a02bf62f35da344f29775d1256e3da7
2010-07-01 21:19:31 -07:00
Mathias Agopian
ce863969f8 NV12 tiled needs 8K plane alignment
Change-Id: I8f2ca6f058ff9d7dd666871a696428c55dbe6cf1
2010-06-22 22:06:12 -07:00
Mathias Agopian
b25cdac1a7 remove unused YUV formats
Change-Id: I41c18551a61bec9f928399544a12024c81947ed0
2010-06-22 16:15:31 -07:00
Mathias Agopian
4899fb412a fix typo in ALIGN macro
Change-Id: Idaddf65f0b726a158f47639223f4281fd07447a7
2010-06-22 16:15:10 -07:00
Mathias Agopian
d4926d7897 Add support for allocating YUV formats
Currently they're all allocated in pmem, instead of pmem_adsp.

Change-Id: Ibc3edf2da4155d2f086d81dee8940270f9cb9f6b
2010-06-22 16:14:35 -07:00
Mike Lockwood
4eb0d47d9f Revert "Add support for allocating YUV formats"
This reverts commit 7b1f00a95490552131d06a13b78c279f6c779a1a.
2010-06-22 13:32:55 -04:00
Mike Lockwood
8c0c284369 Revert "remove unused YUV formats"
This reverts commit 05ea9ede5600fef7a8fdf416b44ec98e58fb224b.
2010-06-22 13:32:36 -04:00
Mathias Agopian
b75549f5b6 remove unused YUV formats
Change-Id: I47769af34112856e6a2ef177a966f6e8e6242031
2010-06-21 18:23:23 -07:00
Mathias Agopian
956c425d42 Add support for allocating YUV formats
Currently they're all allocated in pmem, instead of pmem_adsp.

Change-Id: Ief367a64667dc0b67fdeabeabbf9f201082d6ad2
2010-06-16 14:27:27 -07:00
Jean-Baptiste Queru
3bf07d5430 Add tags and notices where appropriate.
Also tweak copyright notices as appropriate.

Bug: 2084753
Change-Id: Ifbf795b8b16dbc45cf5ac9a72b97f2b74cbf3550
2010-03-19 15:50:23 -07:00
Dima Zavin
68f1d423ad libgralloc-qsd8k: flush SW_WRITE cached pmem regions in unlock
Change-Id: I31d1257f031c6b9b8dae604c2c1a8aa246ce3b84
Signed-off-by: Dima Zavin <dima@android.com>
2010-03-02 15:14:57 -08:00
Mathias Agopian
011ac3388a fix [2444483] gralloc size for YUV formats 2010-02-16 14:04:36 -08:00
The Android Open Source Project
5eea3d773d am 88457c5c: am 3530ef81: reconcile main tree with open-source eclair
Merge commit '88457c5c5d4abdf0f99f19612db5d29c1f45ffa1'

* commit '88457c5c5d4abdf0f99f19612db5d29c1f45ffa1':
  android-2.1_r1 snapshot
2010-02-05 14:26:00 -08:00
The Android Open Source Project
23d0accd13 am 3530ef81: reconcile main tree with open-source eclair
Merge commit '3530ef81d13e243bb568b8d33327f5fdda8a5b1a' into eclair-plus-aosp

* commit '3530ef81d13e243bb568b8d33327f5fdda8a5b1a':
  android-2.1_r1 snapshot
2010-02-05 08:49:52 -08:00
The Android Open Source Project
43cb227bad reconcile android-2.1_r1 snapshot 2010-01-29 14:09:19 -08:00
Mathias Agopian
b8a8dfeffd part of fix for [2363506] [Sapphire] Video playback broken
make sure to reject incompatible buffers in special function
  GRALLOC_MODULE_PERFORM_CREATE_HANDLE_FROM_BUFFER

we use ioctl(PMEM_GET_SIZE) to validate that the given buffer is indeed
a pmem buffer.
2010-01-20 13:22:35 -08:00
The Android Open Source Project
78f83069c4 android-2.1_r1 snapshot 2010-01-12 15:19:05 -08:00
Android Git Automerger
bcc1c929e5 Merge commit 'goog/eclair-plus-aosp' 2009-12-15 00:44:45 -08:00
Dima Zavin
919337b9a6 am 57d3b368: am 6a6befc0: am 2754389d: gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
Merge commit '57d3b3680a6d37ffe04e1f24be25b4907bcbaa20'

* commit '57d3b3680a6d37ffe04e1f24be25b4907bcbaa20':
  gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
2009-12-10 23:45:13 -08:00
Dima Zavin
65b43b30c0 am 6a6befc0: am 2754389d: gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
Merge commit '6a6befc0430820ab5d837694f1b71b63c34f8b14' into eclair-mr2-plus-aosp

* commit '6a6befc0430820ab5d837694f1b71b63c34f8b14':
  gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
2009-12-10 18:08:20 -08:00
Dima Zavin
e7990133c1 am 2754389d: gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
Merge commit '2754389d0e7638b3065ecb3c965b1f262d2205ed' into eclair-mr2

* commit '2754389d0e7638b3065ecb3c965b1f262d2205ed':
  gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
2009-12-10 17:56:59 -08:00
Mathias Agopian
bc4e49a6aa am 96a46011: am 8efc64ae: am f7e40a33: improve cache behavior of gralloc allocations on qsd8k
Merge commit '96a460114cfb663789c6990e56a17325bea1ecda'

* commit '96a460114cfb663789c6990e56a17325bea1ecda':
  improve cache behavior of gralloc allocations on qsd8k
2009-12-10 17:15:30 -08:00
Mathias Agopian
8cce41bd57 am 8efc64ae: am f7e40a33: improve cache behavior of gralloc allocations on qsd8k
Merge commit '8efc64aec14e80e7dff8eb4e7708195c6d693ec8' into eclair-mr2-plus-aosp

* commit '8efc64aec14e80e7dff8eb4e7708195c6d693ec8':
  improve cache behavior of gralloc allocations on qsd8k
2009-12-10 16:58:39 -08:00
Mathias Agopian
889ac00226 am f7e40a33: improve cache behavior of gralloc allocations on qsd8k
Merge commit 'f7e40a3311ae78b3edd9259980c224a5a9d91653' into eclair-mr2

* commit 'f7e40a3311ae78b3edd9259980c224a5a9d91653':
  improve cache behavior of gralloc allocations on qsd8k
2009-12-10 16:43:17 -08:00
Dima Zavin
02d2539e4f am 2754389d: gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
Merge commit '2754389d0e7638b3065ecb3c965b1f262d2205ed' into eclair-plus-aosp

* commit '2754389d0e7638b3065ecb3c965b1f262d2205ed':
  gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
2009-12-09 21:19:13 -08:00
Dima Zavin
62eea7270b gralloc-qsd8k: make sure that we never try to allocatio 0 bytes
Change-Id: Ic05b895c09a55d746c737aa0c3356edc511d7c96
Signed-off-by: Dima Zavin <dima@android.com>
2009-12-09 21:13:44 -08:00
Mathias Agopian
d0e3a6f424 am f7e40a33: improve cache behavior of gralloc allocations on qsd8k
Merge commit 'f7e40a3311ae78b3edd9259980c224a5a9d91653' into eclair-plus-aosp

* commit 'f7e40a3311ae78b3edd9259980c224a5a9d91653':
  improve cache behavior of gralloc allocations on qsd8k
2009-12-09 05:36:20 -08:00
Mathias Agopian
5086fcfb1f improve cache behavior of gralloc allocations on qsd8k
make sure to use cached buffers only when frequent cpu access is needed.
also, always flush buffers after they are allocated and cleared.
2009-12-08 19:34:43 -08:00
Dima Zavin
02a6d435ed am 798bd593: am 288cb24b: am dc80f522: gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
Merge commit '798bd5939d62e6c064832880830476735d9ea52d'

* commit '798bd5939d62e6c064832880830476735d9ea52d':
  gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
2009-12-07 14:57:42 -08:00
Dima Zavin
9a5d521168 am 4842a5ea: am 7422163d: am c3f00492: gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
Merge commit '4842a5eaee0b93950297f52dd1ce56d13f7628eb'

* commit '4842a5eaee0b93950297f52dd1ce56d13f7628eb':
  gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
2009-12-07 14:57:22 -08:00
Dima Zavin
ca71348e67 am 288cb24b: am dc80f522: gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
Merge commit '288cb24be01d065843a2a98ed6c0fdbb5faa8268' into eclair-mr2-plus-aosp

* commit '288cb24be01d065843a2a98ed6c0fdbb5faa8268':
  gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
2009-12-04 20:28:16 -08:00
Dima Zavin
11b2d5dbdb am dc80f522: gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
Merge commit 'dc80f522f23ecda902bf8ddf5de68d6fe10e2c05' into eclair-plus-aosp

* commit 'dc80f522f23ecda902bf8ddf5de68d6fe10e2c05':
  gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
2009-12-04 20:26:03 -08:00
Dima Zavin
464a38d6c5 am dc80f522: gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
Merge commit 'dc80f522f23ecda902bf8ddf5de68d6fe10e2c05' into eclair-mr2

* commit 'dc80f522f23ecda902bf8ddf5de68d6fe10e2c05':
  gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
2009-12-04 20:25:50 -08:00
Dima Zavin
34f61a5ebf gralloc-qsd8k: If using gpu composition, request rgba8888 instead of rgbx8888
Change-Id: Ic41d4854d6acbc21c85a03e82bd63af234273886
Signed-off-by: Dima Zavin <dima@android.com>
2009-12-04 20:22:41 -08:00
Dima Zavin
a139ad074d am 7422163d: am c3f00492: gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
Merge commit '7422163dfcbad4997d30274bb7c438997269ae4d' into eclair-mr2-plus-aosp

* commit '7422163dfcbad4997d30274bb7c438997269ae4d':
  gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
2009-12-04 17:50:21 -08:00
Dima Zavin
9b7dd47849 am c3f00492: gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
Merge commit 'c3f00492488dec0b8eaa5d28aac1bcc8ca899a3c' into eclair-plus-aosp

* commit 'c3f00492488dec0b8eaa5d28aac1bcc8ca899a3c':
  gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
2009-12-04 17:48:32 -08:00
Dima Zavin
1075e140f9 am c3f00492: gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
Merge commit 'c3f00492488dec0b8eaa5d28aac1bcc8ca899a3c' into eclair-mr2

* commit 'c3f00492488dec0b8eaa5d28aac1bcc8ca899a3c':
  gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
2009-12-04 17:48:11 -08:00
Dima Zavin
4a4b51ffd8 gralloc-qsd8k: Change composition_complete being a glfinish from stopship to a TODO
We really need to fix this eventually, but it's not a ship blocker.

Change-Id: I35f66988e7adba13e47c2a86e13a7425cc5aada3
Signed-off-by: Dima Zavin <dima@android.com>
2009-12-04 15:41:54 -08:00
Dima Zavin
426c6ba831 am 9f879fb0: am e817fcde: am 49a5c99a: libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
Merge commit '9f879fb0625bbbc117f5d6ce94451204f5fe8f04'

* commit '9f879fb0625bbbc117f5d6ce94451204f5fe8f04':
  libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
2009-12-03 17:21:52 -08:00
Dima Zavin
9088321e2c am e817fcde: am 49a5c99a: libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
Merge commit 'e817fcdedf46750b4ef57c8eeec0d44d5c46a252' into eclair-mr2-plus-aosp

* commit 'e817fcdedf46750b4ef57c8eeec0d44d5c46a252':
  libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
2009-12-03 02:21:01 -08:00
Dima Zavin
cf5a211d8e am 49a5c99a: libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
Merge commit '49a5c99a84626b5b1db4eda5239307e3366e28fa' into eclair-mr2

* commit '49a5c99a84626b5b1db4eda5239307e3366e28fa':
  libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
2009-12-03 02:16:39 -08:00
Dima Zavin
8723fcf375 am 49a5c99a: libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
Merge commit '49a5c99a84626b5b1db4eda5239307e3366e28fa' into eclair-plus-aosp

* commit '49a5c99a84626b5b1db4eda5239307e3366e28fa':
  libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
2009-12-03 02:16:37 -08:00
Dima Zavin
8998d08da4 libgralloc-qsd8k: Do not use the physical address of surfaces/framebuffer
The GPU now correctly maps everything throug hthe MMU so physical addresses
are no longer needed.

Change-Id: Id16a690f63d7141c8ee6694b246b1955f450b8ed
Signed-off-by: Dima Zavin <dima@android.com>
2009-12-02 21:15:33 -08:00
Mathias Agopian
1bb185f048 am 1a2ae2cf: am 83fb1ada: am bd94d9af: part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
Merge commit '1a2ae2cf197dfc2901a42738645209e90d7c4fa2'

* commit '1a2ae2cf197dfc2901a42738645209e90d7c4fa2':
  part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
2009-11-24 15:02:30 -08:00
Mathias Agopian
f29f87165d am 83fb1ada: am bd94d9af: part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
Merge commit '83fb1ada26d894c807686a93925c1e255fddb28c' into eclair-mr2-plus-aosp

* commit '83fb1ada26d894c807686a93925c1e255fddb28c':
  part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
2009-11-24 14:53:09 -08:00
Mathias Agopian
f502091b22 am bd94d9af: part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
Merge commit 'bd94d9af5cc7067b0e849af076183626b4c32e4e' into eclair-plus-aosp

* commit 'bd94d9af5cc7067b0e849af076183626b4c32e4e':
  part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
2009-11-24 14:43:44 -08:00
Mathias Agopian
0c996e6cf0 am bd94d9af: part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
Merge commit 'bd94d9af5cc7067b0e849af076183626b4c32e4e' into eclair-mr2

* commit 'bd94d9af5cc7067b0e849af076183626b4c32e4e':
  part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
2009-11-24 14:43:43 -08:00
Mathias Agopian
2b157b50ec part of fix [2186418] switch qsd8k devices to 24-bits framebuffer
Add support for 32 bits framebuffers
2009-11-23 23:19:54 -08:00