Skip to content
This repository was archived by the owner on Nov 12, 2026. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 10 additions & 5 deletions mseries/aurora/test_qualification.py
Original file line number Diff line number Diff line change
Expand Up @@ -224,8 +224,9 @@ def test_unified72_snapshot_has_separate_identity_and_no_moving_branch_url(self)
self.assertRegex(data["source"]["sha256"], r"^[a-f0-9]{64}$")
self.assertTrue(data["kernel_release"]["unified72"].startswith("7.2.11-"))
lane = candidate.HERE / "unified72"
# wip4 carries the reviewed #157 display patch, one local DPTX-stall patch, and the
# three commits of upstream PR #186 (route DP-alt ports only once their sink asserts HPD).
# wip5 (merged integration/aurora 2f725546) carries the rebased #157 display patch, one local
# DPTX-stall patch, and the three commits of upstream PR #186 (route DP-alt ports only
# once their sink asserts HPD).
self.assertEqual([patch["file"] for patch in data["patches"]],
["0001-drm-apple-srgb-external-display-colour.patch",
"0002-drm-apple-free-dp-tunnel-route-from-silent-dcpext.patch",
Expand All @@ -249,9 +250,13 @@ def test_unified72_snapshot_has_separate_identity_and_no_moving_branch_url(self)
self.assertEqual(candidate.sha256(lane / "patches" / retired["file"]),
retired["sha256"])
self.assertEqual(data["kernel_release"]["unified72"],
"7.2.11-elementary-aurora72-wip4")
self.assertEqual(data["debian_package"], "linux-image-elementary-aurora72-wip4")
# The installed wip3 and wip2 packages must stay distinct from this one.
"7.2.11-elementary-aurora72-wip5")
self.assertEqual(data["debian_package"], "linux-image-elementary-aurora72-wip5")
self.assertEqual(data["source"]["commit"], "2f725546d6ac6afe0bd5abfa1a844971519f0076")
# udmabuf is not in the .20 recipe config this build starts from, so the overlay stays.
self.assertEqual(data["config"]["candidate"]["UDMABUF"], "y")
# The installed wip4, wip3 and wip2 packages must stay distinct from this one.
self.assertNotEqual(data["debian_package"], "linux-image-elementary-aurora72-wip4")
self.assertNotEqual(data["debian_package"], "linux-image-elementary-aurora72-wip3")
self.assertNotEqual(data["debian_package"], "linux-image-elementary-aurora72-wip2")
receipt = json.loads((lane / data["review_receipt"]).read_text())
Expand Down
21 changes: 21 additions & 0 deletions mseries/aurora/unified72/README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,26 @@
# Unified Aurora 7.2.10 build candidate

## wip5 revision 7 — October 29, 2026 (booted on the J314S; install record in [wip5/README.md](wip5/README.md))

The owner chose this re-pin. **Revision 7 pins `7.2.11-elementary-aurora72-wip5`**: merged omacom
`integration/aurora` at `2f725546` (still 7.2.11). Upstream #158, the wip4 source `bd526b3c`, merged on 2026-10-23
and is an ancestor of it, 388 commits back. The package is `linux-image-elementary-aurora72-wip5`, version
`7.2.11+elementary.aurora72.wip5-1`, so it cannot overwrite the installed wip4.

The five patches stay. **0001 (#157) is rebased on context only.** Its `dcp-internal.h` hunk now sits above the new
`dcp-panel-edid.h` include. Its `plane.c` hunk is regenerated 194 lines lower, because the old file applied there only
with fuzz 2. The added and removed lines are byte-identical to the wip4 file. 0002 (local) and 0003-0005 (#186) are
unchanged and apply with offsets only. `candidate.py prepare --profile unified72` applied all five to the full archive
in order (`git apply --check`, no fuzz) and passed the config gate.

**The `UDMABUF`/`DMABUF_HEAPS` overlay stays.** Upstream turned these on only in the `asahi.config` fragment
(`1b4997bb`). This build configures the `.20` recipe's full config, which has them off, so dropping the overlay
would turn udmabuf off. The enhancements lane (`enh1`, base `.20`) is unchanged for the same reason. Its
`0001-udmabuf` and `0006-egpu` patches stay.

**Not done:** native build (CI), KUnit, any boot. Receipt: [review-wip5-2026-10-29.json](review-wip5-2026-10-29.json).
wip4 revision 5 stays installed and is the running kernel; nothing is staged or armed.

## Upstream resync — October 29, 2026 (read-only)

Receipt: [upstream-resync-2026-10-29.json](upstream-resync-2026-10-29.json); branch snapshot:
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
diff --git a/drivers/gpu/drm/apple/dcp-internal.h b/drivers/gpu/drm/apple/dcp-internal.h
index 5aedd1acb59451..4c439ac9355af2 100644
index 0db9ff616da7f9..19c4bed14c2b1a 100644
--- a/drivers/gpu/drm/apple/dcp-internal.h
+++ b/drivers/gpu/drm/apple/dcp-internal.h
@@ -24,6 +24,9 @@
Expand All @@ -9,11 +9,11 @@ index 5aedd1acb59451..4c439ac9355af2 100644
+
+/* dcp.c: appledrm.external_srgb module parameter */
+extern bool external_srgb;
#include "dcp-panel-edid.h"
#include "dcp-180hz.h"
#include "iomfb.h"
#include "iomfb_h17p.h"
diff --git a/drivers/gpu/drm/apple/dcp.c b/drivers/gpu/drm/apple/dcp.c
index e84af350c7e081..0839eafc280b88 100644
index 14d3bdf6403357..4bb8c7ca1e6ea4 100644
--- a/drivers/gpu/drm/apple/dcp.c
+++ b/drivers/gpu/drm/apple/dcp.c
@@ -208,6 +208,11 @@ static bool unstable_edid = true;
Expand All @@ -29,10 +29,10 @@ index e84af350c7e081..0839eafc280b88 100644

bool dcp_is_external_h17p(struct apple_dcp *dcp)
diff --git a/drivers/gpu/drm/apple/iomfb_template.c b/drivers/gpu/drm/apple/iomfb_template.c
index ad3f1a5291bae1..b7227ff8136063 100644
index c1b0e21b65e5e6..38e681615c5551 100644
--- a/drivers/gpu/drm/apple/iomfb_template.c
+++ b/drivers/gpu/drm/apple/iomfb_template.c
@@ -2503,6 +2503,19 @@ void DCP_FW_NAME(iomfb_flush)(struct apple_dcp *dcp, struct drm_crtc *crtc, stru
@@ -2515,6 +2515,19 @@ void DCP_FW_NAME(iomfb_flush)(struct apple_dcp *dcp, struct drm_crtc *crtc, stru
req->surf[l].base.colorspace == DCP_COLORSPACE_BG_SRGB)
req->surf[l].base.colorspace = DCP_COLORSPACE_NATIVE;

Expand All @@ -53,7 +53,7 @@ index ad3f1a5291bae1..b7227ff8136063 100644
/* H17P external SDR RGB needs an sRGB source tag. Native
* tagging washes out the same pixel values on this profile.
diff --git a/drivers/gpu/drm/apple/parser.c b/drivers/gpu/drm/apple/parser.c
index 0de67aa8fe710e..bb8a49378fb005 100644
index 1d0638360251c6..f3265976768a7d 100644
--- a/drivers/gpu/drm/apple/parser.c
+++ b/drivers/gpu/drm/apple/parser.c
@@ -8,6 +8,7 @@
Expand Down Expand Up @@ -150,12 +150,12 @@ index 0de67aa8fe710e..bb8a49378fb005 100644
&unsafe_rgb8 : NULL);
else if (!strcmp(key, "ID"))
diff --git a/drivers/gpu/drm/apple/plane.c b/drivers/gpu/drm/apple/plane.c
index aa5bbc9551d2ce..f97bef93e9be35 100644
index cde215f62b1436..f922c6f24ce28d 100644
--- a/drivers/gpu/drm/apple/plane.c
+++ b/drivers/gpu/drm/apple/plane.c
@@ -228,12 +228,15 @@ static void apple_plane_atomic_update(struct drm_plane *plane,
struct drm_framebuffer *fb = base->fb;
const struct drm_format_info *fmt = fb->format;
@@ -422,12 +422,15 @@ static void apple_plane_atomic_update(struct drm_plane *plane,
}

/*
- * DCP doesn't support XBGR8 / XRGB8 / XBGR2101010 natively. Blending as
+ * DCP doesn't support XBGR8 / XRGB8 / XRGB2101010 / XBGR2101010
Expand Down
104 changes: 104 additions & 0 deletions mseries/aurora/unified72/review-wip5-2026-10-29.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
{
"schema": 1,
"reviewed_on": "2026-10-29",
"source": "2f725546d6ac6afe0bd5abfa1a844971519f0076",
"previous_source": "bd526b3c11ccf8e91d6240261beb3219d8f17f03",
"upstream_pr": null,
"upstream_status": "Source is omacom/linux-aurora integration/aurora at 2f725546 (7.2.11). #158 (the wip4 source) merged on 2026-10-23 and is an ancestor; 388 commits newer. #157 (head 9d3aeb24) and #186 (head 2a37f6f2) still open, unchanged.",
"patches": [
{
"file": "0001-drm-apple-srgb-external-display-colour.patch",
"upstream": "https://github.com/omacom/linux-aurora/pull/157",
"head": "9d3aeb24cb864d5f99a7172e9004884bf3c1a9a0",
"base_of_pr": "44d5afc79da79bb3b17a3ee7494cb8d07a1f1aaa",
"files": [
"drivers/gpu/drm/apple/dcp-internal.h",
"drivers/gpu/drm/apple/dcp.c",
"drivers/gpu/drm/apple/iomfb_template.c",
"drivers/gpu/drm/apple/parser.c",
"drivers/gpu/drm/apple/plane.c"
],
"applicability": "Rebased (context only) on the five files at 2f725546: dcp-internal.h hunk placed above the new dcp-panel-edid.h include, plane.c hunk regenerated at +194 lines (it applied before only with fuzz 2). Added/removed lines are byte-identical to the wip4 file. git apply --check passes with no fuzz.",
"previous_sha256": "9cd617e413c69006349e8ffa914ee0c16d1d7ba246d5afd9e1031aafbbf09573"
},
{
"file": "0002-drm-apple-free-dp-tunnel-route-from-silent-dcpext.patch",
"upstream": null,
"files": [
"drivers/gpu/drm/apple/dcp-fabric-core.c",
"drivers/gpu/drm/apple/dcp-fabric-core.h",
"drivers/gpu/drm/apple/dcp-fabric-test.c",
"drivers/gpu/drm/apple/dcp-fabric.c",
"drivers/gpu/drm/apple/dcp-internal.h",
"drivers/gpu/drm/apple/dcp.c"
],
"applicability": "Unchanged file. git apply --check passes in series order after the rebased 0001 at 2f725546, offsets only (git apply does not fuzz).",
"evidence": "mseries/aurora/hardware-tests/2026-10-22-j314s-wip3-dcpext1-dptx-wedge.md"
},
{
"file": "0003-drm-apple-dcp-let-a-typec-port-with-hpd-take-over-a-held-pipeline.patch",
"upstream": "https://github.com/omacom/linux-aurora/pull/186",
"head": "4da4932b130b21d7367d56859f558c4e8a8f101f",
"base_of_pr": "42672ed79dead511ecf65e96d988a98a0f94b5bb",
"files": [
"drivers/gpu/drm/apple/dcp-fabric.c"
],
"applicability": "Unchanged file. git apply --check passes in series order after the rebased 0001 at 2f725546, offsets only (git apply does not fuzz)."
},
{
"file": "0004-drm-apple-dcp-route-a-dp-alt-port-only-once-its-sink-asserts-hpd.patch",
"upstream": "https://github.com/omacom/linux-aurora/pull/186",
"head": "bd1ad7b9b2795b7d3b3c7e616a54b78f9c92c6e0",
"base_of_pr": "42672ed79dead511ecf65e96d988a98a0f94b5bb",
"files": [
"drivers/gpu/drm/apple/dcp-fabric.c"
],
"applicability": "Unchanged file. git apply --check passes in series order after the rebased 0001 at 2f725546, offsets only (git apply does not fuzz)."
},
{
"file": "0005-usb-typec-tipd-treat-enospc-as-a-taken-display-on-every-soc.patch",
"upstream": "https://github.com/omacom/linux-aurora/pull/186",
"head": "2a37f6f206456462970b3bbb3bf9bf8bd8944acd",
"base_of_pr": "42672ed79dead511ecf65e96d988a98a0f94b5bb",
"files": [
"drivers/usb/typec/tipd/cd321x-pm-test.c",
"drivers/usb/typec/tipd/cd321x-pm.h"
],
"applicability": "Unchanged file. git apply --check passes in series order after the rebased 0001 at 2f725546, offsets only (git apply does not fuzz)."
}
],
"full_tree_check": {
"command": "python3 mseries/aurora/candidate.py prepare --profile unified72 --cache ~/.cache/mseries-upstream/wip5 --output ~/.cache/mseries-upstream/wip5/prepared",
"result": "exit 0: git apply --check then git apply for 0001-0005 in order on the full extracted archive; config gate passed",
"source_fetch_method": "pinned-archive-sha256",
"prepared_config_sha256": "20efc4af999b142e5cac358b9567a00a24bf3b687b30d47cadccc194c888126d",
"resolved": {
"UDMABUF": "y",
"DMABUF_HEAPS": "y",
"DMABUF_HEAPS_SYSTEM": "y",
"DRM_AMDGPU": "n"
},
"localversion": "-elementary-aurora72-wip5"
},
"config_overlay": "Kept. The .20 recipe config used by candidate.py has '# CONFIG_UDMABUF is not set' and '# CONFIG_DMABUF_HEAPS is not set'; upstream enabled them only in the arch/arm64/configs/asahi.config fragment (1b4997bb), which this build does not read. Dropping the overlay would turn udmabuf off.",
"not_rerun": [
"kernel build (CI aurora-enhancements.yml decides)",
"candidate.py check host tests (no local rustc run here)",
"KUnit, including fabric_unresponsive_pipeline_test and the cd321x tests",
"64-fix semantic parity",
"any hardware test"
],
"known_interactions": [
"0001: upstream rewrote plane layout handling (8c26443, validate the plane layout sent to DCP); the premultiplied-format hunk is unchanged, but the build is the real check.",
"0002 and 0003/0004 both edit dcp-fabric.c; unchanged from wip4, offsets only. Their semantic interaction is still unreviewed.",
"Upstream thunderbolt DP-pairing deferral (7fcb47d, 3975d42, bc1b422) is new in this source and sits on the dock path that 0002-0004 also touch.",
"Config options added upstream after .20 (for example the CIO reset controller built in, 669333d2) take olddefconfig defaults here, because the build uses the .20 recipe config, as for wip4.",
"Upstream PR #163 is still not carried: it fixes the same tipd bug as 0005 and conflicts with it."
],
"archive_verification": {
"sha256": "3f1b9cd779cc4ff94b8ff0575388223e1da0894160763133eb6b836352272bad",
"bytes": 271150123,
"method": "Entire codeload gzip downloaded to ~/.cache and hashed locally (trust on first use: the pin is this digest); tar root read from the archive listing; Makefile reads VERSION 7, PATCHLEVEL 2, SUBLEVEL 11. git_tree_sha1 1702c514 is from the GitHub commit object, for the Git fallback.",
"archive_root": "linux-aurora-2f725546d6ac6afe0bd5abfa1a844971519f0076"
}
}
33 changes: 17 additions & 16 deletions mseries/aurora/unified72/series.json
Original file line number Diff line number Diff line change
@@ -1,31 +1,32 @@
{
"schema": 1,
"base_source": "c46d7dcdb8712ea9aeb0ce47b439ffae76371e55",
"revision": 6,
"revision": 7,
"source": {
"repository": "aurora-silicon/linux",
"commit": "bd526b3c11ccf8e91d6240261beb3219d8f17f03",
"repository": "omacom/linux-aurora",
"commit": "2f725546d6ac6afe0bd5abfa1a844971519f0076",
"git_url": "https://github.com/omacom/linux-aurora.git",
"git_tree_sha1": "a305f231d9137847c7f0ececca98e214cc30e792",
"upstream_pr": "https://github.com/omacom/linux-aurora/pull/158",
"name": "linux-aurora-bd526b3c11ccf8e91d6240261beb3219d8f17f03.tar.gz",
"url": "https://codeload.github.com/omacom/linux-aurora/tar.gz/bd526b3c11ccf8e91d6240261beb3219d8f17f03",
"archive_root": "linux-aurora-bd526b3c11ccf8e91d6240261beb3219d8f17f03",
"sha256": "881d5a061efa212ed28489311cc97ab6d9bf52891a6c7a00b18f0bbaff131957"
"git_tree_sha1": "1702c514fd6373bd0a81846c28dd1c030ebd663c",
"upstream_pr": null,
"upstream_ref": "integration/aurora (head on 2026-10-29; contains merged #158)",
"name": "linux-aurora-2f725546d6ac6afe0bd5abfa1a844971519f0076.tar.gz",
"url": "https://codeload.github.com/omacom/linux-aurora/tar.gz/2f725546d6ac6afe0bd5abfa1a844971519f0076",
"archive_root": "linux-aurora-2f725546d6ac6afe0bd5abfa1a844971519f0076",
"sha256": "3f1b9cd779cc4ff94b8ff0575388223e1da0894160763133eb6b836352272bad"
},
"kernel_release": {
"unified72": "7.2.11-elementary-aurora72-wip4"
"unified72": "7.2.11-elementary-aurora72-wip5"
},
"debian_package": "linux-image-elementary-aurora72-wip4",
"debian_version": "7.2.11+elementary.aurora72.wip4-1",
"debian_package": "linux-image-elementary-aurora72-wip5",
"debian_version": "7.2.11+elementary.aurora72.wip5-1",
"patches": [
{
"file": "0001-drm-apple-srgb-external-display-colour.patch",
"sha256": "9cd617e413c69006349e8ffa914ee0c16d1d7ba246d5afd9e1031aafbbf09573",
"sha256": "6dc8aadcdc0c7c39710d3b9164c388f11b0b2fa111b73e8e14a63bb759ba8fe1",
"upstream": "https://github.com/omacom/linux-aurora/pull/157",
"head": "9d3aeb24cb864d5f99a7172e9004884bf3c1a9a0",
"profile": "candidate",
"note": "drm/apple: sRGB surfaces and an sRGB link colorimetry for external displays (unmerged upstream PR #157, 5 files, +73/-6). Applies to the #158 head with small offsets; must be re-checked if #158 moves."
"note": "drm/apple: sRGB surfaces and an sRGB link colorimetry for external displays (unmerged upstream PR #157, 5 files, +73/-6). Rebased for wip5 (context only; previous sha256 9cd617e413c69006349e8ffa914ee0c16d1d7ba246d5afd9e1031aafbbf09573): the dcp-internal.h hunk now sits above the new dcp-panel-edid.h include and the plane.c hunk moved +194 lines after upstream's plane-layout rewrite. Added and removed lines are unchanged. Must be re-checked if #157 moves."
},
{
"file": "0002-drm-apple-free-dp-tunnel-route-from-silent-dcpext.patch",
Expand Down Expand Up @@ -71,7 +72,7 @@
"tools/asahi/pmp-bootargs-tests.rs",
"tools/asahi/pmp-power-tests.rs"
],
"qualification": "Same unmerged #158 source (head bd526b3c) and #157 patch as wip3, plus one local patch for the dcpext1 DPTX stall seen on the first wip3 dock plug (2026-10-22). Build-only candidate: patch application is checked on the exact source files and the pure routing logic was exercised in userspace; kernel build, KUnit, J314S boot, dock and recovery are NOT established. Replaces the wip3 pin in this file; wip3 stays installed and is the running trial kernel. Revision 6 adds upstream PR #186 (three commits, tested head 2a37f6f2) so ports route to a display controller only once their sink asserts HPD; it complements local patch 0002. Build-only; nothing booted.",
"qualification": "wip5: merged upstream source (omacom integration/aurora 2f725546, 7.2.11, 388 commits past the wip4 #158 head bd526b3c, which merged on 2026-10-23) with the same five patches: #157 rebased on context only, local 0002 and #186 (0003-0005) unchanged. Each applies in order with git apply and no fuzz. The UDMABUF/DMABUF_HEAPS overlay stays: the build configures the .20 recipe's full config, not upstream's asahi.config fragment, so the fragment's 1b4997bb settings do not reach this build. Build-only candidate: CI native build, KUnit, J314S boot, dock and recovery are NOT established. Replaces the wip4 pin in this file; wip4 (revision 5) stays installed and is the running kernel.",
"superseded_patches": [
{
"file": "0001-stock-bindgen-layout-policy.patch",
Expand All @@ -82,5 +83,5 @@
"note": "Historical local port for wip1; corresponding stock-bindgen default and BINDGEN_LAYOUT_TESTS opt-in are now carried in merged upstream source. Retained for provenance; not applied to wip2."
}
],
"review_receipt": "review-wip4-2026-10-27.json"
"review_receipt": "review-wip5-2026-10-29.json"
}
Loading