Skip to content

drm/apple: qualify advertised H17P 1080p180 RGB8 timing - #291

Closed
RyanTheTide wants to merge 1 commit into
aurora-wipfrom
diag/h17p-1080p180-rgb8-20261013
Closed

RyanTheTide wants to merge 1 commit into
aurora-wipfrom
diag/h17p-1080p180-rgb8-20261013

Conversation

@RyanTheTide

Copy link
Copy Markdown
Contributor

Problem and diagnostic

Neo filters the Acer's advertised 1080p180 timing because firmware marks its timing-local SDR colour candidate unsafe. The current Plugable-route capture reproduces this: normal parsing exposes 13 modes; this opt-in exposes 14, adding only timing 74 / colour 77.

Add a default-off, external-H17P-only RGB8 diagnostic constrained to the captured 1920×1080 timing (2080×1106 total, 11796583/65536 Hz). Retain DSC, colour-range, depth, gamut and parser bounds; never make the diagnostic mode preferred or use it for synthesized EDID timing. No link or timing registers are changed.

Validation

  • 196 production-parser cases with ASan/UBSan; 23 metadata cases and lifetime regressions pass.
  • Existing 13 modes remain byte-identical against the private current-route capture.
  • Isolated ARM64 appledrm W=1 build passes with unchanged R41 config and exact recorded producer. Initial producer mismatch failure retained.
  • Independent root source review completed. Hardware qualification pending; this draft does not establish that firmware's unsafe timing is production-safe.

Provenance

Independently authored code and generated test dictionaries, based on existing public parser contracts and privately retained hardware observations. No raw monitor payloads, serials or private implementation are published. Generated-by/Assisted-by/Signed-off-by trailers are retained.

A captured external timing has a scored full-range SDR RGB8 color element
but lists it as unsafe, so normal policy rejects the mode. Add an explicit
boot-time diagnostic that considers that timing-local candidate only when
normal selection failed. Match the observed 2080x1106 total and fixed-point
11796583/65536 Hz rate, require progressive nonvirtual metadata, and retain
DSC, range, depth, gamut, parser and link restrictions.

Keep the option off by default and restrict its caller to external H17P.
Diagnostic-added modes never become preferred or supply synthesized EDID
preferred timing. Preserve all existing safe selections and other profiles.
Document that current-route capture and separate hardware review are required.

Validate with 196 production-parser ASan/UBSan cases, metadata/lifetime
regressions, the privately retained current-route capture and an isolated
W=1 appledrm build using the unchanged R41 config and recorded producer.
The capture adds only timing74/color77; all13 normal modes remain identical.
No hardware execution or production rate qualification is claimed.

Signed-off-by: Ryan Murray <ryan@aurorasilicon.org>
Assisted-by: LLM
@RyanTheTide

Copy link
Copy Markdown
Contributor Author

Hardware qualification update: Neo drove the Acer QG270 S3 through the Plugable dock at 1920×1080, 180.00157 Hz, using timing 74 / colour 77 (8-bit full-range SDR sRGB, DSC off). DCP and GNOME both reported the active mode; the owner confirmed normal movement and colours.

One physical unplug/replug also returned a working image and cursor. After that reconnect, the monitor identity became unknown and GNOME selected 120 Hz; 180 Hz remained available and the owner manually selected it successfully. This is still a diagnostic PR. Fresh monitor identity after reconnect is unresolved, and no production-safe generalization of the firmware unsafe list is claimed.

@RyanTheTide
RyanTheTide force-pushed the diag/h17p-1080p180-rgb8-20261013 branch from 520e88c to 5f92656 Compare October 13, 2026 15:24
@RyanTheTide

Copy link
Copy Markdown
Contributor Author

Superseded as a diagnostic by #293. R64 exposes the guarded catalog timing automatically, with no experimental_h17p_1080p180_rgb8 module option: cold 1080p180 and awake GNOME Acer identification/180 Hz are verified, including explicit RTC-to-awake recovery. The manual opt-in experiment in this PR is unnecessary for that candidate. #293 remains draft for the remaining physical hotplug/orientation and source-review gates; this closure does not claim a beta release or integration into aurora-wip. The source branch and exact head 5f92656 are retained.

@RyanTheTide
RyanTheTide deleted the diag/h17p-1080p180-rgb8-20261013 branch October 14, 2026 01:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant