Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 542c98c0 authored by Mark A. Greer's avatar Mark A. Greer Committed by Paul Mackerras
Browse files

[POWERPC] Call add_preferred_console when MPSC is console



When a Marvell MPSC (serial controller) port is the specified
/chosen/stdout-path device, call 'add_preferred_console()' so the user
doesn't have to specify a 'console=ttyMMx' cmdline argument.

Signed-off-by: default avatarMark A. Greer <mgreer@mvista.com>
Acked-by: default avatarDale Farnsworth <dale@farnsworth.org>
Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
parent e3855fa5
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -12,6 +12,7 @@
#include <linux/stddef.h>
#include <linux/kernel.h>
#include <linux/init.h>
#include <linux/console.h>
#include <linux/mv643xx.h>
#include <linux/platform_device.h>

@@ -420,3 +421,30 @@ static int __init mv64x60_device_setup(void)
	return err;
}
arch_initcall(mv64x60_device_setup);

static int __init mv64x60_add_mpsc_console(void)
{
	struct device_node *np = NULL;
	const char *prop;

	prop = of_get_property(of_chosen, "linux,stdout-path", NULL);
	if (prop == NULL)
		goto not_mpsc;

	np = of_find_node_by_path(prop);
	if (!np)
		goto not_mpsc;

	if (!of_device_is_compatible(np, "marvell,mpsc"))
		goto not_mpsc;

	prop = of_get_property(np, "block-index", NULL);
	if (!prop)
		goto not_mpsc;

	add_preferred_console("ttyMM", *(int *)prop, NULL);

not_mpsc:
	return 0;
}
console_initcall(mv64x60_add_mpsc_console);