r271250 (dumbbell): vt(4): Change the terminal and buffer sizes, even without a font

This fixes a bug where scroll lock would not work for tty #0 when using
vt_vga's textmode. The reason was that this window is created with a
static 256x100 buffer, larger than the real size of 80x25.

Now, in vt_change_font() and vt_compute_drawable_area(), we still
perform operations even of the window has no font loaded (this is the
case in textmode here vw->vw_font == NULL). One of these operation
resizes the buffer accordingly.

In vt_compute_drawable_area(), we take the terminal size as is (ie.
80x25) for the drawable area.

The font argument to vt_set_border() is removed (it was never used) and
the code now uses the computed drawable area instead of re-doing its own
calculation.

Reported by:	Harald Schmalzbauer <h.schmalzbauer_omnilan.de>
Tested by:	Harald Schmalzbauer <h.schmalzbauer_omnilan.de>
MFC after:	3 days
fbd: Fix a bug where vt_fb_attach() success would be considered a failure

vt_fb_attach() currently always returns 0, but it could return a code
defined in errno.h. However, it doesn't return a CN_* code. So checking
its return value against CN_DEAD (which is 0) is incorrect, and in this
case, a success becomes a failure.

The consequence was unimportant, because the caller (drm_fb_helper.c)
would only log an error message in this case. The console would still
work.

Approved by:	nwhitehorn

r269779
vt(4): Add cngrab() and cnungrab() callbacks

They are used when a panic occurs or when entering a DDB session for
instance.

cngrab() forces a vt-switch to the console window, no matter if the
original window is another terminal or an X session. However, cnungrab()
doesn't vt-switch back to the original window currently.

MFC after:	1 week

r270705
pause_sbt(): Take the cold path (ie. use DELAY()) if KDB is active

This fixes a panic in the i915 driver when one uses debug.kdb.enter=1
under vt(4).

PR:		193269
Reported by:	emaste@
Submitted by:	avg@
MFC after:	3 days
MFC improved vt(4) font generation

r266851: Add VGAROM 8x8, 8x14 and 8x16 fonts for vt(4)

  These are converted from syscons(4) cp437 fonts.

r267306: Add vgarom font source

  These are in 'GNU Unifont' format, and are converted from syscons(4)
  cp437 fonts.

r267400: Add thin versions of VGAROM 8x8 and 8x16 fonts for vt(4)

  These are converted from syscons(4) cp437-thin-8x* fonts.

r267423: Build vt(4) fonts during buildworld

  vtfontcvt(8) is now built during buildworld, so can be used as a
  bootstrap tool to create vt(4) fonts from source .hex or .bdf font
  files, rather than having uuencoded binary fonts in the tree.

r267578: Add glyphs from converted syscons iso* fonts

  This consists of the unique glyphs from the following font files in
  /usr/share/syscons/fonts:

  iso*.fnt     ISO-8859-1 West European
  iso02*.fnt   ISO-8859-2 Central European
  iso04*.fnt   ISO-8859-4 Baltic
  iso05*.fnt   ISO-8859-5 Cyrillic
  iso07*.fnt   ISO-8859-7 Greek
  iso08*.fnt   ISO-8859-8 Hebrew
  iso09*.fnt   ISO-8859-9 Turkish
  iso15*.fnt   ISO-8859-15 West European

r268022: Rename the WITHOUT_VT_SUPPORT knob to WITHOUT_VT

  The _SUPPORT knobs have a consistent meaning which differs from the
  behaviour controlled by this knob.  As the knob is opt-out and has not
  appeared in a release the impact should be low.

Sponsored by:	The FreeBSD Foundation
MFC i915 opregion handling

r270516 (adrian): i915 driver - enable opregion handle; program CADL.

  add opregion handling for drm2 - which exposes some ACPI video
  configuration pieces that some Lenovo laptop models use to flesh out
  which video device to speak to.  This enables the brightness control
  in ACPI to work these models.

  The CADL bits are also important - it's used to figure out which ACPI
  events to hook the brightness buttons into.  It doesn't yet seem to
  work for me, but it does for the OP.

  Tested:

  * Lenovo X230 (mine)
  * OP: ASUS UX51VZ

  PR:	190186
  Submitted by:	Henry Hu <henry.hu.sh@gmail.com>
  Reviewed by:	dumbbell

r270571 (dumbbell): drm/i915: Add opt_acpi.h and acpi_if.h to the source files

  While here, sort the list of generated source files.

r270572 (dumbbell): drm/i915: Disable the build of i915 on PC98

  This module is of no use on this platform and now, i915 depends on ACPI
  anyway.

  Suggested by:	nyan@
XXX manpage date change from MFC vtfontcvt improvements:
XXX r269474 - pending rework

Allow to disable some special key combinations handled by vt(4), like debug
request, reboot request.

Requested by:	Claude Buisson

Sponsored by:	The FreeBSD Foundation

r269474
XXX not yet in HEAD - commit there first

Clang r205331

  Debug info: fix a crash when emitting IndirectFieldDecls, which were
  previously not handled at all.
  rdar://problem/16348575
XXX not in HEAD

Add assertion on null fieldoffsets while debugging PR 193347.