kerneltest/e32test/usb/t_usb_device/src/config.cpp
changeset 259 57b9594f5772
parent 0 a41df078684a
child 257 3e88ff8f41d5
--- a/kerneltest/e32test/usb/t_usb_device/src/config.cpp	Wed Aug 18 11:08:29 2010 +0300
+++ b/kerneltest/e32test/usb/t_usb_device/src/config.cpp	Thu Sep 02 21:54:16 2010 +0300
@@ -1,4 +1,4 @@
-// Copyright (c) 2000-2009 Nokia Corporation and/or its subsidiary(-ies).
+// Copyright (c) 2000-2010 Nokia Corporation and/or its subsidiary(-ies).
 // All rights reserved.
 // This component and the accompanying materials are made available
 // under the terms of the License "Eclipse Public License v1.0"
@@ -14,10 +14,14 @@
 // e32test/usb/t_usbdev/src/config.cpp
 // USB Test Program T_USB_DEVICE.
 // Reading and converting the XML configuration file.
-// 
+//
 //
 
 #include "general.h"
+#include "OstTraceDefinitions.h"
+#ifdef OST_TRACE_COMPILER_IN_USE
+#include "configTraces.h"
+#endif
 #include "config.h"
 
 _LIT(KCfgLDD,"LDD");
@@ -70,7 +74,7 @@
 
 static const TInt8 KMaxXMLNesting = 3;						// max 3 levels of xml nesting
 
-static const TPtrC xmlKeys[] = 
+static const TPtrC xmlKeys[] =
 	{
 	(TDesC&)KCfgLDD, (TDesC&)KCfgLDD1, (TDesC&)KCfgLDD2, (TDesC&)KCfgLDD3, (TDesC&)KCfgLDD4, (TDesC&)KCfgLDD5, (TDesC&)KCfgLDD6,
 	(TDesC&)KCfgLDD7, (TDesC&)KCfgLDD8, (TDesC&)KCfgLDD9, (TDesC&)KCfgLDD10, (TDesC&)KCfgLDD11, (TDesC&)KCfgLDD12, (TDesC&)KCfgLDD13,
@@ -99,7 +103,7 @@
 	ExiSerialNumber,
 	ExiOTG,
 	ExiInterface,					// xmlKeys index for Interface
-	ExiSetting,						
+	ExiSetting,
 	ExiClass,
 	ExiSubclass,
 	ExiProtocol,
@@ -118,13 +122,13 @@
 	ExiReadSize,
 	ExiLAST
 	};
-	
+
 // This array provides the index into xmlKeys for each level of xml key
 // the first index for level n being defined by xmlLevels[n]
 // and the last index for level n being defined by xmlLevels[n+1] - 1
 // this means this must have two more entries than the number of nesting levels
-// and the last entry must be the size of xmlKeys 
-static const TUint8 xmlLevels[] = 
+// and the last entry must be the size of xmlKeys
+static const TUint8 xmlLevels[] =
 	{
 	ExiLdd,ExiLdd+1,ExiSetting+1,ExiEndpoint+1,ExiLAST
 	};
@@ -186,7 +190,8 @@
 bool ProcessConfigFile (RFile aConfigFile,CConsoleBase* iConsole, LDDConfigPtr * LDDPtrPtr)
 	{
 	TUSB_PRINT ("Processing Configuration File");
-	
+	OstTrace0 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS, "Processing Configuration File");
+
 	TBuf8<100> configBuf;
 	TBuf<101> stringBuf;
 	bool done = false;
@@ -203,7 +208,7 @@
 	TInt levelKeys[KMaxXMLNesting+1];
 
 	* LDDPtrPtr = NULL;
