Re: [PATCH v4 0/4] Add support for DEVNAME:0.0 style hardware based addressing

From: Tony Lindgren
Date: Mon Dec 18 2023 - 01:49:29 EST


* Tony Lindgren <tony@xxxxxxxxxxx> [231208 10:29]:
> * Tony Lindgren <tony@xxxxxxxxxxx> [700101 02:00]:
> > * Tony Lindgren <tony@xxxxxxxxxxx> [700101 02:00]:
> > > We also prepare the serial core to handle the ttyS related quirks done
> > > in console_setup() to prepare things for eventually dropping the parsing
> > > from console_setup(). This can only happen after further changes to
> > > register_console().
> >
> > Petr FYI, so for dropping the console_setup() parsing, below is a hack
> > patch to see what goes wrong in register_console() if you have some ideas
> > on how to handle this.
> >
> > We end up with the console device backed up seria8250 instead of ttyS0,
> > and earlycon won't get properly disabled. And of course other consoles
> > beyond ttyS need to be also considered.
>
> Hmm so the following extra patch seems to fix the issues based on light
> testing. But is it safe to assume that if CON_PRINTBUFFER is set we can
> disable the bootconsole?

OK so no need for the CON_PRINTBUFFER change, it's wrong. I found a few
bugs causing this issue and a lot of other confusion while testing:

- In console_setup(), a DEVNAME:0.0 style console can get added with the
IO address turned into a ttyS console with some crazy index :) So we
need to bail out early on consoles with ':' in the name.

- The brl_opts can be empty or NULL, but we need to pass NULL to
__add_preferred_console() to get CON_CONSDEV flag set for DEVNAME:0.0
console. Otherwise the preferred_console won't get set and the boot
console won't get disabled.

- The console_set_on_cmdline flag needs to be set if console_setup()
does not call __add_preferred_console() for DEVNAME:0.0 style console
as otherwise try_enable_default_console() may get called before the
console handling driver has added the preferred console.

I think with these the remaining issues are sorted out :) I'll post a
v5 set with as RFC as it's getting close to the merge window.

Regards,

Tony