display: use metadata ioctl to get panel frame rate

Get rid of using reserved fields

Change-Id: Ia3ada294427812e8382f744964f475403f6fb73a
This commit is contained in:
Ken Zhang
2013-01-08 15:09:27 -05:00
committed by Naseer Ahmed
parent d78d153d70
commit 6e6f9a907e

View File

@@ -267,9 +267,20 @@ int mapFrameBufferLocked(struct private_module_t* module)
float xdpi = (info.xres * 25.4f) / info.width;
float ydpi = (info.yres * 25.4f) / info.height;
#ifdef MSMFB_METADATA_GET
struct msmfb_metadata metadata;
memset(&metadata, 0 , sizeof(metadata));
metadata.op = metadata_op_frame_rate;
if (ioctl(fd, MSMFB_METADATA_GET, &metadata) == -1) {
ALOGE("Error retrieving panel frame rate");
return -errno;
}
float fps = metadata.data.panel_frame_rate;
#else
//XXX: Remove reserved field usage on all baselines
//The reserved[3] field is used to store FPS by the driver.
float fps = info.reserved[3] & 0xFF;
#endif
ALOGI("using (fd=%d)\n"
"id = %s\n"
"xres = %d px\n"