-	ConfigPtrsPtr cpPtr = new ConfigPtrs (LDDPtrPtr); 			
+	ConfigPtrsPtr cpPtr = new ConfigPtrs (LDDPtrPtr);
 
 	while (!done && !error)
 		{
@@ -211,13 +216,14 @@
 		if (rStatus != KErrNone)
 			{
 			error = true;
-			TUSB_PRINT1("Config file error %d", rStatus);			
+			TUSB_PRINT1("Config file error %d", rStatus);
+			OstTrace1(TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP01, "Config file error %d", rStatus);
 			}
 		else
 			{
 			if (configBuf.Length() == 0)
 				{
-				done = true;			
+				done = true;
 				}
 			else
 				{
@@ -232,6 +238,7 @@
 						{
 						error = true;
 						TUSB_PRINT2 ("Config File Syntax Error at index %d of %s",i,stringBuf.PtrZ());
+						OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP02, "Config File Syntax Error at index %d of %S",i,stringBuf);
 						}
 					switch (state)
 						{
@@ -245,14 +252,15 @@
 									{
 									error = true;
 									TUSB_PRINT2 ("Config File Syntax Error at index %d of %s",i,stringBuf.PtrZ());
+									OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP03, "Config File Syntax Error at index %d of %S",i,stringBuf);
 									}
 							break;
-						
+
 						case EStartKey:
 							if (nextChar == '/')
 								{
 								state = EEndKey;
-								endkeyString.SetLength(0);															
+								endkeyString.SetLength(0);
 								}
 							else
 								{
@@ -262,7 +270,8 @@
 									if (level > KMaxXMLNesting)
 										{
 										error = true;
-										TUSB_PRINT1 ("Config File Too Many levels %s",stringBuf.PtrZ());								
+										TUSB_PRINT1 ("Config File Too Many levels %s",stringBuf.PtrZ());
+										OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP04, "Config File Too Many levels %S",stringBuf);
 										}
 									else
 										{
@@ -270,19 +279,25 @@
 										if (levelKeys[level] < 0)
 											{
 											error = true;
-											TUSB_PRINT1 ("Invalid XML key %s",keyString.PtrZ());																	
+											TUSB_PRINT1 ("Invalid XML key %s",keyString.PtrZ());
+											OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP05, "Invalid XML key %S",keyString);
 											}
 										else
 											{
 											if (CheckAttribute(iConsole,cpPtr,levelKeys[level],attributeString))
 												{
 												state = EValue;
-												TUSB_VERBOSE_PRINT2 ("Start key: %s level %d",keyString.PtrZ(),level);			
+												TUSB_VERBOSE_PRINT2 ("Start key: %s level %d",keyString.PtrZ(),level);
+												if(gVerbose)
+												    {
+												    OstTraceExt2 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP06, "Start key: %S level %d",keyString,level);
+												    }
 												}
 											else
 												{
-												error = true;	
-												TUSB_PRINT1 ("No attribute for XML key %s",keyString.PtrZ());																	
+												error = true;
+												TUSB_PRINT1 ("No attribute for XML key %s",keyString.PtrZ());
+												OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP07, "No attribute for XML key %S",keyString);
 												}
 											}
 										}
@@ -297,7 +312,8 @@
 										if (nextChar.IsSpace())
 											{
 											error = true;
-											TUSB_PRINT2 ("Config File Syntax Error at index %d of %s",i,stringBuf.PtrZ());					
+											TUSB_PRINT2 ("Config File Syntax Error at index %d of %s",i,stringBuf.PtrZ());
+											OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP08, "Config File Syntax Error at index %d of %S",i,stringBuf);
 											}
 										}
 									if (nextChar.IsSpace())
@@ -311,28 +327,34 @@
 									}
 								}
 							break;
-							
+
 						case EEndKey:
 							if (nextChar == '>')
 								{
 								if (levelKeys[level] != CheckXmlKey (endkeyString,level))
 									{
 									error = true;
-									TUSB_PRINT1 ("Invalid XML end key %s",endkeyString.PtrZ());																	
+									TUSB_PRINT1 ("Invalid XML end key %s",endkeyString.PtrZ());
+									OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP09, "Invalid XML end key %S",endkeyString);
 									}
 								else
-									{												
+									{
 									if (CheckValue(iConsole,cpPtr,levelKeys[level],valueString))
 										{
 										state = EEmpty;
 										TUSB_VERBOSE_PRINT2 ("End Key: %s value %s",endkeyString.PtrZ(),valueString.PtrZ());
+										if(gVerbose)
+										    {
+										    OstTraceExt2 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP10, "End Key: %S value %S",endkeyString,valueString);
+										    }
 										level--;
 										valueString.SetLength(0);
 										}
 									else
 										{
 										error = true;
-										TUSB_PRINT2 ("Incorrect value string %s for XML key %s",valueString.PtrZ(),endkeyString.PtrZ());	
+										TUSB_PRINT2 ("Incorrect value string %s for XML key %s",valueString.PtrZ(),endkeyString.PtrZ());
+										OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP11, "Incorrect value string %S for XML key %S",valueString,endkeyString);
 										}
 									}
 								}
