]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blame - src/patches/suse-2.6.27.31/patches.fixes/uv-efi_bios.diff
Add a patch to fix Intel E100 wake-on-lan problems.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.fixes / uv-efi_bios.diff
CommitLineData
6a930a95
BS
1From: Russ Anderson <rja@sgi.com>
2Subject: x86: Add UV EFI table entry
3References: bnc#442455
4
5Add an EFI table entry for SGI UV system.
6Look for the entry in the EFI tables.
7
8Signed-off-by: Russ Anderson <rja@sgi.com>
9Signed-off-by: Paul Jackson <pj@sgi.com>
10Acked-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
17Index: 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);
32Index: 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;