Re: [edk2] SSH access on to UEFI shell

2019-01-01 Thread prabin ca
Hi Bilbbet,

Thanks for sharing the link, I will contribute my changes also :)

> On 31-Dec-2018, at 10:27 PM, Blibbet  wrote:
> 
> There is an open request for such a project; your contribution would be
> appreciated!
> 
> https://github.com/tianocore/tianocore.github.io/wiki/Tasks#Port_OpenSSH_as_a_shell_application
> 
>> On 12/30/18 11:11 PM, prabin ca wrote:
>> Hi Team,
>> 
>> I would like to know is there any way to get UEFI shell remotely to my local 
>> setup over SSH/Telnet.
>> 
>> I have spend hours for searching, Please help me if there any framework or 
>> EFI protocol support for this. 
>> 
>> Any sample code also helpful me to start 
>> 
>> Thanks In advance 
>> Prabin CA
>> 
>> 
>> ___
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
>> 
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] SSH access on to UEFI shell

2018-12-30 Thread prabin ca
Hi Team,

I would like to know is there any way to get UEFI shell remotely to my local 
setup over SSH/Telnet.

I have spend hours for searching, Please help me if there any framework or EFI 
protocol support for this. 

Any sample code also helpful me to start 

Thanks In advance 
Prabin CA


___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Display Architecture and Bring Up in UEFI

2018-11-27 Thread prabin ca
Thanks Ruiyu, for confirming.

