i915515 - video driver for Intel integrated graphics, from i830 to
Alder Lake.
Port of the Linux 5.15 i915 driver.

Families: gen2-gen5 (i830 to Ironlake), Sandy Bridge, Ivy Bridge,
Haswell, Broadwell, Atom (Bay Trail, Cherry Trail, Apollo Lake, Gemini
Lake), Skylake, Kaby Lake, Coffee Lake, Comet Lake (also on 500 series
boards), Ice Lake, Jasper/Elkhart Lake, Tiger Lake, Rocket Lake, Alder
Lake (S and P).  Alder Lake is preliminary in Linux 5.15 (force_probe),
the driver probes it anyway.  Discrete cards (DG1, Arc) are not supported.

Tested on real hardware: GMA 3150 (Pineview D525), 915GM, Q33.
Quake2 and Quake3 run with hardware OpenGL there (Mesa i915_dri).

What works:
 - video modes, VGA/LVDS/DVI/HDMI/DP outputs (VBT from the OpRegion
   when the BIOS has one)
 - 3D for Mesa: GEM buffers, command submission, CPU and GTT maps,
   tiling; gen3 tested with i915_dri, gen4+ (i965_dri) not yet
 - hardware cursor

Not done:
 - no vsync: windowed and fullscreen 3D may tear
 - frame buffer compression and panel self refresh are off (the kernel
   draws into the desktop buffer without telling the driver)
 - no GuC/HuC firmware, no video decoding
 - one monitor only, no HDMI/DP audio

Files:
  i915515          the loader
  i915515.dll      the driver (same folder as the loader)
  firmware/i915/   <chip>_dmc_*.bin (linux-firmware, Skylake and newer)

The firmware is looked for in /colibrios/drivers/gpu/firmware,
/colibrios/drivers/amdgpu515/firmware and /sys/drivers/firmware, or only
in the folder given with -f.  Without it the display works, only without
its power saving states.  Older chips need no firmware.

Usage: <path>/i915515 <command line>

Command line options:
 -l<full path to a log file>  where the driver writes its log.
    No log file without it (messages still go to the debug board).
 -m<width>x<height>[x<refresh>]  initial video mode; the monitor's
    preferred mode when omitted
 -f<folder>  firmware folder (it must contain i915/*.bin)
 -v<0-8>  how much to log, 6 by default, 7 adds debug messages
 -d<hex>  DRM debug categories, e.g. -d1f6 together with -v7

Example:
/colibrios/drivers/gpu/i915515 -l/usbhd0/1/i915515.log

Video modes can be changed in SYSPANEL -> VideoMode.

If the screen stays black or the system hangs, please keep the log (-l)
and the debug board, and report what happens with your card's PCI ID.
