• Thomas Gleixner's avatar
    x86: hpet: workaround SB700 BIOS · a6825f1c
    Thomas Gleixner authored
    AMD SB700 based systems with spread spectrum enabled use a SMM based
    HPET emulation to provide proper frequency setting. The SMM code is
    initialized with the first HPET register access and takes some time to
    complete. During this time the config register reads 0xffffffff. We
    check for max. 1000 loops whether the config register reads a non
    0xffffffff value to make sure that HPET is up and running before we go
    further. A counting loop is safe, as the HPET access takes thousands
    of CPU cycles. On non SB700 based machines this check is only done
    once and has no side effects.
    
    Based on a quirk patch from: crane cai <crane.cai@amd.com>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    a6825f1c
hpet.c 16.4 KB