diff options
Diffstat (limited to 'arch/x86/kernel/setup.c')
| -rw-r--r-- | arch/x86/kernel/setup.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/x86/kernel/setup.c b/arch/x86/kernel/setup.c index 523bb697120d..7791eef95b91 100644 --- a/arch/x86/kernel/setup.c +++ b/arch/x86/kernel/setup.c | |||
| @@ -214,8 +214,8 @@ unsigned long mmu_cr4_features; | |||
| 214 | unsigned long mmu_cr4_features = X86_CR4_PAE; | 214 | unsigned long mmu_cr4_features = X86_CR4_PAE; |
| 215 | #endif | 215 | #endif |
| 216 | 216 | ||
| 217 | /* Boot loader ID as an integer, for the benefit of proc_dointvec */ | 217 | /* Boot loader ID and version as integers, for the benefit of proc_dointvec */ |
| 218 | int bootloader_type; | 218 | int bootloader_type, bootloader_version; |
| 219 | 219 | ||
| 220 | /* | 220 | /* |
| 221 | * Setup options | 221 | * Setup options |
| @@ -706,6 +706,12 @@ void __init setup_arch(char **cmdline_p) | |||
| 706 | #endif | 706 | #endif |
| 707 | saved_video_mode = boot_params.hdr.vid_mode; | 707 | saved_video_mode = boot_params.hdr.vid_mode; |
| 708 | bootloader_type = boot_params.hdr.type_of_loader; | 708 | bootloader_type = boot_params.hdr.type_of_loader; |
| 709 | if ((bootloader_type >> 4) == 0xe) { | ||
| 710 | bootloader_type &= 0xf; | ||
| 711 | bootloader_type |= (boot_params.hdr.ext_loader_type+0x10) << 4; | ||
| 712 | } | ||
| 713 | bootloader_version = bootloader_type & 0xf; | ||
| 714 | bootloader_version |= boot_params.hdr.ext_loader_ver << 4; | ||
| 709 | 715 | ||
| 710 | #ifdef CONFIG_BLK_DEV_RAM | 716 | #ifdef CONFIG_BLK_DEV_RAM |
| 711 | rd_image_start = boot_params.hdr.ram_size & RAMDISK_IMAGE_START_MASK; | 717 | rd_image_start = boot_params.hdr.ram_size & RAMDISK_IMAGE_START_MASK; |
