arch/x86/include: rename smm.h to smm_call.h
Rename smm.h to smm_call.h to make including this file look less ambiguous. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: Ia907ad92459e835feeddf7eb4743a38f99549179 Reviewed-on: https://review.coreboot.org/c/coreboot/+/79833 Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
This commit is contained in:
23
src/arch/x86/include/smm_call.h
Normal file
23
src/arch/x86/include/smm_call.h
Normal file
@@ -0,0 +1,23 @@
|
||||
/* SPDX-License-Identifier: GPL-2.0-only */
|
||||
|
||||
#include <stdint.h>
|
||||
#include <cpu/x86/smm.h>
|
||||
|
||||
/*
|
||||
* calls into SMM with the given cmd and subcmd in eax, and arg in ebx
|
||||
*
|
||||
* static inline because the resulting assembly is often smaller than
|
||||
* the call sequence due to constant folding.
|
||||
*/
|
||||
static inline u32 call_smm(u8 cmd, u8 subcmd, void *arg)
|
||||
{
|
||||
u32 res = 0;
|
||||
__asm__ __volatile__ (
|
||||
"outb %%al, %%dx"
|
||||
: "=a" (res)
|
||||
: "a" ((subcmd << 8) | cmd),
|
||||
"b" (arg),
|
||||
"d" (APM_CNT)
|
||||
: "memory");
|
||||
return res;
|
||||
}
|
Reference in New Issue
Block a user