sdm: Fix Wconversion errors

Change-Id: Ica8ecd83e44126d7ef5d8595dcaf52f88aea6e70
CRs-fixed: 974030
This commit is contained in:
Naseer Ahmed
2016-02-05 20:27:30 -05:00
parent b112da6f23
commit bb069a6a1d
25 changed files with 180 additions and 160 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -63,7 +63,7 @@ class Debug {
static inline DebugHandler* Get() { return debug_.debug_handler_; }
static int GetSimulationFlag();
static int GetHDMIResolution();
static int GetIdleTimeoutMs();
static uint32_t GetIdleTimeoutMs();
static int GetBootAnimLayerCount();
static bool IsRotatorDownScaleDisabled();
static bool IsDecimationDisabled();

View File

@@ -7,7 +7,7 @@ LOCAL_C_INCLUDES := hardware/qcom/display/sdm/include/ \
$(TARGET_OUT_INTERMEDIATES)/KERNEL_OBJ/usr/include \
external/libcxx/include/
LOCAL_CFLAGS := -Wno-missing-field-initializers -Wno-unused-parameter \
-Wall -Werror -std=c++11 -fcolor-diagnostics\
-Wall -Werror -Wconversion -std=c++11 -fcolor-diagnostics\
-DLOG_TAG=\"SDM\"
LOCAL_CLANG := true
LOCAL_HW_INTF_PATH := fb

View File

@@ -1,4 +1,4 @@
/* Copyright (c) 2015, The Linux Foundataion. All rights reserved.
/* Copyright (c) 2015 - 2016, The Linux Foundataion. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -57,7 +57,7 @@ void PPFeaturesConfig::Reset() {
DisplayError PPFeaturesConfig::RetrieveNextFeature(PPFeatureInfo **feature) {
DisplayError ret = kErrorNone;
int i(0);
uint32_t i(0);
for (i = next_idx_; i < kMaxNumPPFeatures; i++) {
if (feature_[i]) {

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted
* provided that the following conditions are met:
@@ -418,7 +418,7 @@ bool CompManager::SupportLayerAsCursor(Handle comp_handle, HWLayers *hw_layers)
return supported;
}
for (int32_t i = layer_stack->layer_count - 1; i >= 0; i--) {
for (int32_t i = INT32(layer_stack->layer_count - 1); i >= 0; i--) {
Layer &layer = layer_stack->layers[i];
if (layer.composition == kCompositionGPUTarget) {
gpu_index = i;

View File

@@ -70,7 +70,7 @@ DisplayError DisplayBase::Init() {
if (hw_info_intf_) {
HWResourceInfo hw_resource_info = HWResourceInfo();
hw_info_intf_->GetHWResourceInfo(&hw_resource_info);
int max_mixer_stages = hw_resource_info.num_blending_stages;
auto max_mixer_stages = hw_resource_info.num_blending_stages;
int property_value = Debug::GetMaxPipesPerMixer(display_type_);
if (property_value >= 0) {
max_mixer_stages = MIN(UINT32(property_value), hw_resource_info.num_blending_stages);
@@ -142,8 +142,8 @@ DisplayError DisplayBase::ValidateGPUTarget(LayerStack *layer_stack) {
return kErrorParameters;
}
uint32_t gpu_target_layer_dst_xpixels = gpu_target_layer.dst_rect.right;
uint32_t gpu_target_layer_dst_ypixels = gpu_target_layer.dst_rect.bottom;
auto gpu_target_layer_dst_xpixels = gpu_target_layer.dst_rect.right;
auto gpu_target_layer_dst_ypixels = gpu_target_layer.dst_rect.bottom;
HWDisplayAttributes display_attrib;
uint32_t active_index = 0;

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted
* provided that the following conditions are met:
@@ -203,7 +203,7 @@ DisplayError DisplayHDMI::OnMinHdcpEncryptionLevelChange(uint32_t min_enc_level)
return hw_intf_->OnMinHdcpEncryptionLevelChange(min_enc_level);
}
int DisplayHDMI::GetBestConfig(HWS3DMode s3d_mode) {
uint32_t DisplayHDMI::GetBestConfig(HWS3DMode s3d_mode) {
uint32_t best_index = 0, index;
uint32_t num_modes = 0;
HWDisplayAttributes best_attrib;
@@ -223,7 +223,7 @@ int DisplayHDMI::GetBestConfig(HWS3DMode s3d_mode) {
}
}
if (index < num_modes) {
best_index = index;
best_index = UINT32(index);
for (size_t index = best_index + 1; index < num_modes; index ++) {
if (!IS_BIT_SET(attrib[index].s3d_config, s3d_mode))
continue;
@@ -231,13 +231,13 @@ int DisplayHDMI::GetBestConfig(HWS3DMode s3d_mode) {
// From the available configs, select the best
// Ex: 1920x1080@60Hz is better than 1920x1080@30 and 1920x1080@30 is better than 1280x720@60
if (attrib[index].y_pixels > attrib[best_index].y_pixels) {
best_index = index;
best_index = UINT32(index);
} else if (attrib[index].y_pixels == attrib[best_index].y_pixels) {
if (attrib[index].x_pixels > attrib[best_index].x_pixels) {
best_index = index;
best_index = UINT32(index);
} else if (attrib[index].x_pixels == attrib[best_index].x_pixels) {
if (attrib[index].vsync_period_ns < attrib[best_index].vsync_period_ns) {
best_index = index;
best_index = UINT32(index);
}
}
}
@@ -249,9 +249,9 @@ int DisplayHDMI::GetBestConfig(HWS3DMode s3d_mode) {
delete[] attrib;
// Used for changing HDMI Resolution - override the best with user set config
uint32_t user_config = Debug::GetHDMIResolution();
uint32_t user_config = UINT32(Debug::GetHDMIResolution());
if (user_config) {
uint32_t config_index = -1;
uint32_t config_index = 0;
// For the config, get the corresponding index
DisplayError error = hw_intf_->GetConfigIndex(user_config, &config_index);
if (error == kErrorNone)
@@ -263,8 +263,8 @@ int DisplayHDMI::GetBestConfig(HWS3DMode s3d_mode) {
void DisplayHDMI::GetScanSupport() {
DisplayError error = kErrorNone;
uint32_t video_format = -1;
uint32_t max_cea_format = -1;
uint32_t video_format = 0;
uint32_t max_cea_format = 0;
HWScanInfo scan_info = HWScanInfo();
hw_intf_->GetHWScanInfo(&scan_info);

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted
* provided that the following conditions are met:
@@ -66,7 +66,7 @@ class DisplayHDMI : public DisplayBase, DumpImpl {
virtual DisplayError SetCursorPosition(int x, int y);
private:
virtual int GetBestConfig(HWS3DMode s3d_mode);
virtual uint32_t GetBestConfig(HWS3DMode s3d_mode);
virtual void GetScanSupport();
virtual void SetS3DMode(LayerStack *layer_stack);

View File

@@ -292,7 +292,7 @@ DisplayError HWDevice::Validate(HWLayers *hw_layers) {
}
mdp_commit.flags |= MDP_VALIDATE_LAYER;
if (Sys::ioctl_(device_fd_, MSMFB_ATOMIC_COMMIT, &mdp_disp_commit_) < 0) {
if (Sys::ioctl_(device_fd_, INT(MSMFB_ATOMIC_COMMIT), &mdp_disp_commit_) < 0) {
if (errno == ESHUTDOWN) {
DLOGI_IF(kTagDriverConfig, "Driver is processing shutdown sequence");
return kErrorShutDown;
@@ -409,11 +409,11 @@ DisplayError HWDevice::Commit(HWLayers *hw_layers) {
}
mdp_commit.release_fence = -1;
mdp_commit.flags &= ~MDP_VALIDATE_LAYER;
mdp_commit.flags &= UINT32(~MDP_VALIDATE_LAYER);
if (synchronous_commit_) {
mdp_commit.flags |= MDP_COMMIT_WAIT_FOR_FINISH;
}
if (Sys::ioctl_(device_fd_, MSMFB_ATOMIC_COMMIT, &mdp_disp_commit_) < 0) {
if (Sys::ioctl_(device_fd_, INT(MSMFB_ATOMIC_COMMIT), &mdp_disp_commit_) < 0) {
if (errno == ESHUTDOWN) {
DLOGI_IF(kTagDriverConfig, "Driver is processing shutdown sequence");
return kErrorShutDown;
@@ -477,8 +477,8 @@ DisplayError HWDevice::Flush() {
mdp_commit.input_layer_cnt = 0;
mdp_commit.output_layer = NULL;
mdp_commit.flags &= ~MDP_VALIDATE_LAYER;
if (Sys::ioctl_(device_fd_, MSMFB_ATOMIC_COMMIT, &mdp_disp_commit_) < 0) {
mdp_commit.flags &= UINT32(~MDP_VALIDATE_LAYER);
if (Sys::ioctl_(device_fd_, INT(MSMFB_ATOMIC_COMMIT), &mdp_disp_commit_) < 0) {
if (errno == ESHUTDOWN) {
DLOGI_IF(kTagDriverConfig, "Driver is processing shutdown sequence");
return kErrorShutDown;
@@ -754,9 +754,9 @@ void HWDevice::GetHWPanelInfoByNode(int device_node, HWPanelInfo *panel_info) {
} else if (!strncmp(tokens[0], "dyn_fps_en", strlen("dyn_fps_en"))) {
panel_info->dynamic_fps = atoi(tokens[1]);
} else if (!strncmp(tokens[0], "min_fps", strlen("min_fps"))) {
panel_info->min_fps = atoi(tokens[1]);
panel_info->min_fps = UINT32(atoi(tokens[1]));
} else if (!strncmp(tokens[0], "max_fps", strlen("max_fps"))) {
panel_info->max_fps = atoi(tokens[1]);
panel_info->max_fps = UINT32(atoi(tokens[1]));
} else if (!strncmp(tokens[0], "primary_panel", strlen("primary_panel"))) {
panel_info->is_primary_panel = atoi(tokens[1]);
} else if (!strncmp(tokens[0], "is_pluggable", strlen("is_pluggable"))) {
@@ -843,8 +843,8 @@ void HWDevice::GetSplitInfo(int device_node, HWPanelInfo *panel_info) {
read = Sys::getline_(&line, &len, fileptr);
if (read > 0) {
if (!ParseLine(line, tokens, max_count, &token_count)) {
panel_info->split_info.left_split = atoi(tokens[0]);
panel_info->split_info.right_split = atoi(tokens[1]);
panel_info->split_info.left_split = UINT32(atoi(tokens[0]));
panel_info->split_info.right_split = UINT32(atoi(tokens[1]));
}
}
@@ -1022,15 +1022,15 @@ DisplayError HWDevice::SetCursorPosition(HWLayers *hw_layers, int x, int y) {
STRUCT_VAR(mdp_async_layer, async_layer);
async_layer.flags = MDP_LAYER_ASYNC;
async_layer.pipe_ndx = left_pipe->pipe_id;
async_layer.src.x = left_pipe->src_roi.left;
async_layer.src.y = left_pipe->src_roi.top;
async_layer.dst.x = x;
async_layer.dst.y = y;
async_layer.src.x = UINT32(left_pipe->src_roi.left);
async_layer.src.y = UINT32(left_pipe->src_roi.top);
async_layer.dst.x = UINT32(x);
async_layer.dst.y = UINT32(y);
STRUCT_VAR(mdp_position_update, pos_update);
pos_update.input_layer_cnt = 1;
pos_update.input_layers = &async_layer;
if (Sys::ioctl_(device_fd_, MSMFB_ASYNC_POSITION_UPDATE, &pos_update) < 0) {
if (Sys::ioctl_(device_fd_, INT(MSMFB_ASYNC_POSITION_UPDATE), &pos_update) < 0) {
if (errno == ESHUTDOWN) {
DLOGI_IF(kTagDriverConfig, "Driver is processing shutdown sequence");
return kErrorShutDown;
@@ -1095,8 +1095,8 @@ ssize_t HWDevice::SysFsWrite(const char* file_node, const char* value, ssize_t l
DLOGW("Open failed = %s", file_node);
return -1;
}
ssize_t len = Sys::pwrite_(fd, value, length, 0);
if (length <= 0) {
ssize_t len = Sys::pwrite_(fd, value, static_cast<size_t>(length), 0);
if (len <= 0) {
DLOGE("Write failed for path %s with value %s", file_node, value);
}
Sys::close_(fd);

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2015 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -213,7 +213,7 @@ DisplayError HWHDMI::ReadEDIDInfo() {
char *tokens[edid_count_max] = { NULL };
ParseLine(ptr, tokens, edid_count_max, &hdmi_mode_count_);
for (uint32_t i = 0; i < hdmi_mode_count_; i++) {
hdmi_modes_[i] = atoi(tokens[i]);
hdmi_modes_[i] = UINT32(atoi(tokens[i]));
}
}
@@ -450,9 +450,9 @@ void HWHDMI::ReadScanInfo() {
return;
}
hw_scan_info_.pt_scan_support = MapHWScanSupport(atoi(tokens[0]));
hw_scan_info_.it_scan_support = MapHWScanSupport(atoi(tokens[1]));
hw_scan_info_.cea_scan_support = MapHWScanSupport(atoi(tokens[2]));
hw_scan_info_.pt_scan_support = MapHWScanSupport(UINT32(atoi(tokens[0])));
hw_scan_info_.it_scan_support = MapHWScanSupport(UINT32(atoi(tokens[1])));
hw_scan_info_.cea_scan_support = MapHWScanSupport(UINT32(atoi(tokens[2])));
DLOGI("PT %d IT %d CEA %d", hw_scan_info_.pt_scan_support, hw_scan_info_.it_scan_support,
hw_scan_info_.cea_scan_support);
}
@@ -577,7 +577,8 @@ void HWHDMI::SetSourceProductInformation(const char *node, const char *name) {
}
snprintf(sys_fs_path , sizeof(sys_fs_path), "%s%d/%s", fb_path_, hdmi_node_index, node);
length = HWDevice::SysFsWrite(sys_fs_path, property_value, strlen(property_value));
length = HWDevice::SysFsWrite(sys_fs_path, property_value,
static_cast<ssize_t>(strlen(property_value)));
if (length <= 0) {
DLOGW("Failed to write %s = %s", node, property_value);
}

View File

@@ -111,7 +111,7 @@ DisplayError HWInfo::GetDynamicBWLimits(HWResourceInfo *hw_resource) {
HWDynBwLimitInfo* bw_info = &hw_resource->dyn_bw_info;
for (int index = 0; index < kBwModeMax; index++) {
bw_info->total_bw_limit[index] = hw_resource->max_bandwidth_low;
bw_info->total_bw_limit[index] = UINT32(hw_resource->max_bandwidth_low);
bw_info->pipe_bw_limit[index] = hw_resource->max_pipe_bw;
}
@@ -415,7 +415,7 @@ void HWInfo::PopulateSupportedFormatMap(const uint8_t *format_supported, uint32_
vector <LayerBufferFormat> supported_sdm_formats;
for (uint32_t mdp_format = 0; mdp_format < format_count; mdp_format++) {
if (IS_BIT_SET(format_supported[mdp_format >> 3], (mdp_format & 7))) {
LayerBufferFormat sdm_format = GetSDMFormat(mdp_format);
LayerBufferFormat sdm_format = GetSDMFormat(INT(mdp_format));
if (sdm_format != kFormatInvalid) {
supported_sdm_formats.push_back(sdm_format);
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2015 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -175,8 +175,8 @@ bool HWPrimary::GetCurrentModeFromSysfs(size_t *curr_x_pixels, size_t *curr_y_pi
if (xpos == string::npos || ypos == string::npos) {
DLOGI("Resolution switch not supported");
} else {
*curr_x_pixels = atoi(buffer + xpos + 1);
*curr_y_pixels = atoi(buffer + ypos + 1);
*curr_x_pixels = static_cast<size_t>(atoi(buffer + xpos + 1));
*curr_y_pixels = static_cast<size_t>(atoi(buffer + ypos + 1));
DLOGI("Current Config: %u x %u", *curr_x_pixels, *curr_y_pixels);
ret = true;
}
@@ -218,14 +218,14 @@ void HWPrimary::InitializeConfigs() {
continue;
}
config.x_pixels = atoi(buffer + xpos + 1);
config.y_pixels = atoi(buffer + ypos + 1);
config.x_pixels = UINT32(atoi(buffer + xpos + 1));
config.y_pixels = UINT32(atoi(buffer + ypos + 1));
DLOGI("Found mode %d x %d", config.x_pixels, config.y_pixels);
display_configs_.push_back(config);
display_config_strings_.push_back(string(buffer));
if (curr_x_pixels == config.x_pixels && curr_y_pixels == config.y_pixels) {
active_config_index_ = display_configs_.size() - 1;
active_config_index_ = UINT32(display_configs_.size() - 1);
DLOGI("Active config index %u", active_config_index_);
}
}
@@ -253,7 +253,7 @@ DisplayError HWPrimary::Deinit() {
}
DisplayError HWPrimary::GetNumDisplayAttributes(uint32_t *count) {
*count = IsResolutionSwitchEnabled() ? display_configs_.size() : 1;
*count = IsResolutionSwitchEnabled() ? UINT32(display_configs_.size()) : 1;
return kErrorNone;
}
@@ -303,8 +303,8 @@ DisplayError HWPrimary::PopulateDisplayAttributes() {
// If driver doesn't return width/height information, default to 160 dpi
if (INT(var_screeninfo.width) <= 0 || INT(var_screeninfo.height) <= 0) {
var_screeninfo.width = INT(((FLOAT(var_screeninfo.xres) * 25.4f)/160.0f) + 0.5f);
var_screeninfo.height = INT(((FLOAT(var_screeninfo.yres) * 25.4f)/160.0f) + 0.5f);
var_screeninfo.width = UINT32(((FLOAT(var_screeninfo.xres) * 25.4f)/160.0f) + 0.5f);
var_screeninfo.height = UINT32(((FLOAT(var_screeninfo.yres) * 25.4f)/160.0f) + 0.5f);
}
display_attributes_.x_pixels = var_screeninfo.xres;
@@ -438,19 +438,19 @@ DisplayError HWPrimary::Validate(HWLayers *hw_layers) {
LayerRect left_roi = hw_layers->info.left_partial_update;
LayerRect right_roi = hw_layers->info.right_partial_update;
mdp_commit.left_roi.x = INT(left_roi.left);
mdp_commit.left_roi.y = INT(left_roi.top);
mdp_commit.left_roi.w = INT(left_roi.right - left_roi.left);
mdp_commit.left_roi.h = INT(left_roi.bottom - left_roi.top);
mdp_commit.left_roi.x = UINT32(left_roi.left);
mdp_commit.left_roi.y = UINT32(left_roi.top);
mdp_commit.left_roi.w = UINT32(left_roi.right - left_roi.left);
mdp_commit.left_roi.h = UINT32(left_roi.bottom - left_roi.top);
// SDM treats ROI as one full coordinate system.
// In case source split is disabled, However, Driver assumes Mixer to operate in
// different co-ordinate system.
if (!hw_resource_.is_src_split) {
mdp_commit.right_roi.x = INT(right_roi.left) - hw_panel_info_.split_info.left_split;
mdp_commit.right_roi.y = INT(right_roi.top);
mdp_commit.right_roi.w = INT(right_roi.right - right_roi.left);
mdp_commit.right_roi.h = INT(right_roi.bottom - right_roi.top);
mdp_commit.right_roi.x = UINT32(right_roi.left) - hw_panel_info_.split_info.left_split;
mdp_commit.right_roi.y = UINT32(right_roi.top);
mdp_commit.right_roi.w = UINT32(right_roi.right - right_roi.left);
mdp_commit.right_roi.h = UINT32(right_roi.bottom - right_roi.top);
}
return HWDevice::Validate(hw_layers);
@@ -480,7 +480,7 @@ void* HWPrimary::DisplayEventThreadHandler() {
usleep(16666);
STRUCT_VAR(timeval, time_now);
gettimeofday(&time_now, NULL);
uint64_t ts = uint64_t(time_now.tv_sec)*1000000000LL +uint64_t(time_now.tv_usec)*1000LL;
int64_t ts = int64_t(time_now.tv_sec)*1000000000LL +int64_t(time_now.tv_usec)*1000LL;
// Send Vsync event for primary display(0)
event_handler_->VSync(ts);
@@ -521,7 +521,7 @@ void* HWPrimary::DisplayEventThreadHandler() {
void HWPrimary::HandleVSync(char *data) {
int64_t timestamp = 0;
if (!strncmp(data, "VSYNC=", strlen("VSYNC="))) {
timestamp = strtoull(data + strlen("VSYNC="), NULL, 0);
timestamp = strtoll(data + strlen("VSYNC="), NULL, 0);
}
event_handler_->VSync(timestamp);
}
@@ -537,7 +537,7 @@ void HWPrimary::HandleIdleTimeout(char *data) {
void HWPrimary::HandleThermal(char *data) {
int64_t thermal_level = 0;
if (!strncmp(data, "thermal_level=", strlen("thermal_level="))) {
thermal_level = strtoull(data + strlen("thermal_level="), NULL, 0);
thermal_level = strtoll(data + strlen("thermal_level="), NULL, 0);
}
DLOGI("Received thermal notification with thermal level = %d", thermal_level);
@@ -584,7 +584,7 @@ DisplayError HWPrimary::SetVSyncState(bool enable) {
}
DisplayError HWPrimary::SetDisplayMode(const HWDisplayMode hw_display_mode) {
uint32_t mode = -1;
uint32_t mode = kModeDefault;
switch (hw_display_mode) {
case kModeVideo:
@@ -599,7 +599,7 @@ DisplayError HWPrimary::SetDisplayMode(const HWDisplayMode hw_display_mode) {
return kErrorParameters;
}
if (Sys::ioctl_(device_fd_, MSMFB_LPM_ENABLE, &mode) < 0) {
if (Sys::ioctl_(device_fd_, INT(MSMFB_LPM_ENABLE), &mode) < 0) {
IOCTL_LOGE(MSMFB_LPM_ENABLE, device_type_);
return kErrorHardware;
}
@@ -628,7 +628,7 @@ DisplayError HWPrimary::SetPanelBrightness(int level) {
return kErrorUndefined;
}
ssize_t ret = Sys::pwrite_(fd, buffer, bytes, 0);
ssize_t ret = Sys::pwrite_(fd, buffer, static_cast<size_t>(bytes), 0);
if (ret <= 0) {
DLOGV_IF(kTagDriverConfig, "Failed to write to node = %s, error = %s ", kBrightnessNode,
strerror(errno));
@@ -690,7 +690,7 @@ DisplayError HWPrimary::GetPPFeaturesVersion(PPFeatureVersion *vers) {
for (int i(0); i < kMaxNumPPFeatures; i++) {
version.pp_feature = feature_id_mapping[i];
if (Sys::ioctl_(device_fd_, MSMFB_MDP_PP_GET_FEATURE_VERSION, &version) < 0) {
if (Sys::ioctl_(device_fd_, INT(MSMFB_MDP_PP_GET_FEATURE_VERSION), &version) < 0) {
IOCTL_LOGE(MSMFB_MDP_PP_GET_FEATURE_VERSION, device_type_);
return kErrorHardware;
}
@@ -716,7 +716,7 @@ DisplayError HWPrimary::SetPPFeatures(PPFeaturesConfig *feature_list) {
if ((feature->feature_id_ < kMaxNumPPFeatures)) {
HWColorManager::SetFeature[feature->feature_id_](*feature, &kernel_params);
if (Sys::ioctl_(device_fd_, MSMFB_MDP_PP, &kernel_params) < 0) {
if (Sys::ioctl_(device_fd_, INT(MSMFB_MDP_PP), &kernel_params) < 0) {
IOCTL_LOGE(MSMFB_MDP_PP, device_type_);
feature_list->Reset();

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are permitted
* provided that the following conditions are met:
@@ -73,7 +73,7 @@ DisplayError ResourceDefault::Init(const HWResourceInfo &hw_res_info) {
}
for (uint32_t i = 0; i < num_pipe_; i++) {
src_pipes_[i].priority = i;
src_pipes_[i].priority = INT(i);
}
DLOGI("hw_rev=%x, DMA=%d RGB=%d VIG=%d", hw_res_info_.hw_revision, hw_res_info_.num_dma_pipe,
@@ -634,8 +634,11 @@ DisplayError ResourceDefault::ValidateLayerParams(const Layer &layer) {
}
// Make sure source in integral only if it is a non secure layer.
if (!input_buffer->flags.secure && (src.left - roundf(src.left) || src.top - roundf(src.top) ||
src.right - roundf(src.right) || src.bottom - roundf(src.bottom))) {
if (!input_buffer->flags.secure &&
((src.left - roundf(src.left) != 0.0f) ||
(src.top - roundf(src.top) != 0.0f) ||
(src.right - roundf(src.right) != 0.0f) ||
(src.bottom - roundf(src.bottom) != 0.0f))) {
DLOGV_IF(kTagResources, "Input ROI is not integral");
return kErrorNotSupported;
}

View File

@@ -5,15 +5,15 @@ LOCAL_MODULE := hwcomposer.$(TARGET_BOARD_PLATFORM)
LOCAL_MODULE_RELATIVE_PATH := hw
LOCAL_MODULE_TAGS := optional
LOCAL_C_INCLUDES := hardware/qcom/display/sdm/include/ \
hardware/qcom/display/libgralloc/ \
hardware/qcom/display/libqservice/ \
hardware/qcom/display/libqdutils/ \
hardware/qcom/display/libcopybit/ \
external/libcxx/include/
LOCAL_CFLAGS := -Wno-missing-field-initializers -Wno-unused-parameter \
-Wall -Werror -std=c++11 -fcolor-diagnostics\
-Wall -Werror -Wconversion -std=c++11 -fcolor-diagnostics\
-DLOG_TAG=\"SDM\" -DDEBUG_CALC_FPS
LOCAL_CFLAGS += -isystem hardware/qcom/display/libgralloc
LOCAL_CLANG := true
# TODO: Move this to the common makefile

View File

@@ -1,4 +1,4 @@
/* Copyright (c) 2012-2015, The Linux Foundation. All rights reserved.
/* Copyright (c) 2012-2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -61,6 +61,12 @@
#define __CLASS__ "BlitEngineC2D"
// TODO(user): Remove pragma after fixing sign conversion errors
#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wsign-conversion"
#endif
namespace sdm {
@@ -526,7 +532,7 @@ int BlitEngineC2d::DrawRectUsingCopybit(hwc_layer_1_t *hwc_layer, Layer *layer,
blit_engine_c2d_->set_parameter(blit_engine_c2d_, COPYBIT_FRAMEBUFFER_HEIGHT,
target_buffer->height);
int transform = 0;
if (layer->transform.rotation) transform |= COPYBIT_TRANSFORM_ROT_90;
if (layer->transform.rotation != 0.0f) transform |= COPYBIT_TRANSFORM_ROT_90;
if (layer->transform.flip_horizontal) transform |= COPYBIT_TRANSFORM_FLIP_H;
if (layer->transform.flip_vertical) transform |= COPYBIT_TRANSFORM_FLIP_V;
blit_engine_c2d_->set_parameter(blit_engine_c2d_, COPYBIT_TRANSFORM, transform);
@@ -593,4 +599,7 @@ void BlitEngineC2d::DumpBlitTargetBuffer(int fd) {
}
} // namespace sdm
#if defined(__clang__)
#pragma clang diagnostic pop
#endif

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2015 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -69,7 +69,7 @@ DisplayError HWCBufferAllocator::AllocateBuffer(BufferInfo *buffer_info) {
alloc_flags |= INT(GRALLOC_USAGE_PROTECTED);
data.align = SECURE_ALIGN;
} else {
data.align = getpagesize();
data.align = UINT32(getpagesize());
}
if (buffer_config.cache == false) {
@@ -103,7 +103,7 @@ DisplayError HWCBufferAllocator::AllocateBuffer(BufferInfo *buffer_info) {
}
alloc_buffer_info->fd = data.fd;
alloc_buffer_info->stride = aligned_width;
alloc_buffer_info->stride = UINT32(aligned_width);
alloc_buffer_info->size = buffer_size;
meta_buffer_info->base_addr = data.base;
@@ -151,7 +151,7 @@ DisplayError HWCBufferAllocator::FreeBuffer(BufferInfo *buffer_info) {
}
uint32_t HWCBufferAllocator::GetBufferSize(BufferInfo *buffer_info) {
uint32_t align = getpagesize();
uint32_t align = UINT32(getpagesize());
const BufferConfig &buffer_config = buffer_info->buffer_config;

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2015 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -64,8 +64,8 @@ int HWCColorManager::CreatePayloadFromParcel(const android::Parcel &in, uint32_t
uint32_t id(0);
uint32_t size(0);
id = in.readInt32();
size = in.readInt32();
id = UINT32(in.readInt32());
size = UINT32(in.readInt32());
if (size > 0 && size == in.dataAvail()) {
const void *data = in.readInplace(size);
const uint8_t *temp = reinterpret_cast<const uint8_t *>(data);
@@ -83,7 +83,7 @@ int HWCColorManager::CreatePayloadFromParcel(const android::Parcel &in, uint32_t
void HWCColorManager::MarshallStructIntoParcel(const PPDisplayAPIPayload &data,
android::Parcel *out_parcel) {
out_parcel->writeInt32(data.size);
out_parcel->writeInt32(INT32(data.size));
if (data.payload)
out_parcel->write(data.payload, data.size);
}
@@ -259,7 +259,8 @@ int HWCColorManager::CreateSolidFillLayers(HWCDisplay *hwc_display) {
// handle for solid fill layer with fd = -1.
private_handle_t *handle =
new private_handle_t(-1, 0, private_handle_t::PRIV_FLAGS_FRAMEBUFFER, BUFFER_TYPE_UI,
HAL_PIXEL_FORMAT_RGBA_8888, primary_width, primary_height);
HAL_PIXEL_FORMAT_RGBA_8888, INT32(primary_width),
INT32(primary_height));
if (!buf || !handle) {
DLOGE("Failed to allocate memory.");
@@ -284,17 +285,18 @@ int HWCColorManager::CreateSolidFillLayers(HWCDisplay *hwc_display) {
hwc_layer_1_t &layer = solid_fill_layers_->hwLayers[0];
hwc_rect_t solid_fill_rect = {
INT(solid_fill_params_.rect.x), INT(solid_fill_params_.rect.y),
INT(solid_fill_params_.rect.x + solid_fill_params_.rect.width),
INT(solid_fill_params_.rect.y + solid_fill_params_.rect.height),
INT(solid_fill_params_.rect.x),
INT(solid_fill_params_.rect.y),
solid_fill_params_.rect.x + INT(solid_fill_params_.rect.width),
solid_fill_params_.rect.y + INT(solid_fill_params_.rect.height),
};
layer.compositionType = HWC_FRAMEBUFFER;
layer.blending = HWC_BLENDING_PREMULT;
layer.sourceCropf.left = solid_fill_params_.rect.x;
layer.sourceCropf.top = solid_fill_params_.rect.y;
layer.sourceCropf.right = solid_fill_params_.rect.x + solid_fill_params_.rect.width;
layer.sourceCropf.bottom = solid_fill_params_.rect.y + solid_fill_params_.rect.height;
layer.sourceCropf.right = UINT32(solid_fill_params_.rect.x) + solid_fill_params_.rect.width;
layer.sourceCropf.bottom = UINT32(solid_fill_params_.rect.y) + solid_fill_params_.rect.height;
layer.acquireFenceFd = -1;
layer.releaseFenceFd = -1;
layer.flags = 0;
@@ -371,7 +373,7 @@ HWCQDCMModeManager *HWCQDCMModeManager::CreateQDCMModeMgr() {
}
// retrieve system GPU idle timeout value for later to recover.
mode_mgr->entry_timeout_ = HWCDebugHandler::GetIdleTimeoutMs();
mode_mgr->entry_timeout_ = UINT32(HWCDebugHandler::GetIdleTimeoutMs());
// acquire the binder handle to Android system PowerManager for later use.
android::sp<android::IBinder> binder =

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -35,12 +35,12 @@
namespace sdm {
HWCDebugHandler HWCDebugHandler::debug_handler_;
uint32_t HWCDebugHandler::debug_flags_ = 0x1;
uint32_t HWCDebugHandler::verbose_level_ = 0x0;
int32_t HWCDebugHandler::debug_flags_ = 0x1;
int32_t HWCDebugHandler::verbose_level_ = 0x0;
void HWCDebugHandler::DebugAll(bool enable, int verbose_level) {
if (enable) {
debug_flags_ = 0xFFFFFFFF;
debug_flags_ = 0x7FFFFFFF;
verbose_level_ = verbose_level;
} else {
debug_flags_ = 0x1; // kTagNone should always be printed.

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -65,8 +65,8 @@ class HWCDebugHandler : public DebugHandler {
private:
static HWCDebugHandler debug_handler_;
static uint32_t debug_flags_;
static uint32_t verbose_level_;
static int32_t debug_flags_;
static int32_t verbose_level_;
};
} // namespace sdm

View File

@@ -241,13 +241,13 @@ int HWCDisplay::GetDisplayAttributes(uint32_t config, const uint32_t *attributes
for (int i = 0; attributes[i] != HWC_DISPLAY_NO_ATTRIBUTE; i++) {
switch (attributes[i]) {
case HWC_DISPLAY_VSYNC_PERIOD:
values[i] = variable_config.vsync_period_ns;
values[i] = INT32(variable_config.vsync_period_ns);
break;
case HWC_DISPLAY_WIDTH:
values[i] = variable_config.x_pixels;
values[i] = INT32(variable_config.x_pixels);
break;
case HWC_DISPLAY_HEIGHT:
values[i] = variable_config.y_pixels;
values[i] = INT32(variable_config.y_pixels);
break;
case HWC_DISPLAY_DPI_X:
values[i] = INT32(variable_config.x_dpi * 1000.0f);
@@ -332,8 +332,8 @@ int HWCDisplay::AllocateLayerStack(hwc_display_contents_1_t *content_list) {
if (i < num_hw_layers) {
hwc_layer_1_t &hwc_layer = content_list->hwLayers[i];
num_visible_rects = INT32(hwc_layer.visibleRegionScreen.numRects);
num_dirty_rects = INT32(hwc_layer.surfaceDamage.numRects);
num_visible_rects = UINT32(hwc_layer.visibleRegionScreen.numRects);
num_dirty_rects = UINT32(hwc_layer.surfaceDamage.numRects);
}
// visible rectangles + dirty rectangles + blit rectangle
@@ -365,7 +365,7 @@ int HWCDisplay::AllocateLayerStack(hwc_display_contents_1_t *content_list) {
// Layer array address
layer_stack_ = LayerStack();
layer_stack_.layers = reinterpret_cast<Layer *>(current_address);
layer_stack_.layer_count = INT32(num_hw_layers + blit_target_count);
layer_stack_.layer_count = UINT32(num_hw_layers + blit_target_count);
current_address += (num_hw_layers + blit_target_count) * sizeof(Layer);
for (size_t i = 0; i < num_hw_layers + blit_target_count; i++) {
@@ -402,8 +402,8 @@ int HWCDisplay::PrepareLayerParams(hwc_layer_1_t *hwc_layer, Layer *layer) {
if (pvt_handle) {
layer_buffer->format = GetSDMFormat(pvt_handle->format, pvt_handle->flags);
layer_buffer->width = pvt_handle->width;
layer_buffer->height = pvt_handle->height;
layer_buffer->width = UINT32(pvt_handle->width);
layer_buffer->height = UINT32(pvt_handle->height);
if (SetMetaData(pvt_handle, layer) != kErrorNone) {
return -EINVAL;
@@ -452,8 +452,8 @@ int HWCDisplay::PrepareLayerParams(hwc_layer_1_t *hwc_layer, Layer *layer) {
AdrenoMemInfo::getInstance().getAlignedWidthAndHeight(INT(x_pixels), INT(y_pixels), format,
usage, aligned_width, aligned_height);
layer_buffer->width = aligned_width;
layer_buffer->height = aligned_height;
layer_buffer->width = UINT32(aligned_width);
layer_buffer->height = UINT32(aligned_height);
layer_buffer->format = GetSDMFormat(format, flags);
}
}
@@ -468,7 +468,7 @@ void HWCDisplay::CommitLayerParams(hwc_layer_1_t *hwc_layer, Layer *layer) {
if (pvt_handle) {
layer_buffer->planes[0].fd = pvt_handle->fd;
layer_buffer->planes[0].offset = pvt_handle->offset;
layer_buffer->planes[0].stride = pvt_handle->width;
layer_buffer->planes[0].stride = UINT32(pvt_handle->width);
}
// if swapinterval property is set to 0 then close and reset the acquireFd
@@ -560,8 +560,8 @@ int HWCDisplay::PrePrepareLayerStack(hwc_display_contents_1_t *content_list) {
// For solid fill, only dest rect need to be specified.
if (layer.flags.solid_fill) {
LayerBuffer *input_buffer = layer.input_buffer;
input_buffer->width = layer.dst_rect.right - layer.dst_rect.left;
input_buffer->height = layer.dst_rect.bottom - layer.dst_rect.top;
input_buffer->width = UINT32(layer.dst_rect.right - layer.dst_rect.left);
input_buffer->height = UINT32(layer.dst_rect.bottom - layer.dst_rect.top);
layer.src_rect.left = 0;
layer.src_rect.top = 0;
layer.src_rect.right = input_buffer->width;
@@ -573,7 +573,7 @@ int HWCDisplay::PrePrepareLayerStack(hwc_display_contents_1_t *content_list) {
layer.flags.updating = true;
if (num_hw_layers <= kMaxLayerCount) {
layer.flags.updating = IsLayerUpdating(content_list, i);
layer.flags.updating = IsLayerUpdating(content_list, INT32(i));
}
#ifdef QTI_BSP
if (hwc_layer.flags & HWC_SCREENSHOT_ANIMATOR_LAYER) {
@@ -838,7 +838,7 @@ bool HWCDisplay::NeedsFrameBufferRefresh(hwc_display_contents_1_t *content_list)
return true;
}
if ((layer.composition == kCompositionGPU) && IsLayerUpdating(content_list, i)) {
if ((layer.composition == kCompositionGPU) && IsLayerUpdating(content_list, INT32(i))) {
return true;
}
}
@@ -1358,15 +1358,15 @@ DisplayError HWCDisplay::SetMetaData(const private_handle_t *pvt_handle, Layer *
}
if (meta_data->operation & LINEAR_FORMAT) {
layer_buffer->format = GetSDMFormat(meta_data->linearFormat, 0);
layer_buffer->format = GetSDMFormat(INT32(meta_data->linearFormat), 0);
}
if (meta_data->operation & UPDATE_BUFFER_GEOMETRY) {
int actual_width = pvt_handle->width;
int actual_height = pvt_handle->height;
AdrenoMemInfo::getInstance().getAlignedWidthAndHeight(pvt_handle, actual_width, actual_height);
layer_buffer->width = actual_width;
layer_buffer->height = actual_height;
layer_buffer->width = UINT32(actual_width);
layer_buffer->height = UINT32(actual_height);
}
if (meta_data->operation & SET_SINGLE_BUFFER_MODE) {
@@ -1378,7 +1378,7 @@ DisplayError HWCDisplay::SetMetaData(const private_handle_t *pvt_handle, Layer *
if (meta_data->operation & S3D_FORMAT) {
std::map<int, LayerBufferS3DFormat>::iterator it =
s3d_format_hwc_to_sdm_.find(meta_data->s3dFormat);
s3d_format_hwc_to_sdm_.find(INT32(meta_data->s3dFormat));
if (it != s3d_format_hwc_to_sdm_.end()) {
layer->input_buffer->s3d_format = it->second;
} else {
@@ -1454,7 +1454,7 @@ void HWCDisplay::SetSecureDisplay(bool secure_display_active) {
}
int HWCDisplay::SetActiveDisplayConfig(int config) {
return display_intf_->SetActiveConfig(config) == kErrorNone ? 0 : -1;
return display_intf_->SetActiveConfig(UINT32(config)) == kErrorNone ? 0 : -1;
}
int HWCDisplay::GetActiveDisplayConfig(uint32_t *config) {
@@ -1466,7 +1466,7 @@ int HWCDisplay::GetDisplayConfigCount(uint32_t *count) {
}
int HWCDisplay::GetDisplayAttributesForConfig(int config, DisplayConfigVariableInfo *attributes) {
return display_intf_->GetConfig(config, attributes) == kErrorNone ? 0 : -1;
return display_intf_->GetConfig(UINT32(config), attributes) == kErrorNone ? 0 : -1;
}
bool HWCDisplay::SingleLayerUpdating(uint32_t app_layer_count) {

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -155,16 +155,20 @@ void HWCDisplayExternal::ApplyScanAdjustment(hwc_rect_t *display_frame) {
return;
}
uint32_t new_panel_width = panel_width * (1.0f - width_ratio);
uint32_t new_panel_height = panel_height * (1.0f - height_ratio);
uint32_t new_panel_width = panel_width * UINT32(1.0f - width_ratio);
uint32_t new_panel_height = panel_height * UINT32(1.0f - height_ratio);
int x_offset = INT((FLOAT(panel_width) * width_ratio) / 2.0f);
int y_offset = INT((FLOAT(panel_height) * height_ratio) / 2.0f);
display_frame->left = ((display_frame->left * new_panel_width) / panel_width) + x_offset;
display_frame->top = ((display_frame->top * new_panel_height) / panel_height) + y_offset;
display_frame->right = ((display_frame->right * new_panel_width) / panel_width) + x_offset;
display_frame->bottom = ((display_frame->bottom * new_panel_height) / panel_height) + y_offset;
display_frame->left = (display_frame->left * INT32(new_panel_width) / INT32(panel_width))
+ x_offset;
display_frame->top = (display_frame->top * INT32(new_panel_height) / INT32(panel_height)) +
y_offset;
display_frame->right = ((display_frame->right * INT32(new_panel_width)) / INT32(panel_width)) +
x_offset;
display_frame->bottom = ((display_frame->bottom * INT32(new_panel_height)) / INT32(panel_height))
+ y_offset;
}
void HWCDisplayExternal::SetSecureDisplay(bool secure_display_active) {

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -56,8 +56,8 @@ int HWCDisplayPrimary::Create(CoreInterface *core_intf, hwc_procs_t const **hwc_
HWCDebugHandler::Get()->GetProperty("sdm.fb_size_width", &width);
HWCDebugHandler::Get()->GetProperty("sdm.fb_size_height", &height);
if (width > 0 && height > 0) {
primary_width = width;
primary_height = height;
primary_width = UINT32(width);
primary_height = UINT32(height);
}
status = hwc_display_primary->SetFrameBufferResolution(primary_width, primary_height);
@@ -136,7 +136,7 @@ int HWCDisplayPrimary::Prepare(hwc_display_contents_1_t *content_list) {
return status;
}
bool one_updating_layer = SingleLayerUpdating(content_list->numHwLayers - 1);
bool one_updating_layer = SingleLayerUpdating(UINT32(content_list->numHwLayers - 1));
ToggleCPUHint(one_updating_layer);
uint32_t refresh_rate = GetOptimalRefreshRate(one_updating_layer);
@@ -200,23 +200,23 @@ int HWCDisplayPrimary::Commit(hwc_display_contents_1_t *content_list) {
int HWCDisplayPrimary::Perform(uint32_t operation, ...) {
va_list args;
va_start(args, operation);
int val = va_arg(args, uint32_t);
int val = va_arg(args, int32_t);
va_end(args);
switch (operation) {
case SET_METADATA_DYN_REFRESH_RATE:
SetMetaDataRefreshRateFlag(val);
break;
case SET_BINDER_DYN_REFRESH_RATE:
ForceRefreshRate(val);
ForceRefreshRate(UINT32(val));
break;
case SET_DISPLAY_MODE:
SetDisplayMode(val);
SetDisplayMode(UINT32(val));
break;
case SET_QDCM_SOLID_FILL_INFO:
SetQDCMSolidFillInfo(true, val);
SetQDCMSolidFillInfo(true, UINT32(val));
break;
case UNSET_QDCM_SOLID_FILL_INFO:
SetQDCMSolidFillInfo(false, val);
SetQDCMSolidFillInfo(false, UINT32(val));
break;
default:
DLOGW("Invalid operation %d", operation);

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -78,7 +78,7 @@ int HWCDisplayVirtual::Create(CoreInterface *core_intf, hwc_procs_t const **hwc_
int fb_width = fb_layer.displayFrame.right - fb_layer.displayFrame.left;
int fb_height = fb_layer.displayFrame.bottom - fb_layer.displayFrame.top;
status = hwc_display_virtual->SetFrameBufferResolution(fb_width, fb_height);
status = hwc_display_virtual->SetFrameBufferResolution(UINT32(fb_width), UINT32(fb_height));
if (status) {
Destroy(hwc_display_virtual);
@@ -222,11 +222,11 @@ int HWCDisplayVirtual::SetOutputSliceFromMetadata(hwc_display_contents_1_t *cont
int fbt_height = frame.bottom - frame.top;
const MetaData_t *meta_data = reinterpret_cast<MetaData_t *>(output_handle->base_metadata);
if (meta_data && meta_data->operation & UPDATE_BUFFER_GEOMETRY) {
variable_info.x_pixels = meta_data->bufferDim.sliceWidth;
variable_info.y_pixels = meta_data->bufferDim.sliceHeight;
variable_info.x_pixels = UINT32(meta_data->bufferDim.sliceWidth);
variable_info.y_pixels = UINT32(meta_data->bufferDim.sliceHeight);
} else {
variable_info.x_pixels = fbt_width;
variable_info.y_pixels = fbt_height;
variable_info.x_pixels = UINT32(fbt_width);
variable_info.y_pixels = UINT32(fbt_height);
}
// TODO(user): Need to get the framerate of primary display and update it.
variable_info.fps = 60;
@@ -272,8 +272,8 @@ int HWCDisplayVirtual::SetOutputBuffer(hwc_display_contents_1_t *content_list) {
AdrenoMemInfo::getInstance().getAlignedWidthAndHeight(output_handle, output_buffer_width,
output_buffer_height);
output_buffer_->width = output_buffer_width;
output_buffer_->height = output_buffer_height;
output_buffer_->width = UINT32(output_buffer_width);
output_buffer_->height = UINT32(output_buffer_height);
output_buffer_->flags.secure = 0;
output_buffer_->flags.video = 0;
@@ -285,7 +285,7 @@ int HWCDisplayVirtual::SetOutputBuffer(hwc_display_contents_1_t *content_list) {
// ToDo: Need to extend for non-RGB formats
output_buffer_->planes[0].fd = output_handle->fd;
output_buffer_->planes[0].offset = output_handle->offset;
output_buffer_->planes[0].stride = output_handle->width;
output_buffer_->planes[0].stride = UINT32(output_handle->width);
}
layer_stack_.output_buffer = output_buffer_;

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -475,7 +475,7 @@ void HWCSession::Dump(hwc_composer_device_1 *device, char *buffer, int length) {
return;
}
DumpInterface::GetDump(buffer, length);
DumpInterface::GetDump(buffer, UINT32(length));
}
int HWCSession::GetDisplayConfigs(hwc_composer_device_1 *device, int disp, uint32_t *configs,
@@ -859,7 +859,7 @@ android::status_t HWCSession::HandleGetActiveDisplayConfig(const android::Parcel
uint32_t config = 0;
error = hwc_display_[dpy]->GetActiveDisplayConfig(&config);
if (error == 0) {
output_parcel->writeInt32(config);
output_parcel->writeInt32(INT(config));
}
}
@@ -879,7 +879,7 @@ android::status_t HWCSession::HandleGetDisplayConfigCount(const android::Parcel
if (hwc_display_[dpy]) {
error = hwc_display_[dpy]->GetDisplayConfigCount(&count);
if (error == 0) {
output_parcel->writeInt32(count);
output_parcel->writeInt32(INT(count));
}
}
@@ -901,9 +901,9 @@ android::status_t HWCSession::HandleGetDisplayAttributesForConfig(const android:
if (hwc_display_[dpy]) {
error = hwc_display_[dpy]->GetDisplayAttributesForConfig(config, &attributes);
if (error == 0) {
output_parcel->writeInt32(attributes.vsync_period_ns);
output_parcel->writeInt32(attributes.x_pixels);
output_parcel->writeInt32(attributes.y_pixels);
output_parcel->writeInt32(INT(attributes.vsync_period_ns));
output_parcel->writeInt32(INT(attributes.x_pixels));
output_parcel->writeInt32(INT(attributes.y_pixels));
output_parcel->writeFloat(attributes.x_dpi);
output_parcel->writeFloat(attributes.y_dpi);
output_parcel->writeInt32(0); // Panel type, unsupported.
@@ -1274,7 +1274,7 @@ void HWCSession::ResetPanel() {
}
DLOGI("Restoring power mode on primary");
uint32_t mode = hwc_display_[HWC_DISPLAY_PRIMARY]->GetLastPowerMode();
int32_t mode = INT(hwc_display_[HWC_DISPLAY_PRIMARY]->GetLastPowerMode());
status = hwc_display_[HWC_DISPLAY_PRIMARY]->SetPowerMode(mode);
if (status) {
DLOGE("Setting power mode = %d on primary failed with error = %d", mode, status);
@@ -1336,7 +1336,7 @@ int HWCSession::HotPlugHandler(bool connected) {
// trigger screen refresh to ensure sufficient resources are available to process new
// new display connection.
hwc_procs_->invalidate(hwc_procs_);
int32_t vsync_period = GetVsyncPeriod(HWC_DISPLAY_PRIMARY);
uint32_t vsync_period = UINT32(GetVsyncPeriod(HWC_DISPLAY_PRIMARY));
usleep(vsync_period * 2 / 1000);
}
// notify client

View File

@@ -5,7 +5,8 @@ LOCAL_MODULE := libsdmutils
LOCAL_MODULE_TAGS := optional
LOCAL_C_INCLUDES := hardware/qcom/display/sdm/include/
LOCAL_CFLAGS := -Wno-missing-field-initializers \
-Wall -Werror -std=c++11 -fcolor-diagnostics\
-Wall -Werror -Wconversion \
-std=c++11 -fcolor-diagnostics\
-DLOG_TAG=\"SDM\"
LOCAL_CLANG := true
LOCAL_SRC_FILES := debug.cpp \

View File

@@ -1,5 +1,5 @@
/*
* Copyright (c) 2014 - 2015, The Linux Foundation. All rights reserved.
* Copyright (c) 2014 - 2016, The Linux Foundation. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are
@@ -52,11 +52,11 @@ int Debug::GetHDMIResolution() {
return value;
}
int Debug::GetIdleTimeoutMs() {
uint32_t Debug::GetIdleTimeoutMs() {
int value = IDLE_TIMEOUT_DEFAULT_MS;
debug_.debug_handler_->GetProperty("sdm.idle_time", &value);
return value;
return UINT32(value);
}
int Debug::GetBootAnimLayerCount() {