Playbook: display
scope: generic · severity: technique · confidence: proven · subsystem: display
Goal: the panel lights and holds a stable image.
Done when: a frame reaches the panel and survives a suspend/resume cycle.
Order
Section: Order- Panel identification. Get the vendor DSI init sequence: from the
downstream kernel’s panel driver, from a
dsi-panel-*.dtsi, or from the stock boot image. This is the single highest-value artefact — an init sequence you can transcribe beats any amount of guessing. - DSI host before panel. Confirm the DSI controller and PHY come up before blaming the panel driver.
- Compression. If the panel uses DSC, the parameters must match exactly. A DSC mismatch produces a lit-but-garbled panel, which reads as a timing problem and is not.
- Then the compositor. Only once a frame is provably reaching the panel.
The traps
Section: The traps- Until this playbook is done, never-judge-a-boot-by-the-screen governs
every other playbook. Flip
PORTHOLE_PANEL_STAYS_DARK=0in the profile when it is done — that is a real milestone. - A panel that lights at the bootloader’s timings and dies at yours means the bootloader left it initialised. Prove your init sequence runs from a cold panel.
