|
@@ -34,6 +34,8 @@
|
|
|
*/
|
|
|
unsigned long hpet_address;
|
|
|
u8 hpet_blockid; /* OS timer block num */
|
|
|
+u8 hpet_msi_disable;
|
|
|
+
|
|
|
#ifdef CONFIG_PCI_MSI
|
|
|
static unsigned long hpet_num_timers;
|
|
|
#endif
|
|
@@ -596,6 +598,9 @@ static void hpet_msi_capability_lookup(unsigned int start_timer)
|
|
|
unsigned int num_timers_used = 0;
|
|
|
int i;
|
|
|
|
|
|
+ if (hpet_msi_disable)
|
|
|
+ return;
|
|
|
+
|
|
|
if (boot_cpu_has(X86_FEATURE_ARAT))
|
|
|
return;
|
|
|
id = hpet_readl(HPET_ID);
|
|
@@ -928,6 +933,9 @@ static __init int hpet_late_init(void)
|
|
|
hpet_reserve_platform_timers(hpet_readl(HPET_ID));
|
|
|
hpet_print_config();
|
|
|
|
|
|
+ if (hpet_msi_disable)
|
|
|
+ return 0;
|
|
|
+
|
|
|
if (boot_cpu_has(X86_FEATURE_ARAT))
|
|
|
return 0;
|
|
|
|