* Andy Shevchenko <andy.shevche...@gmail.com> [180517 16:41]: > On Thu, May 17, 2018 at 4:56 PM, Tony Lindgren <t...@atomide.com> wrote: > > * Andy Shevchenko <andriy.shevche...@linux.intel.com> [180516 13:12]: > >> On Wed, 2018-05-16 at 12:47 +0200, Sebastian Andrzej Siewior wrote: > >> > But since I am on it. You have to enable runtime-PM for the UART. So > >> > what is the problem if you simply don't enable it for the UART which > >> > used as the kernel console? > >> > >> How do I know at the ->probe() time that device in question is going to > >> be kernel console? Maybe I missed simple way of it. > > > > Hmm parse the kernel cmdline maybe? :) > > > > BTW, kernel already has earlycon doing exactly what you're trying to do. > > I'm sorry, I didn't follow. What exactly earlycon does?
It provides a console very early on, see earlycon in Documentation/admin-guide/kernel-parameters.txt > The problem is in 8250 driver. The issue with runtime PM used in atomic > context. So how about add some "noidle" kernel command line parameter for console that calls pm_runtime_forbid() and then you have the UART permanently on. Hmm I guess you could make also serial8250_rpm_get() do nothing based on that. I do agree the serial runtime PM has an issue if it depends on pm_runtime_irq_safe() being set. > So, I can, of course just remove callbacks from the console ->write(). > Though it will prevent to use kernel console anyway. Please et's not start breaking things, we already see a constant flow of regressions on weekly basis. Regards, Tony