@ -87,6 +87,7 @@
*/
# include <common.h>
# include <fdtdec.h>
# include <version.h>
# include <malloc.h>
# include <linux/compiler.h>
@ -2251,6 +2252,7 @@ int drv_video_init(void)
{
int skip_dev_init ;
struct stdio_dev console_dev ;
bool have_keyboard ;
/* Check if video initialization should be skipped */
if ( board_video_skip ( ) )
@ -2262,11 +2264,20 @@ int drv_video_init(void)
if ( board_cfb_skip ( ) )
return 0 ;
# if defined(CONFIG_VGA_AS_SINGLE_DEVICE)
have_keyboard = false ;
# elif defined(CONFIG_OF_CONTROL)
have_keyboard = ! fdtdec_get_config_bool ( gd - > fdt_blob ,
" u-boot,no-keyboard " ) ;
# else
have_keyboard = true ;
# endif
if ( have_keyboard ) {
debug ( " KBD: Keyboard init ... \n " ) ;
# if !defined(CONFIG_VGA_AS_SINGLE_DEVICE)
debug ( " KBD: Keyboard init ... \n " ) ;
skip_dev_init | = ( VIDEO_KBD_INIT_FCT = = - 1 ) ;
skip_dev_init | = ( VIDEO_KBD_INIT_FCT = = - 1 ) ;
# endif
}
if ( skip_dev_init )
return 0 ;
@ -2279,11 +2290,13 @@ int drv_video_init(void)
console_dev . puts = video_puts ; /* 'puts' function */
# if !defined(CONFIG_VGA_AS_SINGLE_DEVICE)
/* Also init console device */
console_dev . flags | = DEV_FLAGS_INPUT ;
console_dev . tstc = VIDEO_TSTC_FCT ; /* 'tstc' function */
console_dev . getc = VIDEO_GETC_FCT ; /* 'getc' function */
# endif /* CONFIG_VGA_AS_SINGLE_DEVICE */
if ( have_keyboard ) {
/* Also init console device */
console_dev . flags | = DEV_FLAGS_INPUT ;
console_dev . tstc = VIDEO_TSTC_FCT ; /* 'tstc' function */
console_dev . getc = VIDEO_GETC_FCT ; /* 'getc' function */
}
# endif
if ( stdio_register ( & console_dev ) ! = 0 )
return 0 ;