9
0
Fork 0

console: factorise function to get the first enabled console

rename it to console_get_first_active

Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Jean-Christophe PLAGNIOL-VILLARD 2013-10-03 09:21:53 +02:00 committed by Sascha Hauer
parent 651a23a69e
commit 6a5121f748
5 changed files with 28 additions and 46 deletions

View File

@ -70,9 +70,7 @@ static int fdt_stdout_setup(struct device_node *blob)
goto error;
}
for_each_console(cdev)
if ((cdev->f_active & (CONSOLE_STDIN | CONSOLE_STDOUT)))
break;
cdev = console_get_first_active();
if (cdev)
sprintf(sername, "serial%d", cdev->dev->id);
else

View File

@ -590,26 +590,6 @@ err_quit:
return size;
}
/**
* @brief returns current used console device
*
* @return console device which is registered with CONSOLE_STDIN and
* CONSOLE_STDOUT
*/
static struct console_device *get_current_console(void)
{
struct console_device *cdev;
/*
* Assumption to have BOTH CONSOLE_STDIN AND STDOUT in the
* same output console
*/
for_each_console(cdev) {
if ((cdev->f_active & (CONSOLE_STDIN | CONSOLE_STDOUT)))
return cdev;
}
return NULL;
}
/**
* @brief provide the loadb(Kermit) or loadY mode support
*
@ -650,7 +630,7 @@ static int do_load_serial_bin(int argc, char *argv[])
}
}
cdev = get_current_console();
cdev = console_get_first_active();
if (NULL == cdev) {
printf("%s:No console device with STDIN and STDOUT\n", argv[0]);
return -ENODEV;

View File

@ -40,26 +40,6 @@
#define DEF_FILE "image.bin"
/**
* @brief returns current used console device
*
* @return console device which is registered with CONSOLE_STDIN and
* CONSOLE_STDOUT
*/
static struct console_device *get_current_console(void)
{
struct console_device *cdev;
/*
* Assumption to have BOTH CONSOLE_STDIN AND STDOUT in the
* same output console
*/
for_each_console(cdev) {
if ((cdev->f_active & (CONSOLE_STDIN | CONSOLE_STDOUT)))
return cdev;
}
return NULL;
}
static int console_change_speed(struct console_device *cdev, int baudrate)
{
int current_baudrate;
@ -134,7 +114,7 @@ static int do_loady(int argc, char *argv[])
if (cname)
cdev = get_named_console(cname);
else
cdev = get_current_console();
cdev = console_get_first_active();
if (!cdev) {
printf("%s:No console device %s with STDIN and STDOUT\n",
argv[0], cname ? cname : "default");
@ -202,7 +182,7 @@ static int do_loadx(int argc, char *argv[])
if (cname)
cdev = get_named_console(cname);
else
cdev = get_current_console();
cdev = console_get_first_active();
if (!cdev) {
printf("%s:No console device %s with STDIN and STDOUT\n",
argv[0], cname ? cname : "default");

View File

@ -108,3 +108,25 @@ int fputc(int fd, char c)
return 0;
}
EXPORT_SYMBOL(fputc);
/*
* @brief returns current used console device
*
* @return console device which is registered with CONSOLE_STDIN and
* CONSOLE_STDOUT
*/
struct console_device *console_get_first_active(void)
{
struct console_device *cdev;
/*
* Assumption to have BOTH CONSOLE_STDIN AND STDOUT in the
* same output console
*/
for_each_console(cdev) {
if ((cdev->f_active & (CONSOLE_STDIN | CONSOLE_STDOUT)))
return cdev;
}
return NULL;
}
EXPORT_SYMBOL(console_get_first_active);

View File

@ -53,4 +53,6 @@ extern struct list_head console_list;
#define CFG_PBSIZE (CONFIG_CBSIZE+sizeof(CONFIG_PROMPT)+16)
struct console_device *console_get_first_active(void);
#endif