diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 8914be34e6..14ab98ef62 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig @@ -435,6 +435,12 @@ config I8254_TIMER Intel 8254 timer contains three counters which have fixed uses. Include this to have U-Boot set up the timer correctly. +config I8042_KEYB + default y + +config DM_KEYBOARD + default y + source "arch/x86/lib/efi/Kconfig" endmenu diff --git a/arch/x86/dts/bayleybay.dts b/arch/x86/dts/bayleybay.dts index 52d0999f19..aa863878fe 100644 --- a/arch/x86/dts/bayleybay.dts +++ b/arch/x86/dts/bayleybay.dts @@ -10,6 +10,7 @@ #include /include/ "skeleton.dtsi" +/include/ "keyboard.dtsi" /include/ "serial.dtsi" /include/ "rtc.dtsi" diff --git a/arch/x86/dts/chromebook_link.dts b/arch/x86/dts/chromebook_link.dts index f27263a547..7870bb172b 100644 --- a/arch/x86/dts/chromebook_link.dts +++ b/arch/x86/dts/chromebook_link.dts @@ -1,6 +1,7 @@ /dts-v1/; /include/ "skeleton.dtsi" +/include/ "keyboard.dtsi" /include/ "serial.dtsi" /include/ "rtc.dtsi" @@ -41,6 +42,10 @@ stdout-path = "/serial"; }; + keyboard { + intel,duplicate-por; + }; + spd { compatible = "memory-spd"; #address-cells = <1>; diff --git a/arch/x86/dts/keyboard.dtsi b/arch/x86/dts/keyboard.dtsi new file mode 100644 index 0000000000..000751b647 --- /dev/null +++ b/arch/x86/dts/keyboard.dtsi @@ -0,0 +1,5 @@ +/ { + keyboard { + compatible = "intel,i8042-keyboard"; + }; +}; diff --git a/doc/device-tree-bindings/input/i8042.txt b/doc/device-tree-bindings/input/i8042.txt new file mode 100644 index 0000000000..cd079c2740 --- /dev/null +++ b/doc/device-tree-bindings/input/i8042.txt @@ -0,0 +1,10 @@ +i8042 Keyboard + +The Intel i8042 is a keyboard controller used on many x86 PCs. + +Required properties: +- compatible: "intel,i8042-keyboard" + +Optional properties: +- intel,duplicate-por: Indicates that a keyboard reset may result in a + duplicate POR byte, which should be ignored. diff --git a/include/configs/bayleybay.h b/include/configs/bayleybay.h index b102c689e2..92326e1d0a 100644 --- a/include/configs/bayleybay.h +++ b/include/configs/bayleybay.h @@ -32,9 +32,6 @@ #define CONFIG_MMC_SDMA #define CONFIG_CMD_MMC -/* BayTrail IGD support */ -#define CONFIG_VGA_AS_SINGLE_DEVICE - /* Environment configuration */ #define CONFIG_ENV_SECT_SIZE 0x1000 #define CONFIG_ENV_OFFSET 0x006ff000 diff --git a/include/configs/chromebox_panther.h b/include/configs/chromebox_panther.h index dc732b810f..00fe26da29 100644 --- a/include/configs/chromebox_panther.h +++ b/include/configs/chromebox_panther.h @@ -14,6 +14,4 @@ /* Avoid a warning in the Realtek Ethernet driver */ #define CONFIG_SYS_CACHELINE_SIZE 16 -#define CONFIG_VGA_AS_SINGLE_DEVICE - #endif /* __CONFIG_H */ diff --git a/include/configs/minnowmax.h b/include/configs/minnowmax.h index a20552e74e..95d356a0d4 100644 --- a/include/configs/minnowmax.h +++ b/include/configs/minnowmax.h @@ -42,7 +42,6 @@ #define VIDEO_IO_OFFSET 0 #define CONFIG_X86EMU_RAW_IO -#define CONFIG_VGA_AS_SINGLE_DEVICE #define CONFIG_FIT_SIGNATURE #define CONFIG_RSA diff --git a/include/configs/x86-chromebook.h b/include/configs/x86-chromebook.h index b0aa875f5e..9fb1a7a259 100644 --- a/include/configs/x86-chromebook.h +++ b/include/configs/x86-chromebook.h @@ -50,7 +50,7 @@ #define CONFIG_ENV_IS_IN_SPI_FLASH #define CONFIG_ENV_OFFSET 0x003f8000 -#define CONFIG_STD_DEVICES_SETTINGS "stdin=usbkbd,vga,serial\0" \ +#define CONFIG_STD_DEVICES_SETTINGS "stdin=usbkbd,i8042-kbd,serial\0" \ "stdout=vga,serial\0" \ "stderr=vga,serial\0" diff --git a/include/configs/x86-common.h b/include/configs/x86-common.h index 33263ab60c..3a18f69431 100644 --- a/include/configs/x86-common.h +++ b/include/configs/x86-common.h @@ -145,7 +145,7 @@ #define CONFIG_VIDEO #define CONFIG_VIDEO_SW_CURSOR #define VIDEO_FB_16BPP_WORD_SWAP -#define CONFIG_I8042_KBD +#define CONFIG_VGA_AS_SINGLE_DEVICE #define CONFIG_CFB_CONSOLE #define CONFIG_CONSOLE_SCROLL_LINES 5