arranque-grafo: diagnóstico preciso del cero-parpadeo (ADR 0010 paso 4)
Evidencia por captura de framebuffer en OVMF-GOP: el kernel metal pinta todo el log de boot sobre el FB gráfico (simpledrm 160x50). Quitar console=tty0 no alcanza (VT_CONSOLE=y auto-registra); quiet/loglevel por LoadOptions no frena (fbcon redibuja el ring buffer + ignore_loglevel horneado fuerza salida). Fix identificado (requiere rebuild del kernel metal, cambia hash firmado): CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y + cmdline horneada quiet loglevel=3 vt.global_cursor_default=0 sin earlyprintk/ignore_loglevel (CONFIG_LOGO ya off). Seamless i915 sólo validable en metal Intel real. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -77,9 +77,19 @@ Un solo modo de video desde la firmware hasta el compositor:
|
||||
|
||||
1. Firmware GOP framebuffer → **`SYSFB_SIMPLEFB`** toma ese mismo FB → **i915 hace *seamless
|
||||
takeover*** sin cambio de modo. (El kernel ya tiene los tres bits `=y`.)
|
||||
2. Cmdline **`quiet loglevel=0`** + sin texto de fbcon ni cursor (`vt.global_cursor_default=0`), sin
|
||||
getty en el VT gráfico durante el arranque. **Ajuste pendiente:** hoy `FRAMEBUFFER_CONSOLE=y`
|
||||
puede pintar texto encima; afinar cmdline/config del kernel.
|
||||
2. Sin texto de fbcon ni cursor durante el arranque, sin getty en el VT gráfico. **Diagnóstico
|
||||
preciso (2026-07-10, evidencia por captura de framebuffer en OVMF-GOP, `scripts/`):** hoy el kernel
|
||||
metal pinta TODO el log de boot sobre el framebuffer gráfico (simpledrm "switching to colour frame
|
||||
buffer device 160x50" + decenas de líneas). Causa: `CONFIG_VT_CONSOLE=y` registra el VT como consola
|
||||
automáticamente (quitar `console=tty0` NO alcanza — probado), y `quiet loglevel=0` por LoadOptions NO
|
||||
lo frena (fbcon redibuja el ring buffer al tomar el FB a ~0.6s; además el `ignore_loglevel earlyprintk`
|
||||
HORNEADO en `CONFIG_CMDLINE` fuerza la salida). **Fix (requiere rebuild del kernel metal, cambia el
|
||||
hash firmado):** (a) `CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y` — fbcon no toca el FB hasta el
|
||||
primer output ⇒ queda negro; (b) cmdline horneada → quitar `earlyprintk=efi,keep ignore_loglevel`,
|
||||
añadir `quiet loglevel=3 vt.global_cursor_default=0`; (c) `CONFIG_LOGO` ya está off ✓. GOTCHA de
|
||||
validación: con `quiet` los marcadores serie kernel-side desaparecen ⇒ los harness EFI deben apoyarse
|
||||
en los marcadores userspace tee'ados a `/dev/ttyS0` (que sobreviven `quiet`). El *seamless* i915 (1)
|
||||
sólo se valida en metal Intel real (OVMF no trae i915).
|
||||
3. **mirada abre el DRM master directo** y lo sostiene desde el menú hasta el escritorio — nunca
|
||||
suelta, nunca re-modeset.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user