@@ -340,13 +362,14 @@
 								{
 									error = true;
 									TUSB_PRINT2 ("Config File Syntax Error at index %d of %s",i,stringBuf.PtrZ());
+									OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP12, "Config File Syntax Error at index %d of %S",i,stringBuf);
 								}
 							else
 								{
 								endkeyString.Append(nextChar);
 								}
 							break;
-							
+
 						case EAttribute:
 							if (nextChar == '>')
 								{
@@ -354,7 +377,8 @@
 								if (level > KMaxXMLNesting)
 									{
 									error = true;
-									TUSB_PRINT1 ("Config File Too Many levels %s",stringBuf.PtrZ());								
+									TUSB_PRINT1 ("Config File Too Many levels %s",stringBuf.PtrZ());
+									OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP13, "Config File Too Many levels %s",stringBuf);
 									}
 								else
 									{
@@ -362,7 +386,8 @@
 									if (levelKeys[level] < 0)
 										{
 										error = true;
-										TUSB_PRINT1 ("Invalid XML key %s",keyString.PtrZ());																	
+										TUSB_PRINT1 ("Invalid XML key %s",keyString.PtrZ());
+										OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP14, "Invalid XML key %s",keyString);
 										}
 									else
 										{
@@ -370,11 +395,16 @@
 											{
 											state = EValue;
 											TUSB_VERBOSE_PRINT3 ("Start key: %s level %d attribute %s",keyString.PtrZ(),level,attributeString.PtrZ());
+											if(gVerbose)
+											    {
+											    OstTraceExt3 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP15, "Start key: %S level %d attribute %S",keyString,level,attributeString);
+											    }
 											}
 										else
 											{
-											error = true;	
-											TUSB_PRINT2 ("Incorrect attribute %s for XML key %s",attributeString.PtrZ(),keyString.PtrZ());																	
+											error = true;
+											TUSB_PRINT2 ("Incorrect attribute %s for XML key %s",attributeString.PtrZ(),keyString.PtrZ());
+											OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP16, "Incorrect attribute %s for XML key %s",attributeString,keyString);
 											}
 										}
 									}
@@ -384,7 +414,7 @@
 								attributeString.Append(nextChar);
 								}
 							break;
-							
+
 						case EValue:
 							if (nextChar == '<')
 								{
@@ -395,7 +425,7 @@
 								// Don't add any leading spaces
 								if (!nextChar.IsSpace() || valueString.Length() != 0)
 									{
-									valueString.Append(nextChar);						
+									valueString.Append(nextChar);
 									}
 								}
 							break;
@@ -404,14 +434,14 @@
 				}
 			}
 		}
-		
+
 	delete cpPtr;
 
 	return !error;
 	}
 
 
-	
+
 TBool CheckAttribute (CConsoleBase* iConsole, ConfigPtrsPtr cpPtr,TInt aKeyIndex, TPtrC aDes)
 	{
 	TBool retValue = ETrue;
@@ -436,10 +466,14 @@
 				if (attrib[0] == ((TDesC&)KQuote)[0] && attrib[attrib.Length()-1] == ((TDesC&)KQuote)[0])
 					{
 					TUSB_VERBOSE_PRINT1 ("LDD with attribute name %s",attrib.PtrZ());
-					cpPtr->iThisLDDPtr = new LDDConfig (attrib.MidTPtr(1,attrib.Length()-2));		
+					if(gVerbose)
+					    {
+					    OstTraceExt1 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP17, "LDD with attribute name %s",attrib);
+					    }
+					cpPtr->iThisLDDPtr = new LDDConfig (attrib.MidTPtr(1,attrib.Length()-2));
 					*cpPtr->iNextLDDPtrPtr = cpPtr->iThisLDDPtr;
 					cpPtr->iNextLDDPtrPtr = &(cpPtr->iThisLDDPtr->iPtrNext);
-					cpPtr->iNextIFPtrPtr = &(cpPtr->iThisLDDPtr->iIFPtr);			
+					cpPtr->iNextIFPtrPtr = &(cpPtr->iThisLDDPtr->iIFPtr);
 					}
 				else
 					retValue = EFalse;
