1 /*
2 // Copyright (c) 2014 Intel Corporation 
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //      http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 */
16 #include <system/graphics.h>
17 #include <common/utils/HwcTrace.h>
18 #include <ips/common/PixelFormat.h>
19 #include <hal_public.h>
20 
21 namespace android {
22 namespace intel {
23 
convertFormat(uint32_t grallocFormat,uint32_t & spriteFormat,int & bpp)24 bool PixelFormat::convertFormat(uint32_t grallocFormat, uint32_t& spriteFormat, int& bpp)
25 {
26     switch (grallocFormat) {
27     case HAL_PIXEL_FORMAT_RGBA_8888:
28         spriteFormat = PLANE_PIXEL_FORMAT_RGBA8888;
29         bpp = 4;
30         break;
31     case HAL_PIXEL_FORMAT_RGBX_8888:
32         spriteFormat = PLANE_PIXEL_FORMAT_RGBX8888;
33         bpp = 4;
34         break;
35     case HAL_PIXEL_FORMAT_BGRX_8888:
36         spriteFormat = PLANE_PIXEL_FORMAT_BGRX8888;
37         bpp = 4;
38         break;
39     case HAL_PIXEL_FORMAT_BGRA_8888:
40         spriteFormat = PLANE_PIXEL_FORMAT_BGRA8888;
41         bpp = 4;
42         break;
43     case HAL_PIXEL_FORMAT_RGB_565:
44         spriteFormat = PLANE_PIXEL_FORMAT_BGRX565;
45         bpp = 2;
46         break;
47     default:
48         return false;
49     }
50 
51     return true;
52 }
53 
54 
55 } // namespace intel
56 } // namespace android
57