drm/v3d: Deprecate V3D 3.3 and 4.1 support

V3D 3.3 (Broadcom BCM7268) and V3D 4.1 (Broadcom BCM7278) has had no
in-tree userspace since Mesa dropped support in 2024, on the grounds
that those generations were no longer being tested. The situation in
the kernel is similar: the maintainers don't have this hardware, the
hardware is not available for purchase, and there is no known user of
these GPUs.

With no userspace left to drive it and no known users, maintaining the
ver <= 41 code paths is a cost without a benefit, considering that these
paths are not being exercised on real hardware.

As a first step toward removal, emit a deprecation warning at probe for
V3D versions earlier than or equal to 4.1. The hardware remains
functional for now; this only warns. If any real user appears and
explain its use-case, support can be retained.

Schedule the removal of V3D 3.3 and 4.1 support to the next kernel
release.

Link: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/25851
Reviewed-by: Florian Fainelli <florian.fainelli@broadcom.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Link: https://patch.msgid.link/20260606185616.694188-2-mcanal@igalia.com
Signed-off-by: Maíra Canal <mcanal@igalia.com>
This commit is contained in:
Maíra Canal
2026-06-06 15:55:13 -03:00
parent 7d64136e0f
commit 7ffcc4fffb

View File

@@ -4,7 +4,11 @@
/**
* DOC: Broadcom V3D Graphics Driver
*
* This driver supports the Broadcom V3D 3.3 and 4.1 OpenGL ES GPUs.
* This driver supports the Broadcom V3D 4.2 and 7.1 GPUs.
*
* Support for V3D 3.3 and 4.1 GPUs is deprecated and it will be removed
* in the next kernel release.
*
* For V3D 2.x support, see the VC4 driver.
*
* The V3D GPU includes a tiled render (composed of a bin and render
@@ -414,6 +418,18 @@ static int v3d_platform_drm_probe(struct platform_device *pdev)
*/
WARN_ON(v3d->ver != gen);
/* V3D 3.3 and V3D 4.1 has had no in-tree userspace since Mesa
* dropped support in 2024 (MR#25851) and they have no known users.
* Due to that, support is scheduled for removal in the next release.
*/
if (v3d->ver <= V3D_GEN_41) {
dev_warn(dev,
"V3D %u.%u support is deprecated and will be removed "
"in the next kernel release. If you rely on this hardware, "
"please report it to dri-devel@lists.freedesktop.org.\n",
v3d->ver / 10, v3d->ver % 10);
}
v3d->cores = V3D_GET_FIELD(ident1, V3D_HUB_IDENT1_NCORES);
WARN_ON(v3d->cores > 1); /* multicore not yet implemented */