]>
Commit | Line | Data |
---|---|---|
8f69975d BS |
1 | From: Russ Anderson <rja@sgi.com> |
2 | Subject: x86: Add UV EFI table entry | |
3 | References: bnc#442455 | |
4 | ||
5 | Add an EFI table entry for SGI UV system. | |
6 | Look for the entry in the EFI tables. | |
7 | ||
8 | Signed-off-by: Russ Anderson <rja@sgi.com> | |
9 | Signed-off-by: Paul Jackson <pj@sgi.com> | |
10 | Acked-by: Bernhard Walle <bwalle@suse.de> | |
11 | ||
12 | --- | |
13 | arch/x86/kernel/efi.c | 4 ++++ | |
14 | include/linux/efi.h | 4 ++++ | |
15 | 2 files changed, 8 insertions(+) | |
16 | ||
17 | Index: linux/arch/x86/kernel/efi.c | |
18 | =================================================================== | |
19 | --- linux.orig/arch/x86/kernel/efi.c 2008-10-15 09:56:13.000000000 -0500 | |
20 | +++ linux/arch/x86/kernel/efi.c 2008-10-15 09:56:23.000000000 -0500 | |
21 | @@ -367,6 +367,10 @@ void __init efi_init(void) | |
22 | efi.smbios = config_tables[i].table; | |
23 | printk(" SMBIOS=0x%lx ", config_tables[i].table); | |
24 | } else if (!efi_guidcmp(config_tables[i].guid, | |
25 | + UV_SYSTEM_TABLE_GUID)) { | |
26 | + efi.uv_systab = config_tables[i].table; | |
27 | + printk(" UVsystab=0x%lx ", config_tables[i].table); | |
28 | + } else if (!efi_guidcmp(config_tables[i].guid, | |
29 | HCDP_TABLE_GUID)) { | |
30 | efi.hcdp = config_tables[i].table; | |
31 | printk(" HCDP=0x%lx ", config_tables[i].table); | |
32 | Index: linux/include/linux/efi.h | |
33 | =================================================================== | |
34 | --- linux.orig/include/linux/efi.h 2008-10-15 09:56:13.000000000 -0500 | |
35 | +++ linux/include/linux/efi.h 2008-10-15 09:56:23.000000000 -0500 | |
36 | @@ -208,6 +208,9 @@ typedef efi_status_t efi_set_virtual_add | |
37 | #define EFI_GLOBAL_VARIABLE_GUID \ | |
38 | EFI_GUID( 0x8be4df61, 0x93ca, 0x11d2, 0xaa, 0x0d, 0x00, 0xe0, 0x98, 0x03, 0x2b, 0x8c ) | |
39 | ||
40 | +#define UV_SYSTEM_TABLE_GUID \ | |
41 | + EFI_GUID( 0x3b13a7d4, 0x633e, 0x11dd, 0x93, 0xec, 0xda, 0x25, 0x56, 0xd8, 0x95, 0x93 ) | |
42 | + | |
43 | typedef struct { | |
44 | efi_guid_t guid; | |
45 | unsigned long table; | |
46 | @@ -255,6 +258,7 @@ extern struct efi { | |
47 | unsigned long boot_info; /* boot info table */ | |
48 | unsigned long hcdp; /* HCDP table */ | |
49 | unsigned long uga; /* UGA table */ | |
50 | + unsigned long uv_systab; /* UV system table */ | |
51 | efi_get_time_t *get_time; | |
52 | efi_set_time_t *set_time; | |
53 | efi_get_wakeup_time_t *get_wakeup_time; |