diff -r f92a4f87e424 -r 012cc2ee6408 usbmgmt/usbmgr/usbman/server/SRC/CUsbOtg.cpp --- a/usbmgmt/usbmgr/usbman/server/SRC/CUsbOtg.cpp Tue Aug 31 17:01:47 2010 +0300 +++ b/usbmgmt/usbmgr/usbman/server/SRC/CUsbOtg.cpp Wed Sep 01 12:35:00 2010 +0100 @@ -1,5 +1,5 @@ /* -* Copyright (c) 2008-2010 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available * under the terms of "Eclipse Public License v1.0" @@ -21,22 +21,20 @@ @file */ -#include //Publish & Subscribe header #include "CUsbOtg.h" #include "cusbotgwatcher.h" #include "CUsbDevice.h" #include "musbotghostnotifyobserver.h" #include "CUsbServer.h" +#include //Publish & Subscribe header #include "usberrors.h" -#include "OstTraceDefinitions.h" -#ifdef OST_TRACE_COMPILER_IN_USE -#include "CUsbOtgTraces.h" -#endif - //Name used in call to User::LoadLogicalDevice/User::FreeLogicalDevice _LIT(KUsbOtgLDDName,"otgdi"); +#ifdef __FLOG_ACTIVE +_LIT8(KLogComponent, "USBSVR-OTG"); +#endif CUsbOtg* CUsbOtg::NewL() @@ -46,13 +44,12 @@ * @return A new CUsbOtg object */ { - OstTraceFunctionEntry0( CUSBOTG_NEWL_ENTRY ); + LOG_STATIC_FUNC_ENTRY CUsbOtg* self = new (ELeave) CUsbOtg(); CleanupStack::PushL(self); self->ConstructL(); CleanupStack::Pop(self); - OstTraceFunctionExit0( CUSBOTG_NEWL_EXIT ); return self; } @@ -62,7 +59,8 @@ * Destructor. */ { - OstTraceFunctionEntry0( CUSBOTG_CUSBOTG_DES_ENTRY ); + LOG_FUNC + // Cancel any outstanding asynchronous operation. Stop(); @@ -71,93 +69,76 @@ // the observers themselves. iObservers.Reset(); - OstTrace1( TRACE_NORMAL, CUSBOTG_CUSBOTG, "CUsbOtg::~CUsbOtg;iIdPinWatcher=%08x", (TUint32)iIdPinWatcher ); - + LOGTEXT2(_L8("about to stop Id-Pin watcher @ %08x"), (TUint32) iIdPinWatcher); if (iIdPinWatcher) { iIdPinWatcher->Cancel(); delete iIdPinWatcher; iIdPinWatcher = NULL; - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP1, "CUsbOtg::~CUsbOtg;deleted Id-Pin watcher" ); - + LOGTEXT(_L8("deleted Id-Pin watcher")); } - OstTrace1( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP2, "CUsbOtg::~CUsbOtg;about to stop Vbus watcher @ %08x", (TUint32)iVbusWatcher ); - + LOGTEXT2(_L8("about to stop Vbus watcher @ %08x"), (TUint32) iVbusWatcher); if (iVbusWatcher) { iVbusWatcher->Cancel(); delete iVbusWatcher; iVbusWatcher = NULL; - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP3, "CUsbOtg::~CUsbOtg;deleted Vbus watcher" ); - + LOGTEXT(_L8("deleted Vbus watcher")); } - OstTrace1( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP4, "CUsbOtg::~CUsbOtg;about to stop OTG State watcher @ %08x", (TUint32) iVbusWatcher ); - + LOGTEXT2(_L8("about to stop OTG State watcher @ %08x"), (TUint32) iVbusWatcher); if (iOtgStateWatcher) { iOtgStateWatcher->Cancel(); delete iOtgStateWatcher; iOtgStateWatcher = NULL; - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP5, "CUsbOtg::~CUsbOtg;deleted OTG State watcher" ); - + LOGTEXT(_L8("deleted OTG State watcher")); } - OstTrace1( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP6, "CUsbOtg::~CUsbOtg;about to stop OTG Event watcher @ %08x", (TUint32) iVbusWatcher ); - + LOGTEXT2(_L8("about to stop OTG Event watcher @ %08x"), (TUint32) iVbusWatcher); if (iOtgEventWatcher) { iOtgEventWatcher->Cancel(); delete iOtgEventWatcher; iOtgEventWatcher = NULL; - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP7, "CUsbOtg::~CUsbOtg;deleted OTG Event watcher" ); - + LOGTEXT(_L8("deleted OTG Event watcher")); } if (iRequestSessionWatcher) { delete iRequestSessionWatcher; - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP8, "CUsbOtg::~CUsbOtg;deleted Session Request watcher" ); - + LOGTEXT(_L8("deleted Session Request watcher")); } - OstTrace1( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP9, - "CUsbOtg::~CUsbOtg;about to stop Connection Idle watcher @ %08x", (TUint32)iOtgConnectionIdleWatcher ); - + LOGTEXT2(_L8("about to stop Connection Idle watcher @ %08x"), (TUint32)iOtgConnectionIdleWatcher); if (iOtgConnectionIdleWatcher) { iOtgConnectionIdleWatcher->Cancel(); delete iOtgConnectionIdleWatcher; iOtgConnectionIdleWatcher= NULL; - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP10, "CUsbOtg::~CUsbOtg;deleted Connection Idle watcher" ); - + LOGTEXT(_L8("deleted Connection Idle watcher")); } // Unload OTGDI components if it was ever started if ( iOtgDriver.Handle() ) { - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP11, "CUsbOtg::~CUsbOtg; Stopping stacks" ); - + LOGTEXT(_L8("Stopping stacks")); iOtgDriver.StopStacks(); iOtgDriver.Close(); } else { - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP12, "CUsbOtg::~CUsbOtg; No OTG Driver session was opened, nothing to do" ); - + LOGTEXT(_L8("No OTG Driver session was opened, nothing to do")); } - OstTrace0( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP13, "CUsbOtg::~CUsbOtg; Freeing logical device" ); - + LOGTEXT(_L8("Freeing logical device")); TInt err = User::FreeLogicalDevice(KUsbOtgLDDName); //Putting the LOGTEXT2 inside the if statement prevents a compiler //warning about err being unused in UREL builds. if(err) { - OstTrace1( TRACE_NORMAL, CUSBOTG_CUSBOTG_DUP14, "CUsbOtg::~CUsbOtg; User::FreeLogicalDevice returned %d", err ); - + LOGTEXT2(_L8(" User::FreeLogicalDevice returned %d"),err); } iCriticalSection.Close(); - OstTraceFunctionExit0( CUSBOTG_CUSBOTG_DES_EXIT ); } @@ -166,9 +147,7 @@ * Constructor. */ { - OstTraceFunctionEntry0( CUSBOTG_CUSBOTG_CONS_ENTRY ); - - OstTraceFunctionExit0( CUSBOTG_CUSBOTG_CONS_EXIT ); + LOG_FUNC } @@ -177,41 +156,31 @@ * Performs 2nd phase construction of the OTG object. */ { - OstTraceFunctionEntry0( CUSBOTG_CONSTRUCTL_ENTRY ); + LOG_FUNC - OstTrace0( TRACE_NORMAL, CUSBOTG_CONSTRUCTL, "CUsbOtg::ConstructL; About to open LDD" ); - + LOGTEXT(_L8("About to open LDD")); iLastError = User::LoadLogicalDevice(KUsbOtgLDDName); if ( (iLastError != KErrNone) && (iLastError != KErrAlreadyExists) ) { - if(iLastError < 0) - { - OstTraceExt2( TRACE_NORMAL, CUSBOTG_CONSTRUCTL_DUP1, "CUsbOtg::ConstructL; Error %d: Unable to load driver: %S", iLastError, KUsbOtgLDDName ); - User::Leave(iLastError); - } + LOGTEXT3(_L8("Error %d: Unable to load driver: %S"), iLastError, &KUsbOtgLDDName); + LEAVEIFERRORL(iLastError); } - OstTrace0( TRACE_NORMAL, CUSBOTG_CONSTRUCTL_DUP3, "CUsbOtg::ConstructL; About to open RUsbOtgDriver" ); - + + LOGTEXT(_L8("About to open RUsbOtgDriver")); iLastError = iOtgDriver.Open(); if ( (iLastError != KErrNone) && (iLastError != KErrAlreadyExists) ) { - if(iLastError < 0) - { - OstTrace1( TRACE_NORMAL, CUSBOTG_CONSTRUCTL_DUP4, "CUsbOtg::ConstructL; Error %d: Unable to open RUsbOtgDriver session", iLastError ); - User::Leave(iLastError); - } + LOGTEXT2(_L8("Error %d: Unable to open RUsbOtgDriver session"), iLastError); + LEAVEIFERRORL(iLastError); } - OstTrace0( TRACE_NORMAL, CUSBOTG_CONSTRUCTL_DUP2, "CUsbOtg::ConstructL; About to start OTG stacks" ); - + + LOGTEXT(_L8("About to start OTG stacks")); iLastError = iOtgDriver.StartStacks(); if (iLastError != KErrNone) { - if(iLastError < 0) - { - OstTrace1( TRACE_NORMAL, CUSBOTG_CONSTRUCTL_DUP5, "CUsbOtg::ConstructL; Error %d: Unable to open start OTG stacks", iLastError ); - User::Leave(iLastError); - } + LOGTEXT2(_L8("Error %d: Unable to open start OTG stacks"), iLastError); + LEAVEIFERRORL(iLastError); } // Request Otg notifications @@ -234,9 +203,7 @@ iCriticalSection.CreateLocal(EOwnerProcess); - OstTrace0( TRACE_NORMAL, CUSBOTG_CONSTRUCTL_DUP6, "CUsbOtg::ConstructL; UsbOtg::ConstructL() finished" ); - - OstTraceFunctionExit0( CUSBOTG_CONSTRUCTL_EXIT ); + LOGTEXT(_L8("UsbOtg::ConstructL() finished")); } void CUsbOtg::NotifyMessage(TInt aMessage) @@ -308,9 +275,7 @@ TInt otgEvent = TranslateOtgEvent(); if ( otgEvent == KErrBadName ) { - OstTrace1( TRACE_NORMAL, CUSBOTG_NOTIFYOTGEVENT, - "CUsbOtg::NotifyOtgEvent;OTG event %d was reported, but not propagated", (TInt)iOtgEvent ); - + LOGTEXT2(_L8("CUsbOtg::NotifyOtgEvent(): OTG event %d was reported, but not propagated"), (TInt) iOtgEvent); return; } @@ -328,16 +293,9 @@ * @param aObserver New Observer of the OTG events */ { - OstTraceFunctionEntry0( CUSBOTG_REGISTEROBSERVERL_ENTRY ); + LOG_FUNC - TInt err = iObservers.Append(&aObserver); - if(err < 0) - { - OstTrace1( TRACE_NORMAL, CUSBOTG_REGISTEROBSERVERL, "CUsbOtg::RegisterObserverL; iObservers.Append(&aObserver) error, Leave error=%d", err ); - User::Leave(err); - } - - OstTraceFunctionExit0( CUSBOTG_REGISTEROBSERVERL_EXIT ); + LEAVEIFERRORL(iObservers.Append(&aObserver)); } @@ -348,7 +306,7 @@ * @param aObserver The existing OTG events observer to be de-registered */ { - OstTraceFunctionEntry0( CUSBOTG_DEREGISTEROBSERVER_ENTRY ); + LOG_FUNC TInt index = iObservers.Find(&aObserver); @@ -356,7 +314,6 @@ { iObservers.Remove(index); } - OstTraceFunctionExit0( CUSBOTG_DEREGISTEROBSERVER_EXIT ); } @@ -366,11 +323,10 @@ * Reports errors and OTG events via observer interface. */ { - OstTraceFunctionEntry0( CUSBOTG_STARTL_ENTRY ); + LOG_FUNC iOtgWatcher = CUsbOtgWatcher::NewL(*this, iOtgDriver, iOtgMessage); iOtgWatcher->Start(); - OstTraceFunctionExit0( CUSBOTG_STARTL_EXIT ); } void CUsbOtg::Stop() @@ -378,44 +334,41 @@ * Stop the USB OTG events watcher */ { - OstTraceFunctionEntry0( CUSBOTG_STOP_ENTRY ); + LOG_FUNC - OstTrace1( TRACE_NORMAL, CUSBOTG_STOP, "CUsbOtg::Stop;about to stop OTG watcher @ %08x", (TUint32)iOtgWatcher ); - + LOGTEXT2(_L8("about to stop OTG watcher @ %08x"), (TUint32) iOtgWatcher); if (iOtgWatcher) { iOtgWatcher->Cancel(); delete iOtgWatcher; iOtgWatcher = NULL; - OstTrace0( TRACE_NORMAL, CUSBOTG_STOP_DUP1, "CUsbOtg::Stop" ); - + LOGTEXT(_L8("deleted OTG watcher")); } iLastError = KErrNone; - OstTraceFunctionExit0( CUSBOTG_STOP_EXIT ); } TInt CUsbOtg::BusRequest() { - OstTraceFunctionEntry0( CUSBOTG_BUSREQUEST_ENTRY ); + LOG_FUNC return iOtgDriver.BusRequest(); } TInt CUsbOtg::BusRespondSrp() { - OstTraceFunctionEntry0( CUSBOTG_BUSRESPONDSRP_ENTRY ); + LOG_FUNC return iOtgDriver.BusRespondSrp(); } TInt CUsbOtg::BusClearError() { - OstTraceFunctionEntry0( CUSBOTG_BUSCLEARERROR_ENTRY ); + LOG_FUNC return iOtgDriver.BusClearError(); } TInt CUsbOtg::BusDrop() { - OstTraceFunctionEntry0( CUSBOTG_BUSDROP_ENTRY ); + LOG_FUNC return iOtgDriver.BusDrop(); }