> On 27-Nov-2018, at 7:15 AM, Ni, Ruiyu  wrote:
> 
>> On 11/23/2018 5:19 PM, Laszlo Ersek wrote:
>>> On 11/23/18 07:27, prabin ca wrote:
>>> Hi Team,
>>> 
>>> I’m new to UEFI and display interface in UEFI. I would like to have deep 
>>> dive into how display is working in UEFI (display architecture) and how 
>>> display is have been bring up (porting of display panel in a any platform 
>>> in general ).
>>> 
>>> Please help me with sample codes and necessary documents. I would like to 
>>> get knowledge about display bring up and display architecture in UEFI
>> The driver writers' guide and the UEFI spec have relevant chapters on
>> this. I think it's best to start reading the former, at "23 Graphics
>> Driver Design Guidelines"; that part will give you the pointers to the
>> rest as well.
>> https://github.com/tianocore/tianocore.github.io/wiki/UEFI-Driver-Writer%27s-Guide
>> For a (hopefully educational) example, I refer you to
>> OvmfPkg/VirtioGpuDxe. In the series that first added this driver to
>> edk2, I managed to construct the driver in stages such that each stage
>> would build and even function, at the level expected from that stage. In
>> particular, commit a2a4fa66701d ("OvmfPkg/VirtioGpuDxe: introduce with
>> Component Name 2 and Driver Binding", 2016-09-01) could prove helpful,
>> as it adds the skeleton of the driver, mostly without VirtIo GPU specifics.
>> In addition, you might want to look into the generic
>>   MdeModulePkg/Universal/Console/GraphicsOutputDxe
>> driver. A platform may be able to incorporate that driver without any
>> changes, and control it by first producing the two HOBs in the PEI phase
>> that the driver consumes:
>>   MdePkg/Include/Guid/GraphicsInfoHob.h
>> (... Interestingly, due to the fact that this header file is under
>> MdePkg and not MdeModulePkg, I've just learned, from the related commit
>> messages, that the PEI phase has standardized graphics support,
>> described in the PI spec. From the following two commit messages:
>> - 697c6cf32693 ("MdePkg: Add PI 1.4 Graphics HOB and PPI header files",
>> 2015-04-28)
>> - 2af538fbf667 ("MdeModulePkg: Add GraphicsOutputDxe driver.", 2016-10-12)
>> it appears that enabling graphics support in the PEI phase could be a
>> *requirement* for using GraphicsOutputDxe in the DXE phase. That might
>> or might not match your use case, so perhaps it will prevent you from
>> using GraphicsOutputDxe. I'm not sure.)
> 
> Yes. GraphicsOutputDxe layers on the HOB produced in PEI phase to provide GOP 
> protocol.
> 
> 
>> Thanks
>> Laszlo
>> ___
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
> 
> 
> -- 
> Thanks,
> Ray
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Display Architecture and Bring Up in UEFI

2018-11-23 Thread prabin ca
Hi Laszlo,

Thanks for your support, let me look on this 

> On 23-Nov-2018, at 2:49 PM, Laszlo Ersek  wrote:
> 
>> On 11/23/18 07:27, prabin ca wrote:
>> Hi Team,
>> 
>> I’m new to UEFI and display interface in UEFI. I would like to have deep 
>> dive into how display is working in UEFI (display architecture) and how 
>> display is have been bring up (porting of display panel in a any platform in 
>> general ).
>> 
>> Please help me with sample codes and necessary documents. I would like to 
>> get knowledge about display bring up and display architecture in UEFI
> 
> The driver writers' guide and the UEFI spec have relevant chapters on
> this. I think it's best to start reading the former, at "23 Graphics
> Driver Design Guidelines"; that part will give you the pointers to the
> rest as well.
> 
> https://github.com/tianocore/tianocore.github.io/wiki/UEFI-Driver-Writer%27s-Guide
> 
> 
> For a (hopefully educational) example, I refer you to
> OvmfPkg/VirtioGpuDxe. In the series that first added this driver to
> edk2, I managed to construct the driver in stages such that each stage
> would build and even function, at the level expected from that stage. In
> particular, commit a2a4fa66701d ("OvmfPkg/VirtioGpuDxe: introduce with
> Component Name 2 and Driver Binding", 2016-09-01) could prove helpful,
> as it adds the skeleton of the driver, mostly without VirtIo GPU specifics.
> 
> 
> In addition, you might want to look into the generic
> 
>  MdeModulePkg/Universal/Console/GraphicsOutputDxe
> 
> driver. A platform may be able to incorporate that driver without any
> changes, and control it by first producing the two HOBs in the PEI phase
> that the driver consumes:
> 
>  MdePkg/Include/Guid/GraphicsInfoHob.h
> 
> (... Interestingly, due to the fact that this header file is under
> MdePkg and not MdeModulePkg, I've just learned, from the related commit
> messages, that the PEI phase has standardized graphics support,
> described in the PI spec. From the following two commit messages:
> 
> - 697c6cf32693 ("MdePkg: Add PI 1.4 Graphics HOB and PPI header files",
> 2015-04-28)
> 
> - 2af538fbf667 ("MdeModulePkg: Add GraphicsOutputDxe driver.", 2016-10-12)
> 
> it appears that enabling graphics support in the PEI phase could be a
> *requirement* for using GraphicsOutputDxe in the DXE phase. That might
> or might not match your use case, so perhaps it will prevent you from
> using GraphicsOutputDxe. I'm not sure.)
> 
> Thanks
> Laszlo
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] Display Architecture and Bring Up in UEFI

2018-11-22 Thread prabin ca
Hi Team,

I’m new to UEFI and display interface in UEFI. I would like to have deep dive 
into how display is working in UEFI (display architecture) and how display is 
have been bring up (porting of display panel in a any platform in general ).

Please help me with sample codes and necessary documents. I would like to get 
knowledge about display bring up and display architecture in UEFI

Thanks in advance
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Updating/adding video mode

2018-09-24 Thread prabin ca
Thanks Andrew,

For your reply. EDID overriding is the last solution for me. Any way thanks for 
pointing the EFI_EDID protocols.

> On 19-Sep-2018, at 11:01 PM, Andrew Fish  wrote:
> 
> Prabin,
> 
> There is not an easy answer to your question. 
> 1) What video resolution is available can be a function of what monitor is 
> plugged in to the graphics card. 
> 2) The monitor can publish an EDID that defines what resolutions the monitor 
> supports. EDID is a VESA standard. 
> 3) An EFI Platform can provide an EFI_EDID_OVERRIDE_PROTOCOL that can impact 
> the available video modes that get published. 
> 4) The GOP card will publish EDID information via the 
> EFI_EDID_DISCOVERED_PROTOCOL. 
> 
> As I mentioned the EDID data structure is defined by a VESA standard, but it 
> also has to be valid for what the monitor can support. Basically you can 
> override the EDID and tell the GOP card to does something the monitor can not 
> support. 
> 
> Some platforms use the ConSpliter and it produces a virtual GOP protocol that 
> will aggregate hardware GOPs. So for example if you system has an internal 
> panel and an external monitor installed you could end up with 2 HW GOP 
> protocols and a virtual GOP protocol that represents the ConSpliter. 
> 
> Thanks,
> 
> Andrew Fish 
> 
>> On Sep 15, 2018, at 10:37 PM, prabin ca  wrote:
>> 
>> Any points on this really helpful for me. 
>> 
>>> On 15-Sep-2018, at 6:46 AM, prabin ca  wrote:
>>> 
>>> Hi Team,
>>> I’m working with a platform having UHD (3840X2160as native resolution) 
>>> display screen. I have dump the video modes using EFI_GRAPHICS_PROTOCOL.
>>> 
>>> Following are the dump result 
>>> 
>>> Mode 0 : hRes = 3840 Vres=2160
>>> Mode 1 : hRes = 640  Vres = 480
>>> Mode 2 : hRes = 800 Vres = 600
>>> Mode 3 : hRes = 1024 Vres = 768
>>> Mode 4 : hRes = 1280 Vres = 1024
>>> Mode 5 : hRes = 1600 Vres = 1200
>>> Mode 6 : hRes = 1920 Vres = 1440 
>>> 
>>> In the supported video mode list, 1920X1080 is not there. Is there any way 
>>> to add support for this resolution. I have checked UEFI spec but didn’t 
>>> find any useful API/protocol 
>>> Any help really appreciate.
>> ___
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
> 
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Updating/adding video mode

