Re: [PATCH tty v11 1/2] serial: 8250: Switch to nbcon console, take 2
Jon Hunter <[email protected]>
| Newsgroups | org.kernel.vger.linux-serial,org.kernel.vger.linux-kernel,org.kernel.vger.linux-tegra |
|---|---|
| Message-ID | <[email protected]> |
Hi John, On 29/07/2026 13:04, John Ogness wrote: > Implement the necessary callbacks to switch the 8250 console driver > to perform as an nbcon console. > > Add implementations for the nbcon console callbacks: > > ->write_atomic() > ->write_thread() > ->device_lock() > ->device_unlock() > > and add CON_NBCON to the initial @flags. > > All hardware access in the callbacks is within unsafe sections. > The ->write_atomic() and ->write_thread() callbacks allow safe > handover/takeover per byte and add a preceding newline if they > take over from another context mid-line. > > For the ->write_atomic() callback, a new irq_work is used to defer > modem control since it may be called from a context that does not > allow waking up tasks. During suspend/resume the irq_work is not > used as this has been shown to cause suspend problems for some > hardware. Upon resume, any pending modem control is performed. > > Note: A new __serial8250_clear_IER() is introduced for direct > clearing of UART_IER during console writing (which will not be > holding the port lock for atomic printing or KDB/KGDB). This > allows restoring a lockdep check to serial8250_clear_IER() in > a follow-up commit. > > Signed-off-by: John Ogness <[email protected]> I accidently responded to V9, but responding here with the same report for completeness. This change is causing a boot regression for our Tegra20 and Tegra30 platforms. Reverting this on top of -next fixes the issue. Previously with V5 I did not see a boot issue only an issue in suspend. So far I have not had chance to dig any further. Jon -- nvpublic