Show a cover letter.

GET /api/1.1/covers/2220758/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2220758,
    "url": "http://patchwork.ozlabs.org/api/1.1/covers/2220758/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/ubuntu-kernel/cover/20260408002417.231437-1-acelan.kao@canonical.com/",
    "project": {
        "id": 15,
        "url": "http://patchwork.ozlabs.org/api/1.1/projects/15/?format=api",
        "name": "Ubuntu Kernel",
        "link_name": "ubuntu-kernel",
        "list_id": "kernel-team.lists.ubuntu.com",
        "list_email": "kernel-team@lists.ubuntu.com",
        "web_url": null,
        "scm_url": null,
        "webscm_url": null
    },
    "msgid": "<20260408002417.231437-1-acelan.kao@canonical.com>",
    "date": "2026-04-08T00:24:16",
    "name": "[SRU,R,0/1] drm/i915/lnl+/tc: Fix false disconnect of active DP-alt TC port during long HPD pulse",
    "submitter": {
        "id": 2976,
        "url": "http://patchwork.ozlabs.org/api/1.1/people/2976/?format=api",
        "name": "AceLan Kao",
        "email": "acelan.kao@canonical.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/ubuntu-kernel/cover/20260408002417.231437-1-acelan.kao@canonical.com/mbox/",
    "series": [
        {
            "id": 499051,
            "url": "http://patchwork.ozlabs.org/api/1.1/series/499051/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/ubuntu-kernel/list/?series=499051",
            "date": "2026-04-08T00:24:16",
            "name": "drm/i915/lnl+/tc: Fix false disconnect of active DP-alt TC port during long HPD pulse",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/499051/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2220758/comments/",
    "headers": {
        "Return-Path": "<kernel-team-bounces@lists.ubuntu.com>",
        "X-Original-To": "incoming@patchwork.ozlabs.org",
        "Delivered-To": "patchwork-incoming@legolas.ozlabs.org",
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=fail reason=\"signature verification failed\" (2048-bit key;\n unprotected) header.d=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=LgXT3MCs;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ubuntu.com\n (client-ip=185.125.189.65; helo=lists.ubuntu.com;\n envelope-from=kernel-team-bounces@lists.ubuntu.com;\n receiver=patchwork.ozlabs.org)"
        ],
        "Received": [
            "from lists.ubuntu.com (lists.ubuntu.com [185.125.189.65])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fr3jF2F2Rz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 08 Apr 2026 10:24:33 +1000 (AEST)",
            "from localhost ([127.0.0.1] helo=lists.ubuntu.com)\n\tby lists.ubuntu.com with esmtp (Exim 4.86_2)\n\t(envelope-from <kernel-team-bounces@lists.ubuntu.com>)\n\tid 1wAGiX-0003bb-6E; Wed, 08 Apr 2026 00:24:25 +0000",
            "from mail-qk1-f169.google.com ([209.85.222.169])\n by lists.ubuntu.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.86_2) (envelope-from <acelan@gmail.com>) id 1wAGiV-0003b2-VB\n for kernel-team@lists.ubuntu.com; Wed, 08 Apr 2026 00:24:24 +0000",
            "by mail-qk1-f169.google.com with SMTP id\n af79cd13be357-8d933da14f0so218901085a.2\n for <kernel-team@lists.ubuntu.com>; Tue, 07 Apr 2026 17:24:23 -0700 (PDT)",
            "from localhost (211-75-139-220.hinet-ip.hinet.net. [211.75.139.220])\n by smtp.gmail.com with ESMTPSA id\n af79cd13be357-8db0d85a237sm57877085a.5.2026.04.07.17.24.19\n for <kernel-team@lists.ubuntu.com>\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 07 Apr 2026 17:24:21 -0700 (PDT)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1775607862; x=1776212662; darn=lists.ubuntu.com;\n h=content-transfer-encoding:mime-version:message-id:date:subject:to\n :from:sender:from:to:cc:subject:date:message-id:reply-to;\n bh=6CEMrl/vXshS4OjFZphFfpAT/WMvKeDsA3FSNtHYEJ0=;\n b=LgXT3MCssR/bs/0uxuFOAOuD7DMrFPELpyq/8TkaESO2+f/KfOAODU3b+XT/ss2Axn\n 3JcmurSss6tf3deWyNFAqZsZUisCw7Vuet8O6p+fHOUTVc9vzTRKyAcmdhgdxgCw0eGX\n j+RHtUtGJAsU7dq/cCFnyBZXwrzGIJmA7KlmevOdYfvej5VFwh41ycJyMmGBf/XOjLOk\n PapZ7xvI0LbfNLAFsWNz68Ox8zNxOg9r4mCUu+tuXUVkVthAvcMd2QVOFIEXTyGWhj2r\n xNUg2snnbDguq/00BBWR/I+TFJBh3LsvFT3Esg/xDANG0CkqiuwEjdmyqYWbIgCwohp1\n a42Q==",
        "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1775607862; x=1776212662;\n h=content-transfer-encoding:mime-version:message-id:date:subject:to\n :from:sender:x-gm-gg:x-gm-message-state:from:to:cc:subject:date\n :message-id:reply-to;\n bh=6CEMrl/vXshS4OjFZphFfpAT/WMvKeDsA3FSNtHYEJ0=;\n b=NTGYqen+JbZiLND0axOHvXHsGDAdc0IARAoBleEWEjoIsNVD3o0//0XMk+R8/Shok3\n wCnfgy2Cqi1G2K4G+wu3kVvWtVV5LGwi7Uqe5+ZDyygi7sw7ldi1sPfcAOtoPRBy1k07\n bSsRFKuQlDZq7HvJ6hYZbvPB2zgVNQSavo7BvzbJzSUD7Hl21mkJf7eYqPpPq+jPmT/5\n UHe7rhLDftg4G/MUJS3Lgi13AIwKi8mD6QPH4jQ50t4IZRAglLN7aCqFFCtXY+AQtl1m\n spRZCYBYO9cZVzmWuXq5uCG0+RKy6y0asbqqe3tmFVcrrItGUGG7MoP1D6H2M/mKuhVW\n FOJg==",
        "X-Gm-Message-State": "AOJu0YyJCYGbhjqnvg7R1vcbKf/5cpd5QxRg2c/UUrEaEzk40TLfvmqI\n K1cxG/+ncJr/tBmRCsqp96gsL17zzxDluirTEL6b2knkDPPKsiybK7sEfWhB8Db1",
        "X-Gm-Gg": "AeBDieto27WwrtaHWHgpGKSYV525reRfIFHz7wyPCY9wcd26TSIRgMWNP/lIYXMS+IA\n zD5e+6xHxCRP6YnwHYpckvDnbG6kAIF6L+hVcABf4jOhwl4sOKSxsua6ZBUMt0vTugyn4S+jVTn\n fN0m6tVqnqGqbyXsmocq/XEPLLBDESEEnwQ4I2Kypenav8FfaqJwLZpp0xapsBu4LR+OKDUtkl1\n ch55LWLNMdM5V8Wr53AhuylFLbQMmgiwe0EiWyFi8j4UBl7HKMwzY+NcayH2FRl9/T7fswvfj5z\n 7QquLQjbWFhBWLJOoljpxZ+0qjOAgC97SBSNBy/zfxkMUBmdvvTD+4J51+gSG9lPRz3UCeCoI9v\n GghK1+iDKkXM+nCWsfe8EIBXdc+zi+tjZHrSZKjzWW91l5BuuX+cNq+S5oyQicNaJQw5D12t8oB\n wlfrjM/WwTSg+Khn1oL8WSDj1z/5AAJVfBG2yDxrpXPzFPfOiMrwXx",
        "X-Received": "by 2002:a05:620a:6ccc:b0:8cf:c56f:cadd with SMTP id\n af79cd13be357-8d41bbd69d5mr2740670585a.13.1775607861554;\n Tue, 07 Apr 2026 17:24:21 -0700 (PDT)",
        "From": "AceLan Kao <acelan.kao@canonical.com>",
        "To": "kernel-team@lists.ubuntu.com",
        "Subject": "[SRU][R][PATCH 0/1] drm/i915/lnl+/tc: Fix false disconnect of active\n DP-alt TC port during long HPD pulse",
        "Date": "Wed,  8 Apr 2026 08:24:16 +0800",
        "Message-ID": "<20260408002417.231437-1-acelan.kao@canonical.com>",
        "X-Mailer": "git-send-email 2.53.0",
        "MIME-Version": "1.0",
        "Received-SPF": "pass client-ip=209.85.222.169; envelope-from=acelan@gmail.com;\n helo=mail-qk1-f169.google.com",
        "X-BeenThere": "kernel-team@lists.ubuntu.com",
        "X-Mailman-Version": "2.1.20",
        "Precedence": "list",
        "List-Id": "Kernel team discussions <kernel-team.lists.ubuntu.com>",
        "List-Unsubscribe": "<https://lists.ubuntu.com/mailman/options/kernel-team>,\n <mailto:kernel-team-request@lists.ubuntu.com?subject=unsubscribe>",
        "List-Archive": "<https://lists.ubuntu.com/archives/kernel-team>",
        "List-Post": "<mailto:kernel-team@lists.ubuntu.com>",
        "List-Help": "<mailto:kernel-team-request@lists.ubuntu.com?subject=help>",
        "List-Subscribe": "<https://lists.ubuntu.com/mailman/listinfo/kernel-team>,\n <mailto:kernel-team-request@lists.ubuntu.com?subject=subscribe>",
        "Content-Type": "text/plain; charset=\"utf-8\"",
        "Content-Transfer-Encoding": "base64",
        "Errors-To": "kernel-team-bounces@lists.ubuntu.com",
        "Sender": "\"kernel-team\" <kernel-team-bounces@lists.ubuntu.com>"
    },
    "content": "From: \"Chia-Lin Kao (AceLan)\" <acelan.kao@canonical.com>\n\nBugLink: https://bugs.launchpad.net/bugs/2143879\n\n[Impact]\nOn HP systems (CID: 202512-38233) with Intel Lunar Lake GPU and HP Type-C to HDMI dongle\n(03f0:8a4a), switching to mirror mode via hotkey fails. The system cannot switch mirror\nmode on X11 when using a Type-C to HDMI external monitor.\nThe root cause is that on XELPDP+ platforms (Lunar Lake and later), the LTTPR dongle\nfires a long HPD pulse after link training. The tc_phy_hpd_live_status() function reads\nPICAINTERRUPT_ISR to determine DP-alt live status, but the XELPDP_DP_ALT_HOTPLUG_MASK\nbit deasserts during a long HPD pulse. Since intel_tc_port_handles_hpd_glitches() returns\ntrue for TC dp-alt ports, the 4ms glitch-filter retry loop is bypassed, giving no\nprotection against this transient deassertion. The hotplug handler then marks DP-1 as\ndisconnected, and the compositor disables eDP-1.\nError log:\n  xe 0000:00:02.0: [drm:intel_dp_hpd_pulse [xe]] got hpd irq on [ENCODER:270:DDI TC1/PHY TC1] - long\n  xe 0000:00:02.0: [drm:drm_dp_dpcd_access [drm_display_helper]] AUX USBC1/DDI TC1/PHY TC1: Too many retries, giving up. First error: -6\n  xe 0000:00:02.0: [drm:intel_hotplug_detect_connector [xe]] [CONNECTOR:271:DP-1] status updated from connected to disconnected (epoch counter 178->179)\n  [drm:intel_dp_hpd_pulse] got hpd irq on [ENCODER:270:DDI TC1/PHY TC1] - long\n  [drm:intel_tc_port_update_mode] Port D/TC#1: TC port mode reset (disconnected -> tbt-alt)\n  [drm:intel_dp_hpd_pulse] got hpd irq on [ENCODER:270:DDI TC1/PHY TC1] - long\n  [drm:intel_hotplug_detect_connector] [CONNECTOR:271:DP-1] status updated from connected to disconnected\nAffected hardware: HP systems (CID: 202512-38233) with Intel Lunar Lake GPU\nFailure rate: High (reproducible with HP Type-C to HDMI dongle 03f0:8a4a on X11)\n\n[Fix]\nWhen the port has an active link (link_refcount > 0), trust the PHY ownership register\n(XELPDP_PORT_BUF_CTL1 & XELPDP_TC_PHY_OWNERSHIP) over the transient HPD live status\nin intel_tc_port_connected(). The ownership register is stable and does not toggle\nduring HPD pulses. The TC cold power domain is guaranteed to be held when\nlink_refcount > 0, as __intel_tc_port_lock() already asserts and verifies this via\ntc_phy_is_owned() before reaching intel_tc_port_connected().\nThe patch is currently under review on the Intel DRM mailing list (not yet merged to\nmainline).\nPatch:\nhttps://lore.kernel.org/lkml/20260305075857.40077-1-acelan.kao@canonical.com/T/#u\n\n[Test Plan]\n1. Connect HP Type-C to HDMI dongle (03f0:8a4a) to the system.\n2. Ensure the external monitor is displaying output (extended mode).\n3. Press the hotkey to switch to mirror mode.\nWithout the patch: The external monitor fails to switch to mirror mode. The kernel log\nshows DP-1 connector status updated from connected to disconnected, and the internal\ndisplay may also blank.\nWith the patch: Mirror mode switches successfully. The kernel log shows the TC port\ncorrectly stays in or returns to dp-alt mode:\n  [drm:intel_tc_port_update_mode] Port D/TC#1: TC port mode reset (dp-alt -> disconnected)\n  [drm:intel_tc_port_update_mode] Port D/TC#1: TC port mode reset (disconnected -> dp-alt)\n\n[Where problems could occur]\nIt may affect the i915/xe display driver's Type-C port management on Lunar Lake and\nlater platforms.\nIf the condition `tc_phy_is_owned()` returns a stale or incorrect ownership state while\nlink_refcount > 0, the driver could incorrectly report a port as connected when the\nphysical link has actually been removed. This would manifest as a phantom connected\ndisplay that cannot be detected as disconnected until the next full port reset, potentially\ncausing display configuration errors or a hung compositor.\nAdditionally, the early-return path bypasses the existing tc_phy_hpd_live_status() mask\ncheck. If there is an edge case where link_refcount > 0 but the port mode transitions\naway from TC_PORT_DP_ALT between the refcount check and the ownership check, the port\nstatus could be misreported.\nThe patch is submitted upstream for review but not yet merged.\n\n[Other Info]\nThe patch is submitted to the Intel DRM mailing list for review but not yet merged to\nmainline.\nThis issue only reproduces with the HP Type-C to HDMI dongle (03f0:8a4a) on X11. Wayland\nand other dongle types (Type-C to DP/VGA, built-in HDMI/Thunderbolt) are not affected.\n\nChia-Lin Kao (AceLan) (1):\n  UBUNTU: SAUCE: drm/i915/lnl+/tc: Fix false disconnect of active DP-alt\n    TC port during long HPD pulse\n\n drivers/gpu/drm/i915/display/intel_tc.c | 5 +++++\n 1 file changed, 5 insertions(+)"
}