Displaying 3 results from an estimated 3 matches for "hpet_cfg_enable".
2012 Mar 27
0
[PATCH 1/4] x86/hpet: disable before reboot or kexec
...atch;
u32 hpet_id, cfg;
- unsigned int i;
+ unsigned int i, last;
if ( system_reset_latch == system_reset_counter )
return;
system_reset_latch = system_reset_counter;
cfg = hpet_read32(HPET_CFG);
+ if ( boot_cfg )
+ *boot_cfg = cfg;
cfg &= ~(HPET_CFG_ENABLE | HPET_CFG_LEGACY);
hpet_write32(cfg, HPET_CFG);
hpet_id = hpet_read32(HPET_ID);
- for ( i = 0; i <= ((hpet_id >> 8) & 31); i++ )
+ last = (hpet_id & HPET_ID_NUMBER) >> HPET_ID_NUMBER_SHIFT;
+ for ( i = 0; i <= last; ++i )
{
cfg = hpet_re...
2012 Mar 27
0
[PATCH 2/4] x86/hpet: replace disabling of legacy broadcast
...a/xen/arch/x86/hpet.c
+++ b/xen/arch/x86/hpet.c
@@ -783,7 +783,11 @@ void hpet_disable(void)
u32 id;
if ( !hpet_boot_cfg )
+ {
+ if ( hpet_broadcast_is_available() )
+ hpet_disable_legacy_broadcast();
return;
+ }
hpet_write32(*hpet_boot_cfg & ~HPET_CFG_ENABLE, HPET_CFG);
--- a/xen/arch/x86/smp.c
+++ b/xen/arch/x86/smp.c
@@ -349,12 +349,13 @@ void __stop_this_cpu(void)
*/
clts();
asm volatile ( "fninit" );
+
+ cpumask_clear_cpu(smp_processor_id(), &cpu_online_map);
}
static void stop_this_cpu(void *dummy)
{
__...
2007 May 15
3
[PATCH 1/12] Add suspend/resume to devices owned by Xen
...32)(counter - hpet_stamp);
hpet_stamp = counter;
- spin_unlock_irq(&platform_timer_lock);
+ spin_unlock_irqrestore(&platform_timer_lock, flags);
set_timer(&hpet_overflow_timer, NOW() + hpet_overflow_period);
}
@@ -401,8 +428,6 @@ static int init_hpet(void)
cfg |= HPET_CFG_ENABLE;
hpet_write32(cfg, HPET_CFG);
- read_platform_count = read_hpet_count;
-
hpet_rate = 1000000000000000ULL; /* 10^15 */
(void)do_div(hpet_rate, hpet_period);
set_time_scale(&platform_timer_scale, hpet_rate);
@@ -427,6 +452,23 @@ static int init_hpet(void)
return 1;...