sdm: Fix Wconversion errors
Change-Id: Ica8ecd83e44126d7ef5d8595dcaf52f88aea6e70 CRs-fixed: 974030
This commit is contained in:
@@ -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();
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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]) {
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
@@ -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();
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
|
||||
@@ -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 =
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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_;
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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 \
|
||||
|
||||
@@ -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() {
|
||||
|
||||
Reference in New Issue
Block a user