The patch series introduces a few cleanups aimed at reducing code duplication in the console driver.
Originally, patches 2 and 3 were part of NS16550 emulator v3 series [1]. Patch 1 removes some code duplication for logging via conring facility. Patch 2 (see [2]) removes code duplication between __putstr() and the rest of the driver. It also introduces private flags to select console devices for printout which simplifies some code paths. Patch 3 (see [3]) adds conring_flush() to send contents of conring to all currently available console devices. [1] https://lore.kernel.org/xen-devel/20250103-vuart-ns8250-v3-v1-0-c5d36b31d...@ford.com/ [2] https://lore.kernel.org/xen-devel/20250103-vuart-ns8250-v3-v1-16-c5d36b31d...@ford.com/ [3] https://lore.kernel.org/xen-devel/20250103-vuart-ns8250-v3-v1-17-c5d36b31d...@ford.com/ [4] CI link: https://gitlab.com/xen-project/people/dmukhin/xen/-/pipelines/1749584524 Denis Mukhin (3): xen/console: cleanup conring management xen/console: introduce console_puts() xen/console: introduce conring_flush() xen/drivers/char/console.c | 175 ++++++++++++++++++++++--------------- 1 file changed, 104 insertions(+), 71 deletions(-) -- 2.34.1