@@ -449,7 +483,7 @@
 				retValue = EFalse;
 				}
 			break;
-			
+
 		//	level 1 index INTERFACE
 		case ExiInterface :
 			if (attrib.Find(KAttributeNumber) == 0)
@@ -462,31 +496,38 @@
 						if (cpPtr->iThisLDDPtr == NULL)
 							{
 							TUSB_PRINT ("No LDD container for interface");
-							retValue = EFalse;				
+							OstTrace0 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP18, "No LDD container for interface");
+							retValue = EFalse;
 							}
 						}
 					else
 						{
 						TUSB_PRINT2 ("Number conversion error %s %d",attrib.PtrZ(),ifNumber);
+						OstTraceExt2 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP19, "Number conversion error %S %u",attrib,ifNumber);
 						retValue = EFalse;
 						}
 					}
 				else
 					{
 					TUSB_PRINT1 ("Attribute number not in \"\" %s",attrib.PtrZ());
-					retValue = EFalse;	
+					OstTraceExt1 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP20, "Attribute number not in \"\" %s",attrib);
+					retValue = EFalse;
 					}
 				}
 			if (retValue)
 				{
 	 			TUSB_VERBOSE_PRINT1 ("Interface number %d",ifNumber);
+	 			if(gVerbose)
+	 			    {
+	 			    OstTrace1 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP21, "Interface number %d",ifNumber);
+	 			    }
 				cpPtr->iThisIFPtr = new IFConfig ((TUint8)ifNumber);
 				* cpPtr->iNextIFPtrPtr = cpPtr->iThisIFPtr;
 				cpPtr->iNextIFPtrPtr = &cpPtr->iThisIFPtr->iPtrNext;
 				cpPtr->iThisLDDPtr->iNumChannels++;
 				}
-			break;	
-			
+			break;
+
 
 		//	level 1 index Setting
 		case ExiSetting :
@@ -499,43 +540,48 @@
 				if (cpPtr->iThisLDDPtr == NULL)
 					{
 					TUSB_PRINT ("No LDD container for interface");
-					retValue = EFalse;				
+					OstTrace0 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP22, "No LDD container for interface");
+					retValue = EFalse;
 					}
 				else
 					{
-					TUSB_VERBOSE_PRINT ("Alternate Interface Setting");			
-					cpPtr->iThisIFPtr = new IFConfig (0);		
+					TUSB_VERBOSE_PRINT ("Alternate Interface Setting");
+					if(gVerbose)
+					    {
+					    OstTrace0 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP23, "Alternate Interface Setting");
+					    }
+					cpPtr->iThisIFPtr = new IFConfig (0);
 					* cpPtr->iNextIFPtrPtr = cpPtr->iThisIFPtr;
 					cpPtr->iNextIFPtrPtr = &cpPtr->iThisIFPtr->iPtrNext;
 					cpPtr->iThisIFPtr->iAlternateSetting = ETrue;
-					}					
+					}
 				}
 			break;
-			
+
 		//	level 2 index ENDPOINT
 		case ExiEndpoint :
 			typePos = attrib.Find(KAttributeType);
 			dirPos = attrib.Find(KAttributeDirection);
-			
+
 			if (typePos == KErrNotFound || dirPos == KErrNotFound)
 				{
 				retValue = EFalse;
 				}
-			else	
+			else
 				{
 				if (typePos < dirPos)
 					{
 					typePos += ((TDesC&)KAttributeType).Length();
 					typeLen = dirPos - typePos;
 					dirPos += ((TDesC&)KAttributeDirection).Length();
-					dirLen = attrib.Length() - dirPos;			
+					dirLen = attrib.Length() - dirPos;
 					}
 				else
 					{
-					dirPos += ((TDesC&)KAttributeDirection).Length();			
+					dirPos += ((TDesC&)KAttributeDirection).Length();
 					dirLen = typePos - dirPos;
 					typePos += ((TDesC&)KAttributeType).Length();
-					typeLen = attrib.Length() - typePos;			
+					typeLen = attrib.Length() - typePos;
 					}
 				TPtr attribPtr = attrib.MidTPtr(typePos,typeLen);
 				attribPtr.UpperCase();
@@ -558,7 +604,7 @@
 							}
 						else
 							{
-							retValue = EFalse;					
+							retValue = EFalse;
 							}
 						}
 					}
