x86: Allow interrupts to be disabled in 64-bit mode

Update the code to support both 32-bit and 64-bit modes.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
This commit is contained in:
Simon Glass 2016-09-25 21:33:23 -06:00 committed by Bin Meng
parent b11e298440
commit 35233da98a

View File

@ -238,8 +238,11 @@ int disable_interrupts(void)
{
long flags;
#ifdef CONFIG_X86_64
asm volatile ("pushfq ; popq %0 ; cli\n" : "=g" (flags) : );
#else
asm volatile ("pushfl ; popl %0 ; cli\n" : "=g" (flags) : );
#endif
return flags & X86_EFLAGS_IF;
}