[if gte mso 9]>

Re: [edk2] SetTimer Granularity in uEFI

Subject: Re: [edk2] SetTimer Granularity in uEFI

From: Ramesh R. <rameshr@ami.com>

To: "edk2-devel@lists.sourceforge.net" <edk2-devel@lists.sourceforge.net>

Date: 2013-09-17 14:55:14

Yes. But when the system goes back to Legacy Environment we need to change the timer interval to 54ms as this is IBM standard .

 

Thanks,

Ramesh

 

From: galla rao [mailto:gallagnv.rao@gmail.com]
Sent: Monday, September 16, 2013 6:55 PM
To: edk2-devel@lists.sourceforge.net
Subject: Re: [edk2] SetTimer Granularity in uEFI

 

Thanks Ramesh for your inputs

 

Does it mean that if platform BIOS supports HPET timer

I can have a callback for lesser granularity than 54ms

 

Hope this is what you are trying to convey

 

Thanks Ramesh & Sergey for your inputs

I would try and see if it helps me

 

On Mon, Sep 16, 2013 at 5:49 PM, Ramesh R. <rameshr@ami.com> wrote:

Hello Ranga,

 

  The Legacy environment assumed that 18.4 times Timer 0 gets generated per Second. It means Timer 0 IRQ raised for every 54ms.

 

By using the HPET timer we could change the timer frequency to lesser values and when we switch to Legacy environment we could change it back to 54ms as interval.

 

Thanks,

Ramesh

 

From: galla rao [mailto:gallagnv.rao@gmail.com]
Sent: Monday, September 16, 2013 4:23 PM
To: edk2-devel@lists.sourceforge.net
Subject: [edk2] SetTimer Granularity in uEFI

 

Hello All,

 

Can anyone help me understand what is the minimum Timer Granularity for gBS->SetTimer

When i have written a callback with 50ms(milli seconds), The calls seems to be taking a value close

to 50ms

 

In the 8254Timerdxe the following comments are given about timer ticks

 

//
// The PCAT 8253/8254 has an input clock at 1.193182 MHz and Timer 0 is
// initialized as a 16 bit free running counter that generates an interrupt(IRQ0)
// each time the counter rolls over.
//
//   65536 counts
// ---------------- * 1,000,000 uS/S = 54925.4 uS = 549254 * 100 ns
//   1,193,182 Hz
//
// The default timer tick duration is set to 10 ms = 100000 100 ns units
//

 

Based on the above details on x86-IA64 architecture

54925.4uS would be close to 50ms(milli seconds)

 

Does it means minimum granularity is 50ms for a callback to get called. For a 10ms callback i am not seeing

a callback getting called every 10ms

 

Can I use anyother Timer Mechanisms from chipset for a shorter callbacks than 50ms to improve my IO repsonse of the device?

 

Please provide your inputs & suggestions.

 

Thanks

Ranga

 

The information contained in this message may be confidential and proprietary to American Megatrends, Inc. This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission.


------------------------------------------------------------------------------
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/20/13.
http://pubads.g.doubleclick.net/gampad/clk?id=58041151&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

 

The information contained in this message may be confidential and proprietary to American Megatrends, Inc. This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission.