summaryrefslogtreecommitdiff
path: root/payloads/libpayload/include/x86
diff options
context:
space:
mode:
authorRonald G Minnich <rminnich@gmail.com>2020-07-09 08:23:58 -0700
committerron minnich <rminnich@gmail.com>2020-07-16 16:48:42 +0000
commita92a07d9c0a6079818385de78930a69459e4ee8a (patch)
treed1daf789700cc123a1fa60c5fcabb66493145c2a /payloads/libpayload/include/x86
parentbf6541d876fad1ce518bf6c36d4448007d4e44c7 (diff)
downloadcoreboot-a92a07d9c0a6079818385de78930a69459e4ee8a.tar.xz
libpayload: allow nonblocking delay and more than one delay
Extend the local APIC timer delay so that it can be started, and waited for, independently. Add an EOI so that more than one APIC timer interrupt is possible. Previous to this, because there was no EOI, the first timer interrupt the CPU took was also the last it would take -- apic_delay would only work one time. Change-Id: Ib11aeee5b7da81287166ac68fc327e7ae62d1b84 Signed-off-by: Ronald G Minnich <rminnich@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/43323 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: David Hendricks <david.hendricks@gmail.com> Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com>
Diffstat (limited to 'payloads/libpayload/include/x86')
-rw-r--r--payloads/libpayload/include/x86/arch/apic.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/payloads/libpayload/include/x86/arch/apic.h b/payloads/libpayload/include/x86/arch/apic.h
index 3c9877cb54..eedf1b4b2b 100644
--- a/payloads/libpayload/include/x86/arch/apic.h
+++ b/payloads/libpayload/include/x86/arch/apic.h
@@ -40,5 +40,7 @@ uint8_t apic_id(void);
void apic_eoi(uint8_t vector);
void apic_delay(unsigned int usec);
+void apic_start_delay(unsigned int usec);
+void apic_wait_delay(void);
#endif /* __ARCH_X86_INCLUDES_ARCH_APIC_H__ */