2018-09-15 Thread prabin ca
Any points on this really helpful for me. 

> On 15-Sep-2018, at 6:46 AM, prabin ca  wrote:
> 
> Hi Team,
> I’m working with a platform having UHD (3840X2160as native resolution) 
> display screen. I have dump the video modes using EFI_GRAPHICS_PROTOCOL.
> 
> Following are the dump result 
> 
> Mode 0 : hRes = 3840 Vres=2160
> Mode 1 : hRes = 640  Vres = 480
> Mode 2 : hRes = 800 Vres = 600
> Mode 3 : hRes = 1024 Vres = 768
> Mode 4 : hRes = 1280 Vres = 1024
> Mode 5 : hRes = 1600 Vres = 1200
> Mode 6 : hRes = 1920 Vres = 1440 
> 
> In the supported video mode list, 1920X1080 is not there. Is there any way to 
> add support for this resolution. I have checked UEFI spec but didn’t find any 
> useful API/protocol 
> Any help really appreciate.
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] Updating/adding video mode

2018-09-14 Thread prabin ca
Hi Team,
I’m working with a platform having UHD (3840X2160as native resolution) display 
screen. I have dump the video modes using EFI_GRAPHICS_PROTOCOL.

Following are the dump result 

Mode 0 : hRes = 3840 Vres=2160
Mode 1 : hRes = 640  Vres = 480
Mode 2 : hRes = 800 Vres = 600
Mode 3 : hRes = 1024 Vres = 768
Mode 4 : hRes = 1280 Vres = 1024
Mode 5 : hRes = 1600 Vres = 1200
Mode 6 : hRes = 1920 Vres = 1440 

In the supported video mode list, 1920X1080 is not there. Is there any way to 
add support for this resolution. I have checked UEFI spec but didn’t find any 
useful API/protocol 
Any help really appreciate.
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Performance enabling of Event handler

2018-09-10 Thread prabin ca
Hi Team,

Thank it’s got worked on dp -t 0.

