Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4992 Discussions

PXA270 Windows Mobile 2003 SE

cesarcastro
Beginner
548 Views
Hi,
I installed the vtune remote agent in my ipaq hx4700 but I get get it to run properly. I allways get an "Initialize failed" error. Any ideas on how to solve this?
Thanks,
Cesar
0 Kudos
5 Replies
cesarcastro
Beginner
548 Views
Anyone? Please... Could it be that the OS image in my device is not ready to use the PMU? If so, where could I find a proper image?
Thanks again
0 Kudos
Peter_W_Intel
Employee
548 Views
You get an "initialize failed" because you missedsome components(in your running target system) which are required to work with remote data collector agent. Please check your device OEM if they have enabledPMU for VTune Analyzer.
Here are steps to check if PMU does work(or you can reconfig it -assume you can rebuild OS image and burn it into flash)
1. Check if file pmudll.dll is in the OS image. That is, pmudll.dll should be under target device system directory "windows". If there is no pmudll.dll, go to the next step.
2. Check if the pmudll.dll is generated when building OS image. That is, pmudll.dll should be under "release" (or "debug") directory where the OS image is generated.If there is a pmudll.dll, check the file $BSP_DIRFILESPLATFORM.BIB to make sure pmudll.dll is added in the "MODULES" section. This can add the pmudll.dll into OS image. Another simple way is to copy the pmudll.dll to the target device windows directory. If there is no pmudll.dll, go to the next step.

3. Check the file $BSP_DIRdirs to make sure it contains "pmu ". If the "pmu " is added, go to the next step.

4. Check if the PMU support macros are set correctly in file $BSP_DIRSOURCES.CMN. Macro BSP_NOPMU should NOT be defined. Macro USING_PMU should be defined. If the macros are already set correctly, go to the next step.

5. Check files.

5.1 The following files and directories should be included in BSP:

$BSP_DIRincpmu.h

$BSP_DIRincpmudll.h

$BSP_DIRPMU directory

$BSP_DIRKERNELhalarmcpregXsc1.s (in some old BSP code) or $BSP_DIRXLLPSourcexllp_pmu.s (in new BSP code)

5.2 The following contents should be included in the files: (Please compare with Intel BSP corresponding code to make sure all the code embraced with macro USING_PMU is also included customer's BSP.)

$BSP_DIRPLATFORMXSC1BDKERNELHALoemioctl.c, function "OEMIoControl"

$BSP_DIRPLATFORMXSC1BDKERNEL HALARMintxsc1.c, function "OEMInterruptHandler"

Additional info helps to understand the mechanism of VTune PMU ISR

1. Code in pmudll.dll (a normal user space dll) will register the PMU ISR callback to kernel through KernelIoControl system call and OS will route to the OEMIoControl in oemioctl.c, and will save the callback address in kernel HAL global variable PVTuneInterrupt and turn on the Hardware PMU interrupt enable switch. Refer to "PMUInterruptCallback PVTuneInterrupt" in oemioctl.c.

2. When a PMU interrupt happens, the OEMInterruptHandler in intxsc1.c would be the common interrupt entry OS routed to, and corresponding case to INTC_PMU will handle the PMU interrupt. If PVTuneInterrupt is not null, ISR will execute this function pointer (VTune PMU ISR Callback).

3. VTune configures PMU partially though the pmudll provided interface which depends on the code in OEMIoControl USING_PMU embraced PMU configuration supported code.

0 Kudos
cesarcastro
Beginner
548 Views
Thanks for your answer. I guess my problem now is that I don't have the tools to build the OS image. Are the tools for that free? If not, maybe I can just"get an image that works"?
Thanks,
Cesar
0 Kudos
Peter_W_Intel
Employee
548 Views
You have to work on MS Windows Mobile 2003 Second Edition (in your case) with OEM's BSP to generate new OS image.
0 Kudos
David_A_Intel1
Employee
548 Views
Basically, unless you are developing the BSP, you need to request a BSP with PMU support enabled from the OEM, in this case, HP*/Compaq*. There is no way for you to build the BSP on your own. It must be supplied by the device manufacturer.
0 Kudos
Reply