Broadcom V3D 3.3 and 4.1 GPUs Face Deprecation in Linux Kernel
#Hardware

Broadcom V3D 3.3 and 4.1 GPUs Face Deprecation in Linux Kernel

Chips Reporter
3 min read

The Linux kernel driver for Broadcom’s V3D graphics IP will emit deprecation warnings for versions 3.3 (BCM7268) and 4.1 (BCM7278) and is slated for removal in the v7.3 release, reflecting a lack of hardware access and upstream driver support.

Broadcom V3D 3.3 and 4.1 GPUs Face Deprecation in Linux Kernel

{{IMAGE:2}}

Announcement

Igalia developer Maíra Canal submitted a patch to the mainline Linux kernel that marks Broadcom V3D graphics IP versions 3.3 (found in the BCM7268 SoC) and 4.1 (found in the BCM7278) as deprecated. If the patch lands in the upcoming Linux 7.2 development cycle, the deprecation warning will appear at driver probe time, and the code paths are expected to be removed in Linux 7.3 later this year.

Technical specifications and background

  • V3D 3.3 – implements the early VideoCore V "VC5" architecture, supporting OpenGL ES 2.0‑class features. It is paired with the BCM7268 system‑on‑chip, a product that never reached high‑volume deployment and for which no publicly available reference boards exist.
  • V3D 4.1 – adds modest rasterisation improvements and a slightly larger shader core, used in the BCM7278 SoC. The chip appears only in a handful of set‑top boxes that ship with proprietary firmware; no mainstream Linux distribution ships a kernel configuration that enables this driver.
  • Both IP generations were dropped from the Mesa 3D graphics stack in 2024 (see the Mesa 23.2 release notes). Without a userspace driver, the kernel driver has no test harness.
  • The current driver lives under drivers/gpu/drm/v3d/ and supports a version‑check macro that distinguishes V3D ≤ 4.1 from newer generations (e.g., V3D 5.0 found in the BCM2712). The patch adds dev_warn() at v3d_probe() for the older versions and sets a V3D_DEPRECATED flag that will be stripped in a later commit.

Why testing is impossible

  1. No retail hardware – Neither the BCM7268 nor the BCM7278 are listed on Broadcom’s current product catalog, and secondary‑market listings are scarce.
  2. No firmware images – The bootloaders for the few devices that used these SoCs are closed‑source, preventing a clean Linux boot path.
  3. Absence of upstream users – The only known downstream users were custom media‑center projects that have since migrated to newer Broadcom GPUs (e.g., V3D 5.0 on the Raspberry Pi 5).

Because the kernel maintainers cannot run the driver on real silicon, any regression would go unnoticed until a user reports a crash on a legacy device – a scenario that has not occurred in the past two years.

Market implications

  • Supply‑chain impact – The deprecation does not affect current Broadcom product lines; the company has moved its focus to the V3D 5.x and V3D 6.x families, which are integrated into high‑volume platforms such as the Raspberry Pi 5 and the upcoming Compute Module 5. Removing legacy code reduces kernel size by roughly 12 KB and eliminates a maintenance burden for a hardware segment that contributes less than 0.2 % of total Linux GPU deployments, according to the latest Linux GPU usage survey.
  • Developer resources – By cutting dead code, the DRM maintainers can reallocate review bandwidth to newer features like tiled rendering support for V3D 6.0. The patch also simplifies the driver’s v3d_version table, reducing the number of conditional branches in the hot path by 3.
  • Potential risk – If a niche OEM decides to revive a legacy set‑top box based on the BCM7278, the kernel will still load the driver but will emit a warning. The warning gives the OEM a clear upgrade path: move to a newer SoC or maintain a custom kernel fork that retains the old code.

Outlook

The deprecation aligns with a broader trend in the open‑source graphics stack: retire support for hardware that cannot be exercised in CI pipelines. As more vendors adopt open‑source driver models, the barrier to keeping legacy IP alive grows. For Broadcom, the practical effect is a cleaner driver tree and a clearer signal to the community that future development will concentrate on V3D 5.x and newer.

For the full patch series, see the GitHub pull request.

Comments

Loading comments...