* Andy Shevchenko <andy.shevchenko@xxxxxxxxx> [180522 21:42]: > On Thu, May 17, 2018 at 10:30 PM, Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > 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. > > IIUC _forbid() can be overwritten via sysfs. > And I would prefer to do other way around, something like console.idle > and put default for OMAP to yes and no for everything else. OK yeah console.idle sounds good to me. We should default to a safe option. > > Hmm I guess you could make also serial8250_rpm_get() do nothing > > based on that. > > Have you seen entire series which I keep here: > https://bitbucket.org/andy-shev/linux/branch/topic/uart/rpm? > Among other things it gets rid of those specific callbacks entirely. Well I was not Cc:ed on it, I browsed it in some archive and it seemed unsafe to me. But if you figured out a way to do it conditionally based on console.idle without causing regressions. > > I do agree the serial runtime PM has an issue if it depends on > > pm_runtime_irq_safe() being set. > > It's more than an issue. The so called "support" of RPM for UART is > _based on the hack_. > I would love to NAK that in the first place if I would have known of it in time. Hmm well it seems that you too have been patching the 8250_rpm functions for years and then now what after multiple years you hit this issue? :) > >> 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. > > Now we are stick with a hack and the case based on that is against > fixing things. > This is how it looks from my side. Sorry yeah I agree there are issues, but let's fix it properly with no regressions. Regards, TOny -- 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