]>
Commit | Line | Data |
---|---|---|
b2441318 | 1 | // SPDX-License-Identifier: GPL-2.0 |
8d152e7a LR |
2 | #include <linux/kernel.h> |
3 | #include <linux/init.h> | |
4 | ||
5 | #include <asm/setup.h> | |
6 | #include <asm/bios_ebda.h> | |
7 | ||
8 | void __init x86_early_init_platform_quirks(void) | |
9 | { | |
93ffa9a4 | 10 | x86_platform.legacy.i8042 = X86_LEGACY_I8042_EXPECTED_PRESENT; |
8d152e7a | 11 | x86_platform.legacy.rtc = 1; |
edce2121 | 12 | x86_platform.legacy.reserve_bios_regions = 0; |
80dfd83d | 13 | x86_platform.legacy.devices.pnpbios = 1; |
8d152e7a LR |
14 | |
15 | switch (boot_params.hdr.hardware_subarch) { | |
1330e3bc | 16 | case X86_SUBARCH_PC: |
edce2121 | 17 | x86_platform.legacy.reserve_bios_regions = 1; |
1330e3bc | 18 | break; |
8d152e7a | 19 | case X86_SUBARCH_XEN: |
93ffa9a4 DT |
20 | x86_platform.legacy.devices.pnpbios = 0; |
21 | x86_platform.legacy.rtc = 0; | |
22 | break; | |
8d152e7a | 23 | case X86_SUBARCH_INTEL_MID: |
a50b22a7 | 24 | case X86_SUBARCH_CE4100: |
f6935b7b | 25 | x86_platform.legacy.devices.pnpbios = 0; |
8d152e7a | 26 | x86_platform.legacy.rtc = 0; |
93ffa9a4 | 27 | x86_platform.legacy.i8042 = X86_LEGACY_I8042_PLATFORM_ABSENT; |
8d152e7a LR |
28 | break; |
29 | } | |
30 | ||
31 | if (x86_platform.set_legacy_features) | |
32 | x86_platform.set_legacy_features(); | |
33 | } | |
80dfd83d LR |
34 | |
35 | #if defined(CONFIG_PNPBIOS) | |
36 | bool __init arch_pnpbios_disabled(void) | |
37 | { | |
38 | return x86_platform.legacy.devices.pnpbios == 0; | |
39 | } | |
40 | #endif |