> On 07-Sep-2018, at 9:27 PM, prabin ca  wrote:
> 
> Hi 
> 
> Yes it is included in same module (both event handler and function handler), 
> and I’m not perf_start and perf_end only two times (one is by event handler 
> and one is by normal function handler).
> 
> And I’m trying to print result using DP.efi, it shows entry for normal 
> function.
> 
>> On 07-Sep-2018, at 8:46 AM, Bi, Dandan  wrote:
>> 
>> Hi Prabin,
>> 
>> The Performance logging for the normal functions handlers and event handlers 
>> should be the same.
>> Are the normal function calls and the event handler function calls you 
>> tested in the same module?
>> If not, please double check to make sure the performance library instance 
>> used correctly for each module.
>> 
>> 
>> Thanks,
>> Dandan
>> 
>> -Original Message-
>> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of 
>> prabin ca
>> Sent: Friday, September 7, 2018 10:30 AM
>> To: Laszlo Ersek 
>> Cc: Bi, Dandan ; edk2-devel@lists.01.org; 
>> af...@apple.com
>> Subject: Re: [edk2] Performance enabling of Event handler
>> 
>> Hi,
>> PerformancePkg is not working with event handlers, but it’s working with 
>> normal functions handlers. 
>> 
>>>> On 06-Sep-2018, at 3:28 PM, Laszlo Ersek  wrote:
>>>> 
>>>> On 09/06/18 08:10, prabin ca wrote:
>>>> Hi Team,
>>>> 
>>>> I’m used edk2 PerformancePkg for profiling cpu execution time taken by a 
>>>> event handler. Event is created successfully and event handler is also 
>>>> called successfully, but I can capture the performance of this event 
>>>> handler with PerformancePkg (by using perf_start and perf_end check 
>>>> points). This PerformancePkg is working fine with normal function calls.
>>> 
>>> Do you mean "can not", instead of "can"? (Sorry, I don't understand.)
>>> 
>>>> 
>>>> Please help me to enable PerformancePkg action on event handler also.
>>>> 
>>> 
>>> Hmmm, even with the suggested typo correction, I wouldn't know what to 
>>> suggest. Sorry!
>>> 
>>> Laszlo
>> ___
>> edk2-devel mailing list
>> edk2-devel@lists.01.org
>> https://lists.01.org/mailman/listinfo/edk2-devel
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Performance enabling of Event handler

2018-09-07 Thread prabin ca
Hi 

Yes it is included in same module (both event handler and function handler), 
and I’m not perf_start and perf_end only two times (one is by event handler and 
one is by normal function handler).

And I’m trying to print result using DP.efi, it shows entry for normal function.

> On 07-Sep-2018, at 8:46 AM, Bi, Dandan  wrote:
> 
> Hi Prabin,
> 
> The Performance logging for the normal functions handlers and event handlers 
> should be the same.
> Are the normal function calls and the event handler function calls you tested 
> in the same module?
> If not, please double check to make sure the performance library instance 
> used correctly for each module.
> 
> 
> Thanks,
> Dandan
> 
> -Original Message-
> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of prabin 
> ca
> Sent: Friday, September 7, 2018 10:30 AM
> To: Laszlo Ersek 
> Cc: Bi, Dandan ; edk2-devel@lists.01.org; af...@apple.com
> Subject: Re: [edk2] Performance enabling of Event handler
> 
> Hi,
> PerformancePkg is not working with event handlers, but it’s working with 
> normal functions handlers. 
> 
>>> On 06-Sep-2018, at 3:28 PM, Laszlo Ersek  wrote:
>>> 
>>> On 09/06/18 08:10, prabin ca wrote:
>>> Hi Team,
>>> 
>>> I’m used edk2 PerformancePkg for profiling cpu execution time taken by a 
>>> event handler. Event is created successfully and event handler is also 
>>> called successfully, but I can capture the performance of this event 
>>> handler with PerformancePkg (by using perf_start and perf_end check 
>>> points). This PerformancePkg is working fine with normal function calls.
>> 
>> Do you mean "can not", instead of "can"? (Sorry, I don't understand.)
>> 
>>> 
>>> Please help me to enable PerformancePkg action on event handler also.
>>> 
>> 
>> Hmmm, even with the suggested typo correction, I wouldn't know what to 
>> suggest. Sorry!
>> 
>> Laszlo
> ___
> edk2-devel mailing list
> edk2-devel@lists.01.org
> https://lists.01.org/mailman/listinfo/edk2-devel
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Performance enabling of Event handler

2018-09-06 Thread prabin ca
Hi,
PerformancePkg is not working with event handlers, but it’s working with normal 
functions handlers. 

> On 06-Sep-2018, at 3:28 PM, Laszlo Ersek  wrote:
> 
>> On 09/06/18 08:10, prabin ca wrote:
>> Hi Team,
>> 
>> I’m used edk2 PerformancePkg for profiling cpu execution time taken by a 
>> event handler. Event is created successfully and event handler is also 
>> called successfully, but I can capture the performance of this event handler 
>> with PerformancePkg (by using perf_start and perf_end check points). This 
>> PerformancePkg is working fine with normal function calls.
> 
> Do you mean "can not", instead of "can"? (Sorry, I don't understand.)
> 
>> 
>> Please help me to enable PerformancePkg action on event handler also.
>> 
> 
> Hmmm, even with the suggested typo correction, I wouldn't know what to
> suggest. Sorry!
> 
> Laszlo
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] Performance enabling of Event handler

2018-09-05 Thread prabin ca
Hi Team,

I’m used edk2 PerformancePkg for profiling cpu execution time taken by a event 
handler. Event is created successfully and event handler is also called 
successfully, but I can capture the performance of this event handler with 
PerformancePkg (by using perf_start and perf_end check points). This 
PerformancePkg is working fine with normal function calls.

Please help me to enable PerformancePkg action on event handler also.
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] PerformancePkg on multiple platform -

2018-08-06 Thread prabin ca
Hi Team

It’s got resolved now, thanks for kind support.
The link and documents mentioned help to resolve and understand the 
architecture as well 

Thanks for such kind support by Laszlo, Andrew and Dandan

> On 04-Aug-2018, at 3:41 PM, Bi, Dandan  wrote:
> 
> Hi Prabin,
> 
> Here is a simple introduction of current performance infrastructure in latest 
> Edk2 code base.
> Hope it can have some help when you enable it.
> https://github.com/dandanbi/edk2/wiki/Performance-Infrastructure
> 
> 
> Thanks,
> Dandan
> 
> -Original Message-
> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of prabin 
> ca
> Sent: Saturday, August 04, 2018 1:20 PM
> To: Andrew Fish 
> Cc: edk2-devel ; Laszlo Ersek 
> Subject: Re: [edk2] PerformancePkg on multiple platform -
> 
> Hi Andrew,
> 
> I have already enabled that PCD in my DSC file, because of that its working 
> in some platform.
> 
> What I'm doing is building my DP.efi and DXE driver from that dsc file and 
> testing it from UEFI shell.
> 
> thanks for your help as well.
> 
>> On Sat, Aug 4, 2018 at 12:08 AM, Andrew Fish  wrote:
>> 
>> Prabin,
>> 
>> There is a PCD setting to configure performance collection.
>> 
>> PCDs are defined in the .DEC file and it looks like the default is 
>> zero and that means disabled.
>> MdePkg/MdePkg.dec
>> ...
>>  ## The mask is used to control PerformanceLib behavior.
>>  #  BIT0 - Enable Performance Measurement.
>>  # @Prompt Performance Measurement Property.
>>  # @Expression  0x8002 | (gEfiMdePkgTokenSpaceGuid.
>> PcdPerformanceLibraryPropertyMask & 0xFE) == 0
>>  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyM
>> ask|0|UINT8|0x0009
>> 
>> If you search the code you will see some platforms enabling 
>> performance measurement in their DSC files.
>> 
>> /Volumes/Case/UDK2018(vUDK2018)>git grep gEfiMdePkgTokenSpaceGuid.
>> PcdPerformanceLibraryPropertyMask -- *.dsc
>> BeagleBoardPkg/BeagleBoardPkg.dsc:272:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|1
>> EmbeddedPkg/EmbeddedPkg.dsc:175:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0
>> QuarkPlatformPkg/Quark.dsc:373:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> QuarkPlatformPkg/Quark.dsc:376:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x00
>> QuarkPlatformPkg/QuarkMin.dsc:334:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> QuarkPlatformPkg/QuarkMin.dsc:337:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x00
>> Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc:682:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> Vlv2TbltDevicePkg/PlatformPkgIA32.dsc:682:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> Vlv2TbltDevicePkg/PlatformPkgX64.dsc:682:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> 
>> So I'd check that 1st. If that does not work I recommend adding 
>> -report-file=build.log to your build command. You can look at the 
>> given driver/app you care about and see what the PCD settings are and 
>> which instance of the PerformanceLib got linked.
>> 
>> Thanks,
>> 
>> Andrew Fish
>> 
>> On Aug 3, 2018, at 11:17 AM, Laszlo Ersek  wrote:
>> 
>> Hi Prabin,
>> 
>> On 08/03/18 09:29, prabin ca wrote:
>> 
>> Hi Team,
>> 
>> I’m new to uefi and edk. Currently I’m trying to get performance of my 
>> dxe driver using PerformancePkg of EDK source code.
>> 
>> I’m using perf_start and perf_end T respected check points, it’s hot 
>> build and tested well in 2/3 platform. It’s giving proper response.
>> 
>> But when I’m Checking with multiple platform, in some of platforms 
>> it’s not working and got hang in uefi she’ll itself.
>> 
>> Please help me to resolve asap, it will be really helpful.
>> 
>> 
>> I can only give you some hints, because thus far I have also failed to 
>> figure out how performance measurements should be enabled for a 
>> platform from scratch.
>> 
>> Earlier I thought that an interested platform should include modules 
>> from PerformancePkg. I got some good results that way; however:
>> 
>> - it wouldn't work for AARCH64, and so I filed  
>> <https://bugzilla.tianocore.org/show_bug.cgi?id=679>
>> 
>> - ultimately PerformancePkg was removed in commit 922c1e94e4bb  
>> completely. (And for that reason I now closed TianoCore#679 as
>

Re: [edk2] PerformancePkg on multiple platform -

2018-08-04 Thread prabin ca
Hi Dandan,

This is also valuable input from your side, let me check this also.

Thanks for kind support

> On 04-Aug-2018, at 3:41 PM, Bi, Dandan  wrote:
> 
> Hi Prabin,
> 
> Here is a simple introduction of current performance infrastructure in latest 
> Edk2 code base.
> Hope it can have some help when you enable it.
> https://github.com/dandanbi/edk2/wiki/Performance-Infrastructure
> 
> 
> Thanks,
> Dandan
> 
> -Original Message-
> From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf Of prabin 
> ca
> Sent: Saturday, August 04, 2018 1:20 PM
> To: Andrew Fish 
> Cc: edk2-devel ; Laszlo Ersek 
> Subject: Re: [edk2] PerformancePkg on multiple platform -
> 
> Hi Andrew,
> 
> I have already enabled that PCD in my DSC file, because of that its working 
> in some platform.
> 
> What I'm doing is building my DP.efi and DXE driver from that dsc file and 
> testing it from UEFI shell.
> 
> thanks for your help as well.
> 
>> On Sat, Aug 4, 2018 at 12:08 AM, Andrew Fish  wrote:
>> 
>> Prabin,
>> 
>> There is a PCD setting to configure performance collection.
>> 
>> PCDs are defined in the .DEC file and it looks like the default is 
>> zero and that means disabled.
>> MdePkg/MdePkg.dec
>> ...
>>  ## The mask is used to control PerformanceLib behavior.
>>  #  BIT0 - Enable Performance Measurement.
>>  # @Prompt Performance Measurement Property.
>>  # @Expression  0x8002 | (gEfiMdePkgTokenSpaceGuid.
>> PcdPerformanceLibraryPropertyMask & 0xFE) == 0
>>  gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyM
>> ask|0|UINT8|0x0009
>> 
>> If you search the code you will see some platforms enabling 
>> performance measurement in their DSC files.
>> 
>> /Volumes/Case/UDK2018(vUDK2018)>git grep gEfiMdePkgTokenSpaceGuid.
>> PcdPerformanceLibraryPropertyMask -- *.dsc
>> BeagleBoardPkg/BeagleBoardPkg.dsc:272:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|1
>> EmbeddedPkg/EmbeddedPkg.dsc:175:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0
>> QuarkPlatformPkg/Quark.dsc:373:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> QuarkPlatformPkg/Quark.dsc:376:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x00
>> QuarkPlatformPkg/QuarkMin.dsc:334:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> QuarkPlatformPkg/QuarkMin.dsc:337:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x00
>> Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc:682:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> Vlv2TbltDevicePkg/PlatformPkgIA32.dsc:682:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> Vlv2TbltDevicePkg/PlatformPkgX64.dsc:682:
>> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>> 
>> So I'd check that 1st. If that does not work I recommend adding 
>> -report-file=build.log to your build command. You can look at the 
>> given driver/app you care about and see what the PCD settings are and 
>> which instance of the PerformanceLib got linked.
>> 
>> Thanks,
>> 
>> Andrew Fish
>> 
>> On Aug 3, 2018, at 11:17 AM, Laszlo Ersek  wrote:
>> 
>> Hi Prabin,
>> 
>> On 08/03/18 09:29, prabin ca wrote:
>> 
>> Hi Team,
>> 
>> I’m new to uefi and edk. Currently I’m trying to get performance of my 
>> dxe driver using PerformancePkg of EDK source code.
>> 
>> I’m using perf_start and perf_end T respected check points, it’s hot 
>> build and tested well in 2/3 platform. It’s giving proper response.
>> 
>> But when I’m Checking with multiple platform, in some of platforms 
>> it’s not working and got hang in uefi she’ll itself.
>> 
>> Please help me to resolve asap, it will be really helpful.
>> 
>> 
>> I can only give you some hints, because thus far I have also failed to 
>> figure out how performance measurements should be enabled for a 
>> platform from scratch.
>> 
>> Earlier I thought that an interested platform should include modules 
>> from PerformancePkg. I got some good results that way; however:
>> 
>> - it wouldn't work for AARCH64, and so I filed  
>> <https://bugzilla.tianocore.org/show_bug.cgi?id=679>
>> 
>> - ultimately PerformancePkg was removed in commit 922c1e94e4bb  
>> completely. (And for that reason I now closed TianoCore#679 as
>> WONTFIX.)
>> 
>> Commit 922c1e94e4bb doesn't really give pointers for enablin

