On 12/01/15 06:35, winddy wrote:
> Dear Expert,
>     I see in file OvmfPkg\Sec\SecMain.c, line 810:
>   //
>   // Initialize Local APIC Timer hardware and disable Local APIC Timer
>   // interrupts before initializing the Debug Agent and the debug timer is
>   // enabled.
>   //
>   InitializeApicTimer (0, MAX_UINT32, TRUE, 5);
>   DisableApicTimerInterrupt ();
>   
> Ovmf initializes apic timer and give it a vector number 5, according to 
> "Intel® 64 and IA-32 Architectures Software Developer’s Manual", vol 3, 
> 10.5.2 Valid Interrupt Vectors:
> 
> 
> When an interrupt vector in the range of 0 to 15 is sent or received through 
> the local APIC, the APIC indicates an 
> illegal vector in its Error Status Register (see Section 10.5.3, “Error 
> Handling”). The Intel 64 and IA-32 architec-
> tures reserve vectors 16 through 31 for predefined interrupts, exceptions, 
> and Intel-reserved encodings (see Table 
> 6-1). However, the local APIC does not treat vectors in this range as 
> illegal. When an illegal vector value (0 to 15) 
> is written to an LVT entry and the delivery mode is Fixed (bits 8-11 equal 
> 0), the APIC may signal an illegal vector 
> error, without regard to whether the mask bit is set or whether an interrupt 
> is actually seen on the input.
> 
> 
> 
>     So here "vector 5" is a fake value, right?

Yes. Please see point (5) in:

http://thread.gmane.org/gmane.comp.bios.edk2.devel/3019/focus=3168

> we just want to let timer be running, and we can fill it with 6, 7, 8, also?
> If next function "DisableApicTimerInterrupt()" does not invoke, a interrupt 
> will be occurred when current timer value 
> down to Zero?

Yes, there is a very small window between the two lines you quoted when
the timer is ticking / armed. See point (4) in the message linked above.

Thanks
Laszlo

> 
> 
>     And I see CPU Interrupt 5 is "BOUND Range Exceeded Exception" for BOUND 
> instruction. 
> 
> 
>     Thanks.
> 
> 
> 
> 
> 
> ------------------
> BR
> winddy_zhang
> _______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.01.org/mailman/listinfo/edk2-devel
> 

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to