@@ -585,12 +631,17 @@
 					if (cpPtr->iThisIFPtr == NULL)
 						{
 						TUSB_PRINT ("No Interface container for Endpoint");
-						retValue = EFalse;				
+						OstTrace0 (TRACE_NORMAL, CONFIGPTRS_CONFIGPTRS_DUP24, "No Interface container for Endpoint");
+						retValue = EFalse;
 						}
 					else
 						{
 						TUint epIndex = cpPtr->iThisIFPtr->iInfoPtr->iTotalEndpointsUsed;
-						TUSB_VERBOSE_PRINT2 ("Endpoint with type %d %d",epType,epDir);			
+						TUSB_VERBOSE_PRINT2 ("Endpoint with type %d %d",epType,epDir);
+						if(gVerbose)
+						    {
+						    OstTraceExt2 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP25, "Endpoint with type %u %u",(TUint32)epType,(TUint32)epDir);
+						    }
 						cpPtr->iThisIFPtr->iInfoPtr->iEndpointData[epIndex].iType = epType;
 						cpPtr->iThisIFPtr->iInfoPtr->iEndpointData[epIndex].iDir = epDir;
 						#ifdef USB_SC
@@ -604,14 +655,14 @@
 					}
 				}
 			break;
-		
+
 		default :
 			if (aDes.Length() != 0)
 				{
 				retValue = EFalse;
 				}
 		}
-		
+
 	return retValue;
 	}
 
@@ -621,13 +672,17 @@
 	TBool boolValue;
 	TUint uintValue;
 	TInt epIndex = -1;
-	
+
 	if (cpPtr->iThisIFPtr != NULL)
 		{
 		epIndex = cpPtr->iThisIFPtr->iInfoPtr->iTotalEndpointsUsed -1;
 		}
-		
+
 	TUSB_VERBOSE_PRINT2 ("CheckValue keyIndex %d %s",aKeyIndex,aDes.Ptr());
+	if(gVerbose)
+	    {
+	    OstTraceExt2 (TRACE_VERBOSE, CONFIGPTRS_CONFIGPTRS_DUP26, "CheckValue keyIndex %d %s",aKeyIndex,aDes);
+	    }
 	switch (aKeyIndex)
 		{
 		case ExiLdd:						// xmlKeys index for LDD
@@ -638,19 +693,19 @@
 				retValue = EFalse;
 				}
 			break;
-			
+
 		case ExiEndpoints:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (uintValue == 0 || uintValue > 128)
 				{
-				retValue = EFalse;			
+				retValue = EFalse;
 				}
 			else
 				{
 				cpPtr->iThisLDDPtr->iNumEndpoints = uintValue;
 				}
 			break;
-			
+
 		case ExiSoftconnect:
 			retValue = TDesToBool (aDes, &boolValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -660,7 +715,7 @@
 				cpPtr->iThisLDDPtr->iSoftConnect = boolValue;
 				}
 			break;
-			
+
 		case ExiSelfPower:
 			retValue = TDesToBool (aDes, &boolValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -670,7 +725,7 @@
 				cpPtr->iThisLDDPtr->iSelfPower = boolValue;
 				}
 			break;
-			
+
 		case ExiRemoteWakeup:
 			retValue = TDesToBool (aDes, &boolValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -680,7 +735,7 @@
 				cpPtr->iThisLDDPtr->iRemoteWakeup = boolValue;
 				}
 			break;
-			
+
 		case ExiHighSpeed:
 			retValue = TDesToBool (aDes, &boolValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -690,7 +745,7 @@
 				cpPtr->iThisLDDPtr->iHighSpeed = boolValue;
 				}
 			break;
-			
+
 		case ExiFeatures:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -700,7 +755,7 @@
 				cpPtr->iThisLDDPtr->iFeatures = uintValue;
 				}
 			break;
-			
+
 		case ExiMaxPower:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisLDDPtr == NULL || uintValue > 50)
@@ -710,7 +765,7 @@
 				cpPtr->iThisLDDPtr->iMaxPower = uintValue;
 				}
 			break;
