From nobody Tue Feb 10 01:19:53 2026 Received: from mail-oa1-f98.google.com (mail-oa1-f98.google.com [209.85.160.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9E14331076D for ; Mon, 29 Dec 2025 21:59:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.98 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767045587; cv=none; b=HdMU1T0pbq+9sug+DTUKyFyi7msy6blzrl2KzQq2elhMWpoUpPqV86g/4Vnfj4At0I65OPCSjcwTwXiqgzkGwAcTPnCE1tApxcPVwB168aOT0dqwCKDdxCXR4xlDjtugvVZ+M7kGWoXMIM558vWS/KBZgtLUZsWNXdoeFAmqX40= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1767045587; c=relaxed/simple; bh=RPSJS+jBwiBieHmZlL9c8OFFrA3PH+L7A3JbON+UxCw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=mS7Pb3mXB1L5BTu3xXRie7e7jv137LF9RpsaVUfkDnBmUYNabeY9Wc5emniXyUkeiYZLqcRETrIyo/zHwadOWtIH9JR0HdLJEEFOEEbrc2TnlGmCZSq6dKOOxRe58N5eOW2+F+wHzyqrmMpVMIjSH7Eg8ut9sMNe4oDZKmPseiA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com; spf=fail smtp.mailfrom=broadcom.com; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b=KFkCvuhr; arc=none smtp.client-ip=209.85.160.98 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=broadcom.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=broadcom.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=broadcom.com header.i=@broadcom.com header.b="KFkCvuhr" Received: by mail-oa1-f98.google.com with SMTP id 586e51a60fabf-3f4f9ea26aaso6654986fac.0 for ; Mon, 29 Dec 2025 13:59:45 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767045584; x=1767650384; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:dkim-signature:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Ud7EWqvaAYC+L/BMEOnAHtOcyfh1O0xHeiVDUtFFCbY=; b=Eatp75Ytepo3V7JoMJ3VucfZFebZtU6qk+bGJhwD+O/nB/djZujwrDMDe89g1dTwj8 hu+ak4wXj616dv2G388w6/FGwmfAdQ9WR1apNE5SIdXfm+wdQXRwMBvi9VjbejSHobr6 5LBWmG9QcR1PfNRoqwQJ0SrVNGxbyTrw17+H74sVdWZje5L1R8SRKfuXktBkzQR3pNzR o+VJYiPED+WfFea0rsVUEXKcrgjAcebHvB/6jYtxJYoH4Dh5+20n+ep22vU1x17bf5Ia w4x2PCmH9CEA7XrXvJoSLhll7qRaZtssKnR7sRfJhcROQUgfN5RdpzATTayw3w5IdF8f UpWg== X-Forwarded-Encrypted: i=1; AJvYcCV8YSAiHh7JPtq5Llr61pKBATGM1R/Tff4i5FJis0cRJdaP2HcsMLPfL1o5wG0C6U/Dk4Y3+Oco2GPvnOc=@vger.kernel.org X-Gm-Message-State: AOJu0YyzvdwHtXxsWIUiH+YeGug3OahAhuYhZrTxroGX00dkDDMQlYqP //DwA6oLviqLJEHU5+ygJ0J/7qmXMT324tdIXTRDEOOxPBjsVR0JdGzPxG8WxjtU6y7lZ9LuQw1 vAxeClziP3X400DkFoCgPr0MTg0F6KNU6SrLbPHEdWBoyefBoyLMJ5YQS94xsqs6JeJZcy38vde SrsNf6EwPJaDnzLK3uAgts7XOXvkMvz1j85i6cnYKSBv0M/yS9MlskaIaG880sjIE0QHKDzsRrs tJDeo1uZTsu3Ta7 X-Gm-Gg: AY/fxX71xFgcA3fjw118fLL2qrQ2BcAx9Kc80XGwgiFJT7N6sCcJ7WG0iXGzyOfa+Kj xWWRZgBnxrP+pLPfw9uh9cuMhGoZc4Cf13p/ilyrxcinypg2HWaoica/m4+RgenJSmcgcvHxjHd FuYxMH8scjcheN2gcdWuyOrTqG9ItxkpkIAYLwIhrbq9kP0kkOjwDSuyWjvKrETUmii0rUhuqEI JFK2Xi37NVJHVV+F1c/fZ4E3PPgbe3mRbjPK8hcN7fAJOJBJeBlg+f7d1FQrdBGukQVk47MraWE FkB8bGjJPJxsk+F5o3gCVcA70fbFYngo3fojBIfGgIkuulvRfd9QfHvzQqj36G2tdbXBAXo/jiW 6nFUJOcfkoLJmsqugTwZcl3FOx6L68pX7jKF/X/NPRbid5uAwe3R7ZUN7vfDUYJ/EixBSlU+MCS suA94Q0F5PpmiQwR7YVJSuCRL4UEqP4F2Mfyx3Xo0= X-Google-Smtp-Source: AGHT+IGhh4eHxXz5mweG/rseZK/ttS6mSMcUrn3XWbRxPvnJo8yeqDc0GRLg5B1zNA2wXV7F/anGdTH19Esg X-Received: by 2002:a05:6871:61ca:b0:3fa:966:a859 with SMTP id 586e51a60fabf-3fda56c7d2emr17453612fac.42.1767045584277; Mon, 29 Dec 2025 13:59:44 -0800 (PST) Received: from smtp-us-east1-p01-i01-si01.dlp.protect.broadcom.com (address-144-49-247-2.dlp.protect.broadcom.com. [144.49.247.2]) by smtp-relay.gmail.com with ESMTPS id 586e51a60fabf-3fdaabd2ebdsm3226430fac.13.2025.12.29.13.59.41 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 29 Dec 2025 13:59:44 -0800 (PST) X-Relaying-Domain: broadcom.com X-CFilter-Loop: Reflected Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-4f1dea13d34so228907181cf.1 for ; Mon, 29 Dec 2025 13:59:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; t=1767045580; x=1767650380; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=Ud7EWqvaAYC+L/BMEOnAHtOcyfh1O0xHeiVDUtFFCbY=; b=KFkCvuhrcjDlXv8Cqcxj9trPCi18y10yq051JNs7OFG1CDjt4qPtA6bYbW18VG8QWZ N9G3L6NeT5WR0YkASj7sC+SgH9Y0FyOQgdtHO25ktM2p55MCAveTn//Br0KOXHxHaVOw UlrYpDWifklM3OkGdoS+CXd0JgPbhTHDKkEgQ= X-Forwarded-Encrypted: i=1; AJvYcCUEjesy9GfDorcBs+J17gBkNgmKl+ikmpOU7tsHfIMx0axTnHbSCtOxKSqGq2uWYv2CkI6xojOPzj5K+hQ=@vger.kernel.org X-Received: by 2002:a05:622a:2b0a:b0:4f1:b714:5864 with SMTP id d75a77b69052e-4f4abbcc5cfmr460052011cf.0.1767045580449; Mon, 29 Dec 2025 13:59:40 -0800 (PST) X-Received: by 2002:a05:622a:2b0a:b0:4f1:b714:5864 with SMTP id d75a77b69052e-4f4abbcc5cfmr460051871cf.0.1767045580088; Mon, 29 Dec 2025 13:59:40 -0800 (PST) Received: from localhost.localdomain (pool-173-49-113-140.phlapa.fios.verizon.net. [173.49.113.140]) by smtp.gmail.com with ESMTPSA id 6a1803df08f44-88d9759f164sm231530026d6.24.2025.12.29.13.59.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 29 Dec 2025 13:59:39 -0800 (PST) From: Zack Rusin To: dri-devel@lists.freedesktop.org Cc: Dave Airlie , Thomas Zimmermann , Jocelyn Falempe , Maarten Lankhorst , Maxime Ripard , David Airlie , Simona Vetter , linux-kernel@vger.kernel.org Subject: [PATCH 10/12] drm/ast: Use devm aperture helpers for sysfb restore on probe failure Date: Mon, 29 Dec 2025 16:58:16 -0500 Message-ID: <20251229215906.3688205-11-zack.rusin@broadcom.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20251229215906.3688205-1-zack.rusin@broadcom.com> References: <20251229215906.3688205-1-zack.rusin@broadcom.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-DetectorID-Processed: b00c1d49-9d2e-4205-b15f-d015386d3d5e Content-Type: text/plain; charset="utf-8" Use devm_aperture_remove_conflicting_pci_devices() instead of the non-devm variant to automatically restore the system framebuffer (efifb/simpledrm) if the driver's probe fails after removing the firmware framebuffer. Call devm_aperture_remove_conflicting_pci_devices_done() after successful probe to cancel the automatic restore, as the driver is now responsible for display output. This ensures users don't lose display output if the ast driver fails to probe after removing the firmware framebuffer. Signed-off-by: Zack Rusin Cc: Dave Airlie Cc: Thomas Zimmermann Cc: Jocelyn Falempe Cc: Maarten Lankhorst Cc: Maxime Ripard Cc: David Airlie Cc: Simona Vetter Cc: dri-devel@lists.freedesktop.org Cc: linux-kernel@vger.kernel.org --- drivers/gpu/drm/ast/ast_drv.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/ast/ast_drv.c b/drivers/gpu/drm/ast/ast_drv.c index b9a9b050b546..8e6c7cbafa59 100644 --- a/drivers/gpu/drm/ast/ast_drv.c +++ b/drivers/gpu/drm/ast/ast_drv.c @@ -310,7 +310,12 @@ static int ast_pci_probe(struct pci_dev *pdev, const s= truct pci_device_id *ent) struct drm_device *drm; bool need_post =3D false; =20 - ret =3D aperture_remove_conflicting_pci_devices(pdev, ast_driver.name); + /* + * Use devm variant to automatically restore sysfb if probe fails. + * This ensures the user doesn't lose display if our probe fails + * after removing the firmware framebuffer (efifb/simpledrm). + */ + ret =3D devm_aperture_remove_conflicting_pci_devices(pdev, ast_driver.nam= e); if (ret) return ret; =20 @@ -426,6 +431,12 @@ static int ast_pci_probe(struct pci_dev *pdev, const s= truct pci_device_id *ent) =20 drm_client_setup(drm, NULL); =20 + /* + * Probe succeeded - cancel the automatic sysfb restore action. + * We're now responsible for display output. + */ + devm_aperture_remove_conflicting_pci_devices_done(pdev); + return 0; } =20 --=20 2.48.1