Loading...
1// SPDX-License-Identifier: GPL-2.0
2#include <linux/kernel.h>
3#include <linux/init.h>
4
5#include <asm/setup.h>
6#include <asm/bios_ebda.h>
7
8void __init x86_early_init_platform_quirks(void)
9{
10 x86_platform.legacy.i8042 = X86_LEGACY_I8042_EXPECTED_PRESENT;
11 x86_platform.legacy.rtc = 1;
12 x86_platform.legacy.warm_reset = 1;
13 x86_platform.legacy.reserve_bios_regions = 0;
14 x86_platform.legacy.devices.pnpbios = 1;
15
16 switch (boot_params.hdr.hardware_subarch) {
17 case X86_SUBARCH_PC:
18 x86_platform.legacy.reserve_bios_regions = 1;
19 break;
20 case X86_SUBARCH_XEN:
21 x86_platform.legacy.devices.pnpbios = 0;
22 x86_platform.legacy.rtc = 0;
23 break;
24 case X86_SUBARCH_INTEL_MID:
25 case X86_SUBARCH_CE4100:
26 x86_platform.legacy.devices.pnpbios = 0;
27 x86_platform.legacy.rtc = 0;
28 x86_platform.legacy.i8042 = X86_LEGACY_I8042_PLATFORM_ABSENT;
29 break;
30 }
31
32 if (x86_platform.set_legacy_features)
33 x86_platform.set_legacy_features();
34}
35
36bool __init x86_pnpbios_disabled(void)
37{
38 return x86_platform.legacy.devices.pnpbios == 0;
39}
40
41#if defined(CONFIG_PNPBIOS)
42bool __init arch_pnpbios_disabled(void)
43{
44 return x86_pnpbios_disabled();
45}
46#endif
1// SPDX-License-Identifier: GPL-2.0
2#include <linux/kernel.h>
3#include <linux/init.h>
4
5#include <asm/setup.h>
6#include <asm/bios_ebda.h>
7
8void __init x86_early_init_platform_quirks(void)
9{
10 x86_platform.legacy.i8042 = X86_LEGACY_I8042_EXPECTED_PRESENT;
11 x86_platform.legacy.rtc = 1;
12 x86_platform.legacy.warm_reset = 1;
13 x86_platform.legacy.reserve_bios_regions = 0;
14 x86_platform.legacy.devices.pnpbios = 1;
15
16 switch (boot_params.hdr.hardware_subarch) {
17 case X86_SUBARCH_PC:
18 x86_platform.legacy.reserve_bios_regions = 1;
19 break;
20 case X86_SUBARCH_XEN:
21 x86_platform.legacy.devices.pnpbios = 0;
22 x86_platform.legacy.rtc = 0;
23 break;
24 case X86_SUBARCH_INTEL_MID:
25 case X86_SUBARCH_CE4100:
26 x86_platform.legacy.devices.pnpbios = 0;
27 x86_platform.legacy.rtc = 0;
28 x86_platform.legacy.i8042 = X86_LEGACY_I8042_PLATFORM_ABSENT;
29 break;
30 }
31
32 if (x86_platform.set_legacy_features)
33 x86_platform.set_legacy_features();
34}
35
36bool __init x86_pnpbios_disabled(void)
37{
38 return x86_platform.legacy.devices.pnpbios == 0;
39}
40
41#if defined(CONFIG_PNPBIOS)
42bool __init arch_pnpbios_disabled(void)
43{
44 return x86_pnpbios_disabled();
45}
46#endif