Merge "sdm:fb: Add Mixer GC set functionality"

This commit is contained in:
Linux Build Service Account
2015-06-25 01:57:47 -07:00
committed by Gerrit - the friendly Code Review server
4 changed files with 17 additions and 2 deletions

View File

@@ -56,6 +56,7 @@ enum PPGlobalColorFeatureID {
kGlobalColorFeaturePcc,
kGlobalColorFeatureIgc,
kGlobalColorFeaturePgc,
kMixerColorFeatureGc,
kGlobalColorFeaturePaV2,
kGlobalColorFeatureDither,
kGlobalColorFeatureGamut,

View File

@@ -48,6 +48,7 @@ DisplayError (*HWColorManager::SetFeature[])(const PPFeatureInfo &, msmfb_mdp_pp
[kGlobalColorFeaturePcc] = &HWColorManager::SetPCC,
[kGlobalColorFeatureIgc] = &HWColorManager::SetIGC,
[kGlobalColorFeaturePgc] = &HWColorManager::SetPGC,
[kMixerColorFeatureGc] = &HWColorManager::SetMixerGC,
[kGlobalColorFeaturePaV2] = &HWColorManager::SetPAV2,
[kGlobalColorFeatureDither] = &HWColorManager::SetDither,
[kGlobalColorFeatureGamut] = &HWColorManager::SetGamut,
@@ -96,6 +97,19 @@ DisplayError HWColorManager::SetPGC(const PPFeatureInfo &feature, msmfb_mdp_pp *
return ret;
}
DisplayError HWColorManager::SetMixerGC(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params) {
DisplayError ret = kErrorNone;
kernel_params->op = mdp_op_lut_cfg;
kernel_params->data.lut_cfg_data.lut_type = mdp_lut_pgc;
kernel_params->data.lut_cfg_data.data.pgc_lut_data.version = feature.feature_version_;
kernel_params->data.lut_cfg_data.data.pgc_lut_data.block =
(MDP_LOGICAL_BLOCK_DISP_0 + feature.disp_id_) | MDSS_PP_LM_CFG;
kernel_params->data.lut_cfg_data.data.pgc_lut_data.flags = feature.enable_flags_;
kernel_params->data.lut_cfg_data.data.pgc_lut_data.cfg_payload = feature.GetConfigData();
return ret;
}
DisplayError HWColorManager::SetPAV2(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params) {
DisplayError ret = kErrorNone;

View File

@@ -42,6 +42,7 @@ class HWColorManager {
static DisplayError SetPCC(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);
static DisplayError SetIGC(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);
static DisplayError SetPGC(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);
static DisplayError SetMixerGC(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);
static DisplayError SetPAV2(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);
static DisplayError SetDither(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);
static DisplayError SetGamut(const PPFeatureInfo &feature, msmfb_mdp_pp *kernel_params);

View File

@@ -503,8 +503,7 @@ DisplayError HWPrimary::SetDisplayMode(const HWDisplayMode hw_display_mode) {
DisplayError HWPrimary::GetPPFeaturesVersion(PPFeatureVersion *vers) {
STRUCT_VAR(mdp_pp_feature_version, version);
// map from core domain to mdp FB driver domain.
uint32_t feature_id_mapping[kMaxNumPPFeatures] = { PCC, IGC, GC, PA, DITHER, GAMUT };
uint32_t feature_id_mapping[kMaxNumPPFeatures] = { PCC, IGC, GC, GC, PA, DITHER, GAMUT };
for (int i(0); i < kMaxNumPPFeatures; i++) {
version.pp_feature = feature_id_mapping[i];