From: Bin Meng Date: Mon, 24 Aug 2015 08:00:08 +0000 (-0700) Subject: x86: crownbay: Enable on-board SMSC superio keyboard controller X-Git-Tag: KARO-TX6-2015-09-18~131 X-Git-Url: https://git.kernelconcepts.de/?p=karo-tx-uboot.git;a=commitdiff_plain;h=312a5003492a1e12ca5d49f1e8910eefd595600e x86: crownbay: Enable on-board SMSC superio keyboard controller So far we only enabled one legacy serial port on the SMSC LPC47m superio chipset on Intel Crown Bay board. As the board also has dual PS/2 ports routed out, enable the keyboard controller which is i8042 compatible so that we can use PS/2 keyboard and mouse. In order to make PS/2 keyboard work with the VGA console, remove CONFIG_VGA_AS_SINGLE_DEVICE. To boot Linux kernel with PIC mode using PIRQ routing table, adjust the mask in the device tree to reserve irq12 which is used by PS/2 mouse. Signed-off-by: Bin Meng Reviewed-by: Simon Glass --- diff --git a/arch/x86/dts/crownbay.dts b/arch/x86/dts/crownbay.dts index 3af9cc3d26..800901c2cb 100644 --- a/arch/x86/dts/crownbay.dts +++ b/arch/x86/dts/crownbay.dts @@ -168,7 +168,7 @@ compatible = "intel,irq-router"; intel,pirq-config = "pci"; intel,pirq-link = <0x60 8>; - intel,pirq-mask = <0xdee0>; + intel,pirq-mask = <0xcee0>; intel,pirq-routing = < /* TunnelCreek PCI devices */ PCI_BDF(0, 2, 0) INTA PIRQE diff --git a/board/intel/crownbay/crownbay.c b/board/intel/crownbay/crownbay.c index ad2d5b69d6..d6de9fabc0 100644 --- a/board/intel/crownbay/crownbay.c +++ b/board/intel/crownbay/crownbay.c @@ -10,11 +10,12 @@ #include #include -#define SERIAL_DEV PNP_DEV(0x2e, 4) - int board_early_init_f(void) { - lpc47m_enable_serial(SERIAL_DEV, UART0_BASE, UART0_IRQ); + lpc47m_enable_serial(PNP_DEV(LPC47M_IO_PORT, LPC47M_SP1), + UART0_BASE, UART0_IRQ); + lpc47m_enable_kbc(PNP_DEV(LPC47M_IO_PORT, LPC47M_KBC), + KBD_IRQ, MSE_IRQ); return 0; } diff --git a/include/configs/crownbay.h b/include/configs/crownbay.h index 162f08ff1e..998da78842 100644 --- a/include/configs/crownbay.h +++ b/include/configs/crownbay.h @@ -53,9 +53,6 @@ #define CONFIG_PCH_GBE #define CONFIG_PHYLIB -/* TunnelCreek IGD support */ -#define CONFIG_VGA_AS_SINGLE_DEVICE - /* Environment configuration */ #define CONFIG_ENV_SECT_SIZE 0x1000 #define CONFIG_ENV_OFFSET 0