mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-26 13:44:29 +08:00
Nokia RX-51: Convert to CONFIG_DM_KEYBOARD
Signed-off-by: Pali Rohár <pali@kernel.org>
This commit is contained in:
parent
5980925e2a
commit
f55d4978e1
@ -31,6 +31,7 @@
|
||||
#include <twl4030.h>
|
||||
#include <i2c.h>
|
||||
#include <video_fb.h>
|
||||
#include <keyboard.h>
|
||||
#include <asm/global_data.h>
|
||||
#include <asm/io.h>
|
||||
#include <asm/setup.h>
|
||||
@ -579,10 +580,10 @@ static u8 keybuf_head;
|
||||
static u8 keybuf_tail;
|
||||
|
||||
/*
|
||||
* Routine: rx51_kp_init
|
||||
* Routine: rx51_kp_start
|
||||
* Description: Initialize HW keyboard.
|
||||
*/
|
||||
int rx51_kp_init(void)
|
||||
static int rx51_kp_start(struct udevice *dev)
|
||||
{
|
||||
int ret = 0;
|
||||
u8 ctrl;
|
||||
@ -656,7 +657,7 @@ static void rx51_kp_fill(u8 k, u8 mods)
|
||||
* Routine: rx51_kp_tstc
|
||||
* Description: Test if key was pressed (from buffer).
|
||||
*/
|
||||
int rx51_kp_tstc(struct stdio_dev *sdev)
|
||||
static int rx51_kp_tstc(struct udevice *dev)
|
||||
{
|
||||
u8 c, r, dk, i;
|
||||
u8 intr;
|
||||
@ -712,14 +713,36 @@ int rx51_kp_tstc(struct stdio_dev *sdev)
|
||||
* Routine: rx51_kp_getc
|
||||
* Description: Get last pressed key (from buffer).
|
||||
*/
|
||||
int rx51_kp_getc(struct stdio_dev *sdev)
|
||||
static int rx51_kp_getc(struct udevice *dev)
|
||||
{
|
||||
keybuf_head %= KEYBUF_SIZE;
|
||||
while (!rx51_kp_tstc(sdev))
|
||||
while (!rx51_kp_tstc(dev))
|
||||
WATCHDOG_RESET();
|
||||
return keybuf[keybuf_head++];
|
||||
}
|
||||
|
||||
static int rx51_kp_probe(struct udevice *dev)
|
||||
{
|
||||
struct keyboard_priv *uc_priv = dev_get_uclass_priv(dev);
|
||||
struct stdio_dev *sdev = &uc_priv->sdev;
|
||||
|
||||
strcpy(sdev->name, "keyboard");
|
||||
return input_stdio_register(sdev);
|
||||
}
|
||||
|
||||
static const struct keyboard_ops rx51_kp_ops = {
|
||||
.start = rx51_kp_start,
|
||||
.tstc = rx51_kp_tstc,
|
||||
.getc = rx51_kp_getc,
|
||||
};
|
||||
|
||||
U_BOOT_DRIVER(rx51_kp) = {
|
||||
.name = "rx51_kp",
|
||||
.id = UCLASS_KEYBOARD,
|
||||
.probe = rx51_kp_probe,
|
||||
.ops = &rx51_kp_ops,
|
||||
};
|
||||
|
||||
static const struct mmc_config rx51_mmc_cfg = {
|
||||
.host_caps = MMC_MODE_4BIT | MMC_MODE_HS_52MHz | MMC_MODE_HS,
|
||||
.f_min = 400000,
|
||||
@ -753,3 +776,7 @@ U_BOOT_DRVINFOS(rx51_i2c) = {
|
||||
U_BOOT_DRVINFOS(rx51_watchdog) = {
|
||||
{ "rx51_watchdog" },
|
||||
};
|
||||
|
||||
U_BOOT_DRVINFOS(rx51_kp) = {
|
||||
{ "rx51_kp" },
|
||||
};
|
||||
|
@ -66,6 +66,7 @@ CONFIG_DM=y
|
||||
# CONFIG_DM_SEQ_ALIAS is not set
|
||||
# CONFIG_BLOCK_CACHE is not set
|
||||
CONFIG_DM_I2C=y
|
||||
CONFIG_DM_KEYBOARD=y
|
||||
# CONFIG_MMC_HW_PARTITIONING is not set
|
||||
# CONFIG_MMC_VERBOSE is not set
|
||||
CONFIG_MMC_OMAP_HS=y
|
||||
@ -78,7 +79,6 @@ CONFIG_USB_MUSB_UDC=y
|
||||
CONFIG_USB_OMAP3=y
|
||||
CONFIG_CFB_CONSOLE=y
|
||||
CONFIG_CFB_CONSOLE_ANSI=y
|
||||
# CONFIG_VGA_AS_SINGLE_DEVICE is not set
|
||||
CONFIG_SPLASH_SCREEN=y
|
||||
CONFIG_WATCHDOG_TIMEOUT_MSECS=31000
|
||||
CONFIG_WDT=y
|
||||
|
@ -77,21 +77,10 @@
|
||||
#define VIDEO_FB_16BPP_PIXEL_SWAP
|
||||
#define VIDEO_FB_16BPP_WORD_SWAP
|
||||
|
||||
/* functions for cfb_console */
|
||||
#define VIDEO_KBD_INIT_FCT rx51_kp_init()
|
||||
#define VIDEO_TSTC_FCT rx51_kp_tstc
|
||||
#define VIDEO_GETC_FCT rx51_kp_getc
|
||||
#ifndef __ASSEMBLY__
|
||||
struct stdio_dev;
|
||||
int rx51_kp_init(void);
|
||||
int rx51_kp_tstc(struct stdio_dev *sdev);
|
||||
int rx51_kp_getc(struct stdio_dev *sdev);
|
||||
#endif
|
||||
|
||||
/* Environment information */
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"usbtty=cdc_acm\0" \
|
||||
"stdin=usbtty,serial,vga\0" \
|
||||
"stdin=usbtty,serial,keyboard\0" \
|
||||
"stdout=usbtty,serial,vga\0" \
|
||||
"stderr=usbtty,serial,vga\0" \
|
||||
"slide=gpio input " __stringify(GPIO_SLIDE) "\0" \
|
||||
|
Loading…
Reference in New Issue
Block a user