• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include <linux/kernel.h>
2 #include <linux/init.h>
3 
4 #include <asm/setup.h>
5 #include <asm/bios_ebda.h>
6 
x86_early_init_platform_quirks(void)7 void __init x86_early_init_platform_quirks(void)
8 {
9 	x86_platform.legacy.rtc = 1;
10 	x86_platform.legacy.reserve_bios_regions = 0;
11 	x86_platform.legacy.devices.pnpbios = 1;
12 
13 	switch (boot_params.hdr.hardware_subarch) {
14 	case X86_SUBARCH_PC:
15 		x86_platform.legacy.reserve_bios_regions = 1;
16 		break;
17 	case X86_SUBARCH_XEN:
18 	case X86_SUBARCH_LGUEST:
19 	case X86_SUBARCH_INTEL_MID:
20 	case X86_SUBARCH_CE4100:
21 		x86_platform.legacy.devices.pnpbios = 0;
22 		x86_platform.legacy.rtc = 0;
23 		break;
24 	}
25 
26 	if (x86_platform.set_legacy_features)
27 		x86_platform.set_legacy_features();
28 }
29 
30 #if defined(CONFIG_PNPBIOS)
arch_pnpbios_disabled(void)31 bool __init arch_pnpbios_disabled(void)
32 {
33 	return x86_platform.legacy.devices.pnpbios == 0;
34 }
35 #endif
36