Re: [edk2] PerformancePkg on multiple platform -

2018-08-03 Thread prabin ca
Hi Andrew,

I have already enabled that PCD in my DSC file, because of that its working
in some platform.

What I'm doing is building my DP.efi and DXE driver from that dsc file and
testing it from UEFI shell.

thanks for your help as well.

On Sat, Aug 4, 2018 at 12:08 AM, Andrew Fish  wrote:

> Prabin,
>
> There is a PCD setting to configure performance collection.
>
> PCDs are defined in the .DEC file and it looks like the default is zero
> and that means disabled.
> MdePkg/MdePkg.dec
> ...
>   ## The mask is used to control PerformanceLib behavior.
>   #  BIT0 - Enable Performance Measurement.
>   # @Prompt Performance Measurement Property.
>   # @Expression  0x8002 | (gEfiMdePkgTokenSpaceGuid.
> PcdPerformanceLibraryPropertyMask & 0xFE) == 0
>   gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyM
> ask|0|UINT8|0x0009
>
> If you search the code you will see some platforms enabling performance
> measurement in their DSC files.
>
> /Volumes/Case/UDK2018(vUDK2018)>git grep gEfiMdePkgTokenSpaceGuid.
> PcdPerformanceLibraryPropertyMask -- *.dsc
> BeagleBoardPkg/BeagleBoardPkg.dsc:272:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|1
> EmbeddedPkg/EmbeddedPkg.dsc:175:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0
> QuarkPlatformPkg/Quark.dsc:373:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
> QuarkPlatformPkg/Quark.dsc:376:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x00
> QuarkPlatformPkg/QuarkMin.dsc:334:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
> QuarkPlatformPkg/QuarkMin.dsc:337:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x00
> Vlv2TbltDevicePkg/PlatformPkgGccX64.dsc:682:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
> Vlv2TbltDevicePkg/PlatformPkgIA32.dsc:682:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
> Vlv2TbltDevicePkg/PlatformPkgX64.dsc:682:
> *gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask*|0x1
>
> So I'd check that 1st. If that does not work I recommend
> adding -report-file=build.log to your build command. You can look at the
> given driver/app you care about and see what the PCD settings are and which
> instance of the PerformanceLib got linked.
>
> Thanks,
>
> Andrew Fish
>
> On Aug 3, 2018, at 11:17 AM, Laszlo Ersek  wrote:
>
> Hi Prabin,
>
> On 08/03/18 09:29, prabin ca wrote:
>
> Hi Team,
>
> I’m new to uefi and edk. Currently I’m trying to get performance of my dxe
> driver using PerformancePkg of EDK source code.
>
> I’m using perf_start and perf_end T respected check points, it’s hot build
> and tested well in 2/3 platform. It’s giving proper response.
>
> But when I’m Checking with multiple platform, in some of platforms it’s
> not working and got hang in uefi she’ll itself.
>
> Please help me to resolve asap, it will be really helpful.
>
>
> I can only give you some hints, because thus far I have also failed to
> figure out how performance measurements should be enabled for a platform
> from scratch.
>
> Earlier I thought that an interested platform should include modules
> from PerformancePkg. I got some good results that way; however:
>
> - it wouldn't work for AARCH64, and so I filed
>  <https://bugzilla.tianocore.org/show_bug.cgi?id=679>
>
> - ultimately PerformancePkg was removed in commit 922c1e94e4bb
>  completely. (And for that reason I now closed TianoCore#679 as
>  WONTFIX.)
>
> Commit 922c1e94e4bb doesn't really give pointers for enabling
> performance measurements in a platform -- it refers the user to the DP
> shell command instead of the standalone DP application, but that's only
> for displaying the stats, not for recording them.
>
> One document where I found information is the Intel whitepaper
>
>  A Tour Beyond BIOS
>  Implementing Profiling in with EDK II
>
> (just google it). "Part III – Performance Profile" is relevant.
>
> The first section of that talks about enabling ACPI FPDT (ACPI Firmware
> Performance Data Table) support in edk2, for exposing firmware
> performance data to the OS. Again, that's not about *recording* the stats.
>
> The second section of the same chapter seems to describe how stats can
> be recorded however. AIUI, the DXE Core can provide the PERFORMANCE[_EX]
> protocols, if the DxeCorePerformanceLib instance is linked into it by
> the platform DSC file. In turn DXE modules can send measurements to the
> protocol via the PerformanceLib APIs / DxePerformanceLib instance.
>
> In fact, the relevant library INF files have good documentation, we just
> have to know what to look at.
>
&

