summaryrefslogtreecommitdiff
path: root/board
Commit message (Collapse)AuthorAgeLines
* Merge branch 'next' of ../nextWolfgang Denk2011-12-23-41807/+83844
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'next' of ../next: mkenvimage: Add version info switch (-V) mkenvimage: Fix getopt() error handling mkenvimage: Fix some typos phy: add Micrel KS8721BL phy definition net: introduce per device index mvgbe: remove setting of ethaddr within the driver x86: Add support for specifying an initrd with the zboot command x86: Refactor the zboot innards so they can be reused with a vboot image x86: Add infrastructure to extract an e820 table from the coreboot tables x86: Add support for booting Linux using the 32 bit boot protocol x86: Clean up the x86 zimage code in preparation to extend it x86: Import code from coreboot's libpayload to parse the coreboot table x86: Initial commit for running as a coreboot payload CHECKPATCH: ./board/esd/hh405/logo_320_240_8bpp.c CHECKPATCH: ./board/esd/hh405/logo_1024_768_8bpp.c CHECKPATCH: ./board/esd/hh405/logo_320_240_4bpp.c CHECKPATCH: ./board/esd/hh405/logo_640_480_24bpp.c CHECKPATCH: ./board/esd/apc405/logo_640_480_24bpp.c CHECKPATCH: ./board/esd/voh405/logo_320_240_4bpp.c CHECKPATCH: ./board/esd/voh405/logo_640_480_24bpp.c CHECKPATCH: ./board/esd/hh405/fpgadata.c CHECKPATCH: ./board/esd/pci405/fpgadata.c CHECKPATCH: ./board/esd/tasreg/fpgadata.c CHECKPATCH: ./board/esd/apc405/fpgadata.c CHECKPATCH: ./board/esd/voh405/fpgadata.c CHECKPATCH: ./board/esd/ash405/fpgadata.c CHECKPATCH: ./board/esd/dasa_sim/fpgadata.c CHECKPATCH: ./board/esd/ar405/fpgadata_xl30.c CHECKPATCH: ./board/esd/ar405/fpgadata.c CHECKPATCH: ./board/esd/plu405/fpgadata.c CHECKPATCH: ./board/esd/wuh405/fpgadata.c CHECKPATCH: ./board/esd/cpci405/fpgadata_cpci405.c CHECKPATCH: ./board/esd/cpci405/fpgadata_cpci405ab.c CHECKPATCH: ./board/esd/cpci405/fpgadata_cpci4052.c CHECKPATCH: ./board/esd/canbt/fpgadata.c CHECKPATCH: ./board/esd/du405/fpgadata.c CHECKPATCH: ./board/esd/cpciiser4/fpgadata.c CHECKPATCH: ./board/dave/PPChameleonEVB/fpgadata.c avr32:mmu.c: fix printf() length modifier fat.c: fix printf() length modifier cmd_sf.c: fix printf() length modifier Make printf and vprintf safe from buffer overruns vsprintf: Move function documentation into header file Add safe vsnprintf and snprintf library functions Move vsprintf functions into their own header Conflicts: tools/mkenvimage.c Signed-off-by: Wolfgang Denk <wd@denx.de>
| * x86: Import code from coreboot's libpayload to parse the coreboot tableGabe Black2011-12-19-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | This change also forces the lib_sysinfo structure to be in the .data section. Otherwise it ends up in the .bss section. U-boot assumes that it doesn't need to copy it over during relocation, and instead fills that whole section with zeroes. If we really were booting from ROM that would be appropriate, but we need some information from the coreboot tables (memory size) before then and have to fill that structure before relocation. We skirt u-boot's assumption by putting this in .data where it assumes there is still read only but non-zero data. Signed-off-by: Gabe Black <gabeblack@chromium.org>
| * x86: Initial commit for running as a coreboot payloadGabe Black2011-12-19-0/+235
| | | | | | | | | | | | | | | | Add a target for running u-boot as a coreboot payload in boards.cfg, a board, CPU and a config. This is a skeleton implementation which always reports the size of memory as 64 MB. Signed-off-by: Gabe Black <gabeblack@chromium.org>
| * CHECKPATCH: ./board/esd/hh405/logo_320_240_8bpp.cMarek Vasut2011-12-18-521/+1042
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/hh405/logo_1024_768_8bpp.cMarek Vasut2011-12-18-2544/+5087
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/hh405/logo_320_240_4bpp.cMarek Vasut2011-12-18-227/+454
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/hh405/logo_640_480_24bpp.cMarek Vasut2011-12-18-4209/+8417
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/apc405/logo_640_480_24bpp.cMarek Vasut2011-12-18-565/+1129
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/voh405/logo_320_240_4bpp.cMarek Vasut2011-12-18-77/+153
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/voh405/logo_640_480_24bpp.cMarek Vasut2011-12-18-1722/+3443
| | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Stefan Roese <sr@denx.de>
| * CHECKPATCH: ./board/esd/hh405/fpgadata.cMarek Vasut2011-12-18-2517/+5034
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/pci405/fpgadata.cMarek Vasut2011-12-18-746/+1492
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/tasreg/fpgadata.cMarek Vasut2011-12-18-5331/+10661
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/apc405/fpgadata.cMarek Vasut2011-12-18-2004/+4008
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/voh405/fpgadata.cMarek Vasut2011-12-18-2011/+4021
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/ash405/fpgadata.cMarek Vasut2011-12-18-2492/+4983
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/dasa_sim/fpgadata.cMarek Vasut2011-12-18-1952/+3903
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/ar405/fpgadata_xl30.cMarek Vasut2011-12-18-2436/+4872
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/ar405/fpgadata.cMarek Vasut2011-12-18-2750/+5500
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/plu405/fpgadata.cMarek Vasut2011-12-18-1179/+2358
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/wuh405/fpgadata.cMarek Vasut2011-12-18-1818/+3636
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/cpci405/fpgadata_cpci405.cMarek Vasut2011-12-18-342/+683
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/cpci405/fpgadata_cpci405ab.cMarek Vasut2011-12-18-1285/+2569
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/cpci405/fpgadata_cpci4052.cMarek Vasut2011-12-18-765/+1529
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/canbt/fpgadata.cMarek Vasut2011-12-18-404/+807
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/du405/fpgadata.cMarek Vasut2011-12-18-703/+1405
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/esd/cpciiser4/fpgadata.cMarek Vasut2011-12-18-2068/+4136
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
| * CHECKPATCH: ./board/dave/PPChameleonEVB/fpgadata.cMarek Vasut2011-12-18-1139/+2277
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Stefano Babic <sbabic@denx.de> Acked-by: Anatolij Gustschin <agust@denx.de>
* | tegra2: Fix out-of-tree build for Ventana.Thierry Reding2011-12-22-0/+1
| | | | | | | | | | | | | | | | | | | | Since Ventana is derived from Seaboard and requires seaboard.c to build, make sure board/nvidia/seaboard is created in the build tree. Signed-off-by: Thierry Reding <thierry.reding@avionic-design.de> Acked-by: Stephen Warren <swarren@nvidia.com> Tested-by: Stephen Warren <swarren@nvidia.com> Tested-by: Wolfgang Denk <wd@denx.de>
* | km/common: add toolchain variableHolger Brunck2011-12-20-2/+3
| | | | | | | | | | | | | | | | Add a variable "toolchain" and configure the rootpath for the nfsargs with this variable. Signed-off-by: Holger Brunck <holger.brunck@keymile.com> cc: Wolfgang Denk <wd@denx.de>
* | board/eltec/elppc/misc.c: Fix GCC 4.6 build warningAnatolij Gustschin2011-12-20-1/+1
| | | | | | | | | | | | | | | | | | Fix: misc.c: In function 'misc_init_r': misc.c:119:3: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] Signed-off-by: Anatolij Gustschin <agust@denx.de>
* | board/esd/cpci750/mv_eth.c: Fix GCC 4.6 build warningsAnatolij Gustschin2011-12-20-27/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix: mv_eth.c: In function 'mv64360_eth_real_open': mv_eth.c:425:6: warning: variable 'port_status' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'mv64360_eth_stop': mv_eth.c:643:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'mv64360_eth_xmit': mv_eth.c:719:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'mv64360_eth_receive': mv_eth.c:804:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'mv64360_eth_get_stats': mv_eth.c:903:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'mv64360_eth_update_stat': mv_eth.c:931:24: warning: variable 'dummy' set but not used [-Wunused-but-set-variable] mv_eth.c:930:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'mv64360_eth_print_stat': mv_eth.c:1012:15: warning: variable 'port_num' set but not used [-Wunused-but-set-variable] mv_eth.c: In function 'eth_clear_mib_counters': mv_eth.c:2069:15: warning: variable 'dummy' set but not used [-Wunused-but-set-variable Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Reinhard Arlt <reinhard.arlt@esd.eu>
* | board/samsung/universal_c210/universal.c: Fix build warningAnatolij Gustschin2011-12-20-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fix: universal.c: In function 's5pc210_phy_control': universal.c:273:7: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Lukasz Majewski <l.majewski@samsung.com> Cc: Minkyu Kang <mk7.kang@samsung.com> Acked-by: Minkyu Kang <mk7.kang@samsung.com>
* | PXA: Kill last remnants of set_GPIO_mode functionMarek Vasut2011-12-19-0/+6
| | | | | | | | | | | | | | | | GPIO configuration shall never be done inside a driver, never. Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Anatolij Gustschin <agust@denx.de> Cc: Albert ARIBAUD <albert.u.boot@aribaud.net>
* | ARM: tny_a9260: re-add MACH_TYPE_TNY_A9G20 and MACH_TYPE_TNY_A9260Anatolij Gustschin2011-12-19-5/+0
| | | | | | | | | | | | | | | | MACH_TYPE_TNY_A9G20 and MACH_TYPE_TNY_A9260 were removed from mach-types.h. Add them to the board config file. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Simon Glass <sjg@chromium.org>
* | ARM: sbc35_a9g20: re-add MACH_TYPE_SBC35_A9G20Anatolij Gustschin2011-12-19-1/+0
| | | | | | | | | | | | | | | | MACH_TYPE_SBC35_A9G20 was removed from mach-types.h. Add it to the board config file. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Simon Glass <sjg@chromium.org>
* | omap4_panda: Initialize the USB phyChris Lalancette2011-12-19-0/+59
| | | | | | | | | | | | | | | | | | | | During misc_init_r, make sure to setup the clocks properly for the USB hub on the pandaboard. With this in place, the USB hub and the ethernet works on the pandaboard. Signed-off-by: Chris Lalancette <clalancette@gmail.com> Acked-by: Aneesh V <aneesh@ti.com>
* | M28: Fix tab indent in u-boot.bdMarek Vasut2011-12-19-4/+4
| | | | | | | | | | | | | | Signed-off-by: Marek Vasut <marek.vasut@gmail.com> Cc: Wolfgang Denk <wd@denx.de> Cc: Detlev Zundel <dzu@denx.de> Cc: Stefano Babic <sbabic@denx.de>
* | Fix building for mx51evk boardAnatolij Gustschin2011-12-19-2/+4
|/ | | | | | | | | | | | | Fix: mx51evk.c:206:6: error: conflicting types for 'board_ehci_hcd_init' /u-boot/include/usb/ehci-fsl.h:254:5: note: previous declaration of 'board_ehci_hcd_init' was here We also fix board_ehci_hcd_init() for mx53loco board. Building for mx53loco worked since <usb/ehci-fsl.h> is not included here. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* usb:gadget:s5p Enable the USB Gadget framework at Exynos4210 (C210 Universal)Lukasz Majewski2011-12-16-0/+48
| | | | | | | | | | This commit enables support for USB Gadgets on the Exynos4210 (C210 Universal) reference target. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Cc: Minkyu Kang <mk7.kang@samsung.com> CC: Remy Bohmer <linux@bohmer.net>
* Merge branch 'agust@denx.de' of git://git.denx.de/u-boot-stagingWolfgang Denk2011-12-12-18/+37
|\ | | | | | | | | | | | | * 'agust@denx.de' of git://git.denx.de/u-boot-staging: pm9g45: init serial console before relocation pm9261: init serial console before relocation pm9263: init serial console before relocation
| * pm9g45: init serial console before relocationAsen Dimov2011-12-12-5/+11
| | | | | | | | | | | | The early messages can be seen on the debug console. Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
| * pm9261: init serial console before relocationAsen Dimov2011-12-12-5/+12
| | | | | | | | | | | | The early messages can be seen on the debug console. Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
| * pm9263: init serial console before relocationAsen Dimov2011-12-12-8/+14
| | | | | | | | | | | | The early messages can be seen on the debug console. Signed-off-by: Asen Chavdarov Dimov <dimov@ronetix.at>
* | MIPS: remove broken "tb0229" boardWolfgang Denk2011-12-12-1722/+0
| | | | | | | | | | | | | | The "tb0229" board has long been unmaintained, and is broken. Remove it. Signed-off-by: Wolfgang Denk <wd@denx.de>
* | board/ti/omap2420h4/omap2420h4.c: Fix GC 4.6 build warningWolfgang Denk2011-12-12-2/+1
| | | | | | | | | | | | | | | | | | | | | | Fix: omap2420h4.c: In function 'dram_init': omap2420h4.c:196:25: warning: variable 'cpu' set but not used [-Wunused-but-set-variable] Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Richard Woodruff <r-woodruff2@ti.com> Cc: Tom Rini <trini@ti.com>
* | board/mpl/common/isa.c: Fix GCC 4.6 build warningsDavid Müller (ELSOFT AG)2011-12-12-3/+3
|/ | | | | | | | | | | Fix: ../common/isa.c: In function 'handle_isa_int': ../common/isa.c:385:21: warning: variable 'isr2' set but not used [-Wunused-but-set-variable] ../common/isa.c:385:16: warning: variable 'isr1' set but not used [-Wunused-but-set-variable] Signed-off-by: David Mueller <d.mueller@elsoft.ch>
* MIPS: tb0229: fix compile errorsDaniel Schwierzeck2011-12-12-2/+2
| | | | | | | | This board breaks MAKEALL -a mips due to compile errors. This patch fixes only the parts causing the errors to get MAKEALL working. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@googlemail.com>
* mpc5200: digsy_mtc: Fix extension board detectionAnatolij Gustschin2011-12-12-7/+8
| | | | | | | | | | | | | | Switch to extension board detection using pci_find_device() instead of detecting by i2c access to EEPROM device on extension board. This is a cleaner detection method since EEPROM addresses can be different on different board revisions. This also avoids "i2c_read: failed to address chip" error messages in the boot log on boards without extension board which may confuse users. Signed-off-by: Anatolij Gustschin <agust@denx.de>
* Merge branch 'master' of git://git.denx.de/u-boot-usbWolfgang Denk2011-12-12-1/+348
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'master' of git://git.denx.de/u-boot-usb: USB: efikamx: Enable USB on EfikaMX and EfikaSB USB: Add generic ULPI layer and a viewport USB: EHCI: Allow EHCI post-powerup configuration in board files USB: mx51evk: add end enable USB host support on port 1 USB: mx53loco: add end enable USB host support on port 1 USB: MX5: Add MX5 usb post-init callback USB: MX5: Abstract out mx51 USB pixmux configuration USB: MX5: add generic USB EHCI support for mx51 and mx53 USB: MX5: add helper functions to enable USB clocks usb:gadget:s5p Enable the USB Gadget framework at GONI usb:gadget:s5p USB Device Controller (UDC) implementation ehci: speed up initialization usb: add help for missing start subcommand cosmetic: remove excess whitespace from usb command help usb: align usb_endpoint_descriptor to 16-bit boundary usbtty: init endpoints prior to startup events pxa: convert pxa27x_udc to use read and write functions pxa: activate the first usb host port on pxa27x by default pxa: fix usb host register mismatch ehci-fsl: correct size of ehci caplength USB: Add usb_event_poll() to get keyboards working with EHCI USB: gadaget: add Marvell controller support USB: Fix complaints about strict aliasing in OHCI-HCD USB: Drop dead code from usb_kbd.c USB: Rework usb_kbd.c USB: Add functionality to poll the USB keyboard via control EP