accessoryservices/pluggeddisplay/pluggeddisplayengine/src/edidhandler.cpp
branchRCL_3
changeset 7 1fc153c72b60
parent 5 1a73e8f1b64d
child 8 8d1d8440b626
--- a/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/edidhandler.cpp	Mon Mar 15 12:45:37 2010 +0200
+++ b/accessoryservices/pluggeddisplay/pluggeddisplayengine/src/edidhandler.cpp	Wed Mar 31 23:31:40 2010 +0300
@@ -1367,7 +1367,7 @@
 		{
 		TInt availableIndex = 0;
 		TBool found( EFalse );
-		TBool defaultCEAmode( EFalse );
+		TBool defaultCEAmode( EFalse ), ceaMode( EFalse );
 		supportedCount = supportedModes.Count();
 		INFO_1( "HDMI CONFIGS --- From HW -- Total : %d", supportedCount );
 
@@ -1383,6 +1383,7 @@
 					(TSupportedHdmiDviMode::ECea == supportedModes[ supportedIndex ].iStandardModeType) &&
 					(aHdmiConfigs[ availableIndex ].iCeaMode == supportedModes[ supportedIndex ].iStandardMode) )
 					{
+					ceaMode = ETrue;
 					found = ETrue;
 					if( aHdmiConfigs[ availableIndex].iCeaMode == KDefaultCEAMode )
 					    {
@@ -1441,15 +1442,20 @@
 		    {
 				TInt modecount = aHdmiConfigs.Count();
 				
-				INFO( "<<<<<<<<<<<<<<It is DVI connector>>>>>>>>>>>>>>" );
 				while( modecount-- )
 				  {
-					// Change it to DVI mode as it is existing in both Supported and available configurations
-					aHdmiConfigs[ modecount ].iConnector = TTvSettings::EDVI;
+
+				    if( aHdmiConfigs[ modecount ].iDmtMode && (EFalse == ceaMode) )
+				    	{
+						INFO( "<<<<<<<<<<<<<<It is DVI connector>>>>>>>>>>>>>>" );
+						
+					    // Change it to DVI mode as it is existing in both Supported and available configurations
+					    aHdmiConfigs[ modecount ].iConnector = TTvSettings::EDVI;
 					
-					// Version should be zeroed for non-HDMI
-					aHdmiConfigs[ modecount ].iTvHdmiVersion = 0;
-					aHdmiConfigs[ modecount ].iTvHdmiRevision = 0;			  
+					    // Version should be zeroed for non-HDMI
+					    aHdmiConfigs[ modecount ].iTvHdmiVersion = 0;
+					    aHdmiConfigs[ modecount ].iTvHdmiRevision = 0;
+				    	}
 				  }
 		    }