Re: [edk2] PerformancePkg on multiple platform

2018-08-03 Thread prabin ca
Hi Laszlo,

Thank you for your valid input, Its really help full for me. I will look in
the " A Tour Beyond BIOSImplementing Profiling in with EDK II" with
your points.

have a nice day.

On Fri, Aug 3, 2018 at 11:47 PM, Laszlo Ersek  wrote:

> Hi Prabin,
>
> On 08/03/18 09:29, prabin ca wrote:
> > Hi Team,
> >
> > I’m new to uefi and edk. Currently I’m trying to get performance of my
> dxe driver using PerformancePkg of EDK source code.
> >
> > I’m using perf_start and perf_end T respected check points, it’s hot
> build and tested well in 2/3 platform. It’s giving proper response.
> >
> > But when I’m Checking with multiple platform, in some of platforms it’s
> not working and got hang in uefi she’ll itself.
> >
> > Please help me to resolve asap, it will be really helpful.
>
> I can only give you some hints, because thus far I have also failed to
> figure out how performance measurements should be enabled for a platform
> from scratch.
>
> Earlier I thought that an interested platform should include modules
> from PerformancePkg. I got some good results that way; however:
>
> - it wouldn't work for AARCH64, and so I filed
>   <https://bugzilla.tianocore.org/show_bug.cgi?id=679>
>
> - ultimately PerformancePkg was removed in commit 922c1e94e4bb
>   completely. (And for that reason I now closed TianoCore#679 as
>   WONTFIX.)
>
> Commit 922c1e94e4bb doesn't really give pointers for enabling
> performance measurements in a platform -- it refers the user to the DP
> shell command instead of the standalone DP application, but that's only
> for displaying the stats, not for recording them.
>
> One document where I found information is the Intel whitepaper
>
>   A Tour Beyond BIOS
>   Implementing Profiling in with EDK II
>
> (just google it). "Part III – Performance Profile" is relevant.
>
> The first section of that talks about enabling ACPI FPDT (ACPI Firmware
> Performance Data Table) support in edk2, for exposing firmware
> performance data to the OS. Again, that's not about *recording* the stats.
>
> The second section of the same chapter seems to describe how stats can
> be recorded however. AIUI, the DXE Core can provide the PERFORMANCE[_EX]
> protocols, if the DxeCorePerformanceLib instance is linked into it by
> the platform DSC file. In turn DXE modules can send measurements to the
> protocol via the PerformanceLib APIs / DxePerformanceLib instance.
>
> In fact, the relevant library INF files have good documentation, we just
> have to know what to look at.
>
> Recording stats in the PEI phase, via HOBs:
> - MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
>
> Recording stats in the DXE phase (protocol provider and consumer):
> - MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerformanceLib.inf
> - MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
>
> Recording stats in SMM (protocol provider and consumer):
> - MdeModulePkg/Library/SmmCorePerformanceLib/SmmCorePerformanceLib.inf
> - MdeModulePkg/Library/SmmPerformanceLib/SmmPerformanceLib.inf
>
> Fetching the collected stats (for display or otherwise):
> - MdeModulePkg/Library/DxeSmmPerformanceLib/DxeSmmPerformanceLib.inf
>
> "Do nothing" library instance for all module types:
> - MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
>
>
> Now obviously this doesn't explain why it works for you on some
> platforms and why it doesn't on others. You haven't shared much
> information about the platforms in question. I can make one guess: if
> the performance protocol provided by the platform's DXE Core
> (DxeCorePerformanceLib) is incompatible with the DxePerformanceLib
> instance that is linked into your DXE driver, then communication between
> them will likely fail.
>
> To my understanding, the performance protocol is not standard (PI or
> UEFI), so it's likely best if you build your DXE driver together with
> the DXE Core, on all platforms that you want to check. It's probably
> unsafe to link a DXE driver against DxePerformanceLib (rather than
> BasePerformanceLibNull) and run it on a random platform.
>
> Hopefully this helps a little.
> Laszlo
>
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] Performancepkg in edk2

2018-08-03 Thread prabin ca
It will be helpful if any one can give me a idea

> On 03-Aug-2018, at 12:00 PM, prabin ca  wrote:
> 
> Hi Team,
> 
> I’m new to uefi and edk. I’m facing or figure out one issue in PerformancePkg 
> in edk source code.
> 
> My aim is to get performance of my dxe driver by using PerformancePkg API’s 
> (perf_start and perf_end).
> 
> It’s got build and successfully tested and verified in some platforms well 
> without any failure. It giving proper output.
> 
> But the issue I’m facing is, it’s not working in some other platform. Please 
> help me to resolve this ASAP. It will be really helpful.
> 
> Is it a known issue with PerformancePkg
> 
> 
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] PerformancePkg on multiple platform

2018-08-03 Thread prabin ca
Hi Team,

I’m new to uefi and edk. Currently I’m trying to get performance of my dxe 
driver using PerformancePkg of EDK source code.

I’m using perf_start and perf_end T respected check points, it’s hot build and 
tested well in 2/3 platform. It’s giving proper response.

But when I’m Checking with multiple platform, in some of platforms it’s not 
working and got hang in uefi she’ll itself.

Please help me to resolve asap, it will be really helpful.

___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel