aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/setup.c
diff options
context:
space:
mode:
authorJoseph Cihula <joseph.cihula@intel.com>2009-06-30 22:30:59 -0400
committerH. Peter Anvin <hpa@zytor.com>2009-07-21 14:49:06 -0400
commit3162534069597e34dd0ac9eb711be8dc23835ae7 (patch)
treea8cddd3899917784ebac2cdf6c75d2c8b50d04af /arch/x86/kernel/setup.c
parentaea1f7964ae6cba5eb419a958956deb9016b3341 (diff)
x86, intel_txt: Intel TXT boot support
This patch adds kernel configuration and boot support for Intel Trusted Execution Technology (Intel TXT). Intel's technology for safer computing, Intel Trusted Execution Technology (Intel TXT), defines platform-level enhancements that provide the building blocks for creating trusted platforms. Intel TXT was formerly known by the code name LaGrande Technology (LT). Intel TXT in Brief: o Provides dynamic root of trust for measurement (DRTM) o Data protection in case of improper shutdown o Measurement and verification of launched environment Intel TXT is part of the vPro(TM) brand and is also available some non-vPro systems. It is currently available on desktop systems based on the Q35, X38, Q45, and Q43 Express chipsets (e.g. Dell Optiplex 755, HP dc7800, etc.) and mobile systems based on the GM45, PM45, and GS45 Express chipsets. For more information, see http://www.intel.com/technology/security/. This site also has a link to the Intel TXT MLE Developers Manual, which has been updated for the new released platforms. A much more complete description of how these patches support TXT, how to configure a system for it, etc. is in the Documentation/intel_txt.txt file in this patch. This patch provides the TXT support routines for complete functionality, documentation for TXT support and for the changes to the boot_params structure, and boot detection of a TXT launch. Attempts to shutdown (reboot, Sx) the system will result in platform resets; subsequent patches will support these shutdown modes properly. Documentation/intel_txt.txt | 210 +++++++++++++++++++++ Documentation/x86/zero-page.txt | 1 arch/x86/include/asm/bootparam.h | 3 arch/x86/include/asm/fixmap.h | 3 arch/x86/include/asm/tboot.h | 197 ++++++++++++++++++++ arch/x86/kernel/Makefile | 1 arch/x86/kernel/setup.c | 4 arch/x86/kernel/tboot.c | 379 +++++++++++++++++++++++++++++++++++++++ security/Kconfig | 30 +++ 9 files changed, 827 insertions(+), 1 deletion(-) Signed-off-by: Joseph Cihula <joseph.cihula@intel.com> Signed-off-by: Shane Wang <shane.wang@intel.com> Signed-off-by: Gang Wei <gang.wei@intel.com> Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'arch/x86/kernel/setup.c')
-rw-r--r--arch/x86/kernel/setup.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c
index de2cab132844..80d6e9e32483 100644
--- a/arch/x86/kernel/setup.c
+++ b/arch/x86/kernel/setup.c
@@ -145,6 +145,8 @@ struct boot_params __initdata boot_params;
145struct boot_params boot_params; 145struct boot_params boot_params;
146#endif 146#endif
147 147
148#include <asm/tboot.h>
149
148/* 150/*
149 * Machine setup.. 151 * Machine setup..
150 */ 152 */
@@ -964,6 +966,8 @@ void __init setup_arch(char **cmdline_p)
964 paravirt_pagetable_setup_done(swapper_pg_dir); 966 paravirt_pagetable_setup_done(swapper_pg_dir);
965 paravirt_post_allocator_init(); 967 paravirt_post_allocator_init();
966 968
969 tboot_probe();
970
967#ifdef CONFIG_X86_64 971#ifdef CONFIG_X86_64
968 map_vsyscall(); 972 map_vsyscall();
969#endif 973#endif