Ok, I didn't know such things existed.

I would think that a coreboot framebuffer would be preferred over a
VGA console, unless there was a system that only had the framebuffer
in uncached-not-write-combined mapping.

-------- Original Message --------
Subject: Re: [patch] remove NPCDISPLAY from AMD64
From: Jonathan Gray <[email protected]>
Date: Tue, June 16, 2020 9:39 pm
To: [email protected]
Cc: "[email protected]" <[email protected]>, [email protected]

On Tue, Jun 16, 2020 at 07:15:24PM -0700, [email protected]
wrote:
> You can't put an ISA CGA/EGA/MGA in an AMD64 system, so these can
> go away.

While it is incredibly unlikely someone would try, amd64 capable
"industrial" motherboards with ISA exist. We don't build
pcdisplay(4) on amd64 by default however.

> 
> Does anyone know if there is an ordering reason that the coreboot
> efifb_cb_cnattach console is after the VGA attach? Things could be
> cleaned up a bit if the efifb entry points just checked for both
> efi and coreboot framebuffers in the same function.

https://marc.info/?l=openbsd-tech&m=146609528005661&w=2

"The cnattach path still has to be different to allow vga to
try to attach before doing the coreboot version"

It seems the coreboot framebuffer support was intended to be a last
resort if vga and efi gop were not available going by the initial mail
when it was proposed as a different driver:

https://marc.info/?l=openbsd-tech&m=146558766111193&w=2

> 
> 
> Index: wscons_machdep.c
> ===================================================================
> RCS file: /cvs/src/sys/arch/amd64/amd64/wscons_machdep.c,v
> retrieving revision 1.14
> diff -u -p -r1.14 wscons_machdep.c
> --- wscons_machdep.c 14 Oct 2017 04:44:43 -0000 1.14
> +++ wscons_machdep.c 17 Jun 2020 02:05:34 -0000
> @@ -35,18 +35,12 @@
> #include <dev/cons.h>
> 
> #include "vga.h"
> -#include "pcdisplay.h"
> -#if (NVGA > 0) || (NPCDISPLAY > 0)
> +#if (NVGA > 0)
> #include <dev/ic/mc6845reg.h>
> #include <dev/ic/pcdisplayvar.h>
> -#if (NVGA > 0)
> #include <dev/ic/vgareg.h>
> #include <dev/ic/vgavar.h>
> #endif
> -#if (NPCDISPLAY > 0)
> -#include <dev/isa/pcdisplayvar.h>
> -#endif
> -#endif
> 
> #include "wsdisplay.h"
> #if NWSDISPLAY > 0
> @@ -146,10 +140,6 @@ wscn_video_init(void)
> #endif
> #if (NEFIFB > 0)
> if (efifb_cb_cnattach() == 0)
> - return (0);
> -#endif
> -#if (NPCDISPLAY > 0)
> - if (pcdisplay_cnattach(X86_BUS_SPACE_IO, X86_BUS_SPACE_MEM) == 0)
> return (0);
> #endif
> return (-1);
> 
> 
>

Reply via email to