Hi Arnd, 2015-10-21 17:57 GMT+09:00 Arnd Bergmann <arnd@xxxxxxxx>: > On Wednesday 21 October 2015 17:21:07 Masahiro Yamada wrote: >> Hi. >> >> >> >> >> I think there are three places where console could be enabled. >> >> [1] earlycon >> >> Each driver entry is declared with >> EARLYCON_DECLARE() or OF_EARLYCON_DECLARE() >> >> >> >> [2] console_init() >> >> Each entry is declared with console_initcall() >> >> >> >> [3] when driver is probed >> The console is usually enabled at this point >> unless some special treatment is done. >> >> >> >> >> My question is about [2]. >> >> I am using 8250-ish UART device. >> >> >> I noticed univ8250_console_match() and univ8250_console_setup() >> always fail at the point of [2] unless early_serial_setup() has been >> called in advance; >> however, it looks like early_serial_setup() is only used for old platforms. >> >> So, console cannot be enabled at [2] for modern platforms. >> >> >> My questions are: >> >> - Given that earlycon can be now available for major architectures such ARM, >> [2] will be deprecated at some point in the future? >> >> - I am implementing earlycon for my own UART driver. >> Is it meaningless to implement console_initcall() as well as earlycon? > > I would still do both. We don't enable earlycon by default at the moment, > and I'd say things should remain working with just console_initcall(). > > How closely related to 8250 is your hardware? If it's not all that different, > you should probably reuse the existing driver. Very close. It is already in the mainline. drivers/tty/serial/8250/8250_uniphier.c The core parts are shared with 8250_core.c I am trying to implement OF_EARLYCON_DECLARE() for that. I was just wondering if console_initcall() should work as well. As I said, I noticed the console_initcall() in 8250_core.c only works on very limited platforms. -- Best Regards Masahiro Yamada -- To unsubscribe from this list: send the line "unsubscribe linux-serial" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html