Add arch_has_extapic() helper function to check if a CPU supports
AMD's extended APIC feature. This will be used in subsequent patches
to conditionally enable extended APIC register handling.

Signed-off-by: Manali Shukla <[email protected]>
---
 include/hw/i386/apic_internal.h | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/include/hw/i386/apic_internal.h b/include/hw/i386/apic_internal.h
index 429278da61..865b7ed567 100644
--- a/include/hw/i386/apic_internal.h
+++ b/include/hw/i386/apic_internal.h
@@ -212,6 +212,13 @@ void vapic_report_tpr_access(DeviceState *dev, CPUState 
*cpu, target_ulong ip,
 int apic_get_ppr(APICCommonState *s);
 uint32_t apic_get_current_count(APICCommonState *s);
 
+static inline bool arch_has_extapic(X86CPU *cpu)
+{
+    CPUX86State *env = &cpu->env;
+
+    return !!(env->features[FEAT_8000_0001_ECX] & CPUID_EXT3_EXTAPIC);
+}
+
 static inline void apic_set_bit(uint32_t *tab, int index)
 {
     int i, mask;
-- 
2.43.0


Reply via email to