-			
+
 		case ExiEpStall:
 			retValue = TDesToBool (aDes, &boolValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -720,7 +775,7 @@
 				cpPtr->iThisLDDPtr->iEPStall = boolValue;
 				}
 			break;
-			
+
 		case ExiSpec:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -730,7 +785,7 @@
 				cpPtr->iThisLDDPtr->iSpec = uintValue;
 				}
 			break;
-			
+
 		case ExiVID:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -740,7 +795,7 @@
 				cpPtr->iThisLDDPtr->iVid = uintValue;
 				}
 			break;
-			
+
 		case ExiPID:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -750,7 +805,7 @@
 				cpPtr->iThisLDDPtr->iPid = uintValue;
 				}
 			break;
-			
+
 		case ExiRelease:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisLDDPtr == NULL)
@@ -760,7 +815,7 @@
 				cpPtr->iThisLDDPtr->iRelease = uintValue;
 				}
 			break;
-			
+
 		case ExiManufacturer:
 			cpPtr->iThisLDDPtr->iManufacturer = aDes.Alloc();
 			break;
@@ -775,7 +830,7 @@
 
 		case ExiOTG:
 			break;
-			
+
 		case ExiClass:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisIFPtr == NULL || uintValue > 0xFF)
@@ -785,7 +840,7 @@
 				cpPtr->iThisIFPtr->iInfoPtr->iClass.iClassNum = uintValue;
 				}
 			break;
-			
+
 		case ExiSubclass:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisIFPtr == NULL || uintValue > 0xFF)
@@ -795,7 +850,7 @@
 				cpPtr->iThisIFPtr->iInfoPtr->iClass.iSubClassNum = uintValue;
 				}
 			break;
-			
+
 		case ExiProtocol:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisIFPtr == NULL || uintValue > 0xFF)
@@ -805,15 +860,15 @@
 				cpPtr->iThisIFPtr->iInfoPtr->iClass.iProtocolNum = uintValue;
 				}
 			break;
-			
+
 		case ExiDescriptor:
 			cpPtr->iThisIFPtr->iInfoPtr->iString = aDes.Alloc();
 			break;
-			
+
 		case ExiBandwidthIn:
 			#ifdef USB_SC
 			retValue = EFalse;
-			#else			
+			#else
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisIFPtr == NULL || uintValue > 3)
 				retValue = EFalse;
@@ -837,11 +892,11 @@
 				}
 			#endif
 			break;
-			
+
 		case ExiBandwidthOut:
 			#ifdef USB_SC
 			retValue = EFalse;
-			#else			
+			#else
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (cpPtr->iThisIFPtr == NULL || uintValue > 3)
 				retValue = EFalse;
@@ -865,7 +920,7 @@
 				}
 			#endif
 			break;
-			
+
 		case ExiSize:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (epIndex < 0)
@@ -887,29 +942,29 @@
 								retValue = EFalse;
 							}
 						break;
-						
+
 					case KUsbEpTypeInterrupt :
 						if ((defaultIF && uintValue > 64) ||
 							(!cpPtr->iThisLDDPtr->iHighSpeed && uintValue > 64) ||
 							(!defaultIF && cpPtr->iThisLDDPtr->iHighSpeed && uintValue > 1024))
 							retValue = EFalse;
 						break;
-						
+
 					case KUsbEpTypeIsochronous :
 						if ((defaultIF && uintValue > 0) ||
 							(!defaultIF && !cpPtr->iThisLDDPtr->iHighSpeed && uintValue > 1023) ||
 							(!defaultIF && cpPtr->iThisLDDPtr->iHighSpeed && uintValue > 1024))
 							retValue = EFalse;
-						break;					
+						break;
 					}
 				if (retValue)
 					{
 					cpPtr->iThisIFPtr->iInfoPtr->iEndpointData[epIndex].iSize = uintValue;
 					}
 				}
-			
+
 			break;
-			
+
 		case ExiInterval:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (epIndex < 0)
@@ -921,16 +976,16 @@
 					case KUsbEpTypeBulk :
 						retValue = EFalse;
 						break;
-						
+
 					case KUsbEpTypeInterrupt :
 						if (uintValue < 1 || uintValue > 255)
 							retValue = EFalse;
 						break;
-						
+
 					case KUsbEpTypeIsochronous :
 						if (uintValue < 1 || uintValue > 16)
 							retValue = EFalse;
