navienginebsp/ne1_tb/specific/resmanpsl.cpp
changeset 4 5937e08d5244
parent 0 5de814552237
equal deleted inserted replaced
3:b41049883d87 4:5937e08d5244
    13 *
    13 *
    14 * Description:  
    14 * Description:  
    15 * ne1_tb\specific\resmanpsl.cpp
    15 * ne1_tb\specific\resmanpsl.cpp
    16 *
    16 *
    17 */
    17 */
    18 
       
    19 
    18 
    20 
    19 
    21 #include "resmanpsl.h"
    20 #include "resmanpsl.h"
    22 
    21 
    23 static DNE1_TBPowerResourceController TheController;
    22 static DNE1_TBPowerResourceController TheController;
    64 
    63 
    65 /** This function is called by PIL to register the static resources. 
    64 /** This function is called by PIL to register the static resources. 
    66     It creates an array to hold the static resource and also creates the resources and updates 
    65     It creates an array to hold the static resource and also creates the resources and updates 
    67 	in the array. 
    66 	in the array. 
    68 	*/
    67 	*/
       
    68 //C TSAI: this is to fit new virtual function prototype which uses RPointerArray
       
    69 TInt DNE1_TBPowerResourceController::DoRegisterStaticResources(RPointerArray<DStaticPowerResource>& aStaticResourceArray)
       
    70 	{
       
    71 	__KTRACE_OPT(KRESMANAGER, Kern::Printf("DNE1_TBPowerResourceController::DoRegisterStaticResources [SF4 new virtual function prototype]"));
       
    72 
       
    73 /** Macro definition to register resource */
       
    74 #define REGISTER_RESOURCE_RPOINTERARRAY(resource, resourceArray)						\
       
    75 	{																					\
       
    76 	pR = new resource();																\
       
    77 	if(!pR)																				\
       
    78 		{																				\
       
    79 		TUint resourceCount = (TUint) resourceArray.Count();							\
       
    80 		for(TUint count = 0; count < resourceCount; count++)							\
       
    81 			{																			\
       
    82 			delete resourceArray[count];												\
       
    83 			}																			\
       
    84 		resourceArray.Reset();															\
       
    85 		return KErrNoMemory;															\
       
    86 		}																				\
       
    87 	resourceArray.Append(pR);												\
       
    88 	}
       
    89 
       
    90 	DStaticPowerResource* pR = NULL;
       
    91 
       
    92 	//Note: RPointerArray itself only deal with pointers and doesn't delete objects when Close() or Reset()
       
    93 
       
    94 	/** Create I2S0 MCLK resource and add to the static resource array */
       
    95 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S0MclkResource, aStaticResourceArray);
       
    96 	/** Create I2S1 MCLK resource and add to the static resource array */
       
    97 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S1MclkResource, aStaticResourceArray);
       
    98 	/** Create I2S2 MCLK resource and add to the static resource array */
       
    99 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S2MclkResource, aStaticResourceArray);
       
   100 	/** Create I2S3 MCLK resource and add to the static resource array */
       
   101 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S3MclkResource, aStaticResourceArray);
       
   102 	/** Create I2S0 SCLK resource and add to the static resource array */
       
   103 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S0SclkResource, aStaticResourceArray);
       
   104 	/** Create I2S1 SCLK resource and add to the static resource array */
       
   105 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S1SclkResource, aStaticResourceArray);
       
   106 	/** Create I2S2 SCLK resource and add to the static resource array */
       
   107 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S2SclkResource, aStaticResourceArray);
       
   108 	/** Create I2S3 SCLK resource and add to the static resource array */
       
   109 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBI2S3SclkResource, aStaticResourceArray);
       
   110 	/** Create CSI0 clock resource and add to the static resource array */
       
   111 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBCSI0ClockResource, aStaticResourceArray);
       
   112 	/** Create CSI1 clock resource and add to the static resource array */
       
   113 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBCSI1ClockResource, aStaticResourceArray);
       
   114 	/** Create Display DCLK resource and add to the static resource array */
       
   115 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBDisplayDclkResource, aStaticResourceArray);
       
   116 	/** Create LCD resource and add to the static resource array */
       
   117 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBLcdResource, aStaticResourceArray);
       
   118 	/** Create Board Power resource and add to the static resource array */
       
   119 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBBoardPowerResource, aStaticResourceArray);
       
   120 	/** Create PCI clock mask enable resource and add to the static resource array */
       
   121 	REGISTER_RESOURCE_RPOINTERARRAY(DNE1_TBPCIClockResource, aStaticResourceArray);
       
   122 
       
   123 	return KErrNone;
       
   124 	}
       
   125 
       
   126 #if 0	//C TSAI: This is older function implementation (older virtual function prototype)
    69 TInt DNE1_TBPowerResourceController::DoRegisterStaticResources(DStaticPowerResource**& aStaticResourceArray, 
   127 TInt DNE1_TBPowerResourceController::DoRegisterStaticResources(DStaticPowerResource**& aStaticResourceArray, 
    70 																                 TUint16& aStaticResourceCount)
   128 																                 TUint16& aStaticResourceCount)
    71 	{
   129 	{
    72 	__KTRACE_OPT(KRESMANAGER, Kern::Printf("DNE1_TBPowerResourceController::DoRegisterStaticResources"));
   130 	__KTRACE_OPT(KRESMANAGER, Kern::Printf("DNE1_TBPowerResourceController::DoRegisterStaticResources"));
    73 	/** Create the static resource array */
   131 	/** Create the static resource array */
   120 	REGISTER_RESOURCE(DNE1_TBPCIClockResource, aStaticResourceArray, aStaticResourceCount);
   178 	REGISTER_RESOURCE(DNE1_TBPCIClockResource, aStaticResourceArray, aStaticResourceCount);
   121 
   179 
   122 	return KErrNone;
   180 	return KErrNone;
   123 	}
   181 	}
   124 
   182 
       
   183 #endif
   125 
   184 
       
   185