Re: [PATCH v3] x86/early_printk: add MMIO-based UARTs
From: Andy Shevchenko
Date: Tue Apr 08 2025 - 04:30:18 EST
On Mon, Apr 07, 2025 at 11:04:42PM +0000, Denis Mukhin wrote:
> On Monday, April 7th, 2025 at 9:38 AM, Andy Shevchenko <andriy.shevchenko@xxxxxxxxx> wrote:
> > On Mon, Mar 24, 2025 at 05:55:40PM -0700, Denis Mukhin wrote:
> > > During the bring-up of an x86 board, the kernel was crashing before
> > > reaching the platform's console driver because of a bug in the firmware,
> > > leaving no trace of the boot progress.
> > >
> > > It was discovered that the only available method to debug the kernel
> > > boot process was via the platform's MMIO-based UART, as the board lacked
> > > an I/O port-based UART, PCI UART, or functional video output.
> > >
> > > Then it turned out that earlyprintk= does not have a knob to configure
> > > the MMIO-mapped UART.
> > >
> > > Extend the early printk facility to support platform MMIO-based UARTs
> > > on x86 systems, enabling debugging during the system bring-up phase.
> > >
> > > The command line syntax to enable platform MMIO-based UART is:
> > > earlyprintk=mmio,membase[,{nocfg|baudrate}][,keep]
> > >
> > > Note, the change does not integrate MMIO-based UART support to:
> > > arch/x86/boot/early_serial_console.c
> > >
> > > Also, update kernel parameters documentation with the new syntax and
> > > add missing 'nocfg' setting to PCI serial cards description.
> >
> > Just for your information: Have you seen this rather old series of mine?
> >
> > https://bitbucket.org/andy-shev/linux/commits/branch/topic%2Fx86%2Fboot-earlyprintk
>
> This is a nice cleanup!
> Thanks for sharing.
>
> Sorry, I haven't seen the series above, I had to write a patch (which was months ago).
> It's just I could not post it on the mailing list until recently.
No problem. Can you look at
https://lore.kernel.org/r/20250407172214.792745-1-andriy.shevchenko@xxxxxxxxxxxxxxx
? I forgot to Cc you and that is an important fix.
--
With Best Regards,
Andy Shevchenko