-						break;					
+						break;
 					}
 				if (retValue)
 					{
@@ -938,7 +993,7 @@
 					}
 				}
 			break;
-			
+
 		case ExiHSInterval:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (epIndex < 0 || !cpPtr->iThisLDDPtr->iHighSpeed)
@@ -951,16 +1006,16 @@
 						if (uintValue > 255)
 							retValue = EFalse;
 						break;
-						
+
 					case KUsbEpTypeInterrupt :
 						if (uintValue < 1 || uintValue > 16)
 							retValue = EFalse;
 						break;
-						
+
 					case KUsbEpTypeIsochronous :
 						if (uintValue < 1 || uintValue > 16)
 							retValue = EFalse;
-						break;					
+						break;
 					}
 				if (retValue)
 					{
@@ -968,7 +1023,7 @@
 					}
 				}
 			break;
-			
+
 		case ExiHSTransactions:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (epIndex < 0 || !cpPtr->iThisLDDPtr->iHighSpeed)
@@ -983,7 +1038,7 @@
 					}
 				}
 			break;
-			
+
 		case ExiDMA:
 			retValue = TDesToBool (aDes, &boolValue);
 			if (epIndex < 0)
@@ -993,7 +1048,7 @@
 				cpPtr->iThisIFPtr->iEpDMA[epIndex] = boolValue;
 				}
 			break;
-			
+
 		case ExiDoubleBuff:
 			#ifdef USB_SC
 			retValue = EFalse;
@@ -1007,7 +1062,7 @@
 				}
 			#endif
 			break;
-			
+
 		case ExiExtra:
 			retValue = TDesToTUint (aDes, &uintValue);
 			if (epIndex < 0)
@@ -1027,7 +1082,7 @@
 				{
 				cpPtr->iThisIFPtr->iInfoPtr->iEndpointData[epIndex].iBufferSize = uintValue;
 				}
-			#else			
+			#else
 			retValue = EFalse;
 			#endif
 			break;
@@ -1041,7 +1096,7 @@
 				{
 				cpPtr->iThisIFPtr->iInfoPtr->iEndpointData[epIndex].iReadSize = uintValue;
 				}
-			#else			
+			#else
 			retValue = EFalse;
 			#endif
 			break;
@@ -1049,11 +1104,11 @@
 
 	return retValue;
 	}
-	
+
 TInt CheckXmlKey (TPtrC aKey,TInt aLevel)
 	{
 	TInt keyIndex = -1;
-	
+
 	for (TInt i = xmlLevels[aLevel]; i < xmlLevels[aLevel+1]; i++)
 		{
 		if (aKey == xmlKeys[i])
@@ -1063,7 +1118,7 @@
 			}
 		}
 
-			
+
 	return keyIndex;
 	}
 
@@ -1075,13 +1130,13 @@
 	TBool conversionOK = ETrue;
 	TUint8 desIndex = 0;
 	* aValue = 0;
-	
+
 	if (numDes.LeftTPtr(((TDesC&)KHexPrefix).Length()) == KHexPrefix)
 		{
 		hexBase = ETrue;
-		desIndex = ((TDesC&)KHexPrefix).Length();	
+		desIndex = ((TDesC&)KHexPrefix).Length();
 		}
-		
+
 	while (desIndex < numDes.Length() && conversionOK)
 		{
 		if (hexBase)
@@ -1112,19 +1167,19 @@
 				else
 					{
 					conversionOK = EFalse;
-					* aValue = 222;				
-					}	
+					* aValue = 222;
+					}
 				}
 			else
 				{
-				conversionOK = EFalse;	
+				conversionOK = EFalse;
 				* aValue = 333;
 				}
-			
+
 			}
 		desIndex++;
 		}
-		
+
 	return conversionOK;
 	}
 
@@ -1134,7 +1189,7 @@
 	_LIT (KBoolN,"N");
 	TBool conversionOK = ETrue;
 	TBuf<50> boolDes = aDes;
-	
+
 	boolDes.TrimAll();
 	boolDes.UpperCase();
 	if (boolDes == KBoolY)
@@ -1149,9 +1204,9 @@
 			}
 		else
 			{
-			conversionOK = EFalse;	
+			conversionOK = EFalse;
 			}
 		}
-		
+
 	return conversionOK;
 	}