On Mon, Oct 19, 2015 at 11:17 AM, Simon Glass <s...@chromium.org> wrote: > Some boards have an i8042 device. Enable the driver for all x86 boards, and > add a device tree node for those which may have this keyboard. > > Also adjust the configuration so that i8042 is always separate from the VGA, > and rename the stdin driver accordingly. With this commit the keyboard will > not work, but it is fixed in the next commit. > > Signed-off-by: Simon Glass <s...@chromium.org> > --- > > Changes in v2: > - Drop CONFIG_VGA_AS_SINGLE_DEVICE from all x86 board config files > > arch/x86/Kconfig | 6 ++++++ > arch/x86/dts/bayleybay.dts | 1 + > arch/x86/dts/chromebook_link.dts | 5 +++++ > arch/x86/dts/keyboard.dtsi | 5 +++++ > doc/device-tree-bindings/input/i8042.txt | 10 ++++++++++ > include/configs/bayleybay.h | 3 --- > include/configs/chromebox_panther.h | 2 -- > include/configs/minnowmax.h | 1 - > include/configs/x86-chromebook.h | 2 +- > include/configs/x86-common.h | 2 +- > 10 files changed, 29 insertions(+), 8 deletions(-) > create mode 100644 arch/x86/dts/keyboard.dtsi > create mode 100644 doc/device-tree-bindings/input/i8042.txt > > diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig > index 5e42d7d..72a66ea 100644 > --- a/arch/x86/Kconfig > +++ b/arch/x86/Kconfig > @@ -401,6 +401,12 @@ config PCIE_ECAM_SIZE > so a default 0x10000000 size covers all of the 256 buses which is > the > maximum number of PCI buses as defined by the PCI specification. > > +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 d646987..58d97c8 100644 > --- a/arch/x86/dts/bayleybay.dts > +++ b/arch/x86/dts/bayleybay.dts > @@ -10,6 +10,7 @@ > #include <dt-bindings/interrupt-router/intel-irq.h> > > /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 4291141..f09868b 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 0000000..000751b > --- /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 0000000..cd079c2 > --- /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 1ba2998..ac6b45b 100644 > --- a/include/configs/bayleybay.h > +++ b/include/configs/bayleybay.h > @@ -33,9 +33,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 dc732b8..00fe26d 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 53d86a2..c90af40 100644 > --- a/include/configs/minnowmax.h > +++ b/include/configs/minnowmax.h > @@ -43,7 +43,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 2be8850..4ff8b94 100644 > --- a/include/configs/x86-chromebook.h > +++ b/include/configs/x86-chromebook.h > @@ -51,7 +51,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 3f153f2..ff8fe0f 100644 > --- a/include/configs/x86-common.h > +++ b/include/configs/x86-common.h > @@ -147,7 +147,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 > > --
Reviewed-by: Bin Meng <bmeng...@gmail.com> _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot