PnP BIOS legacy Plug-and-Play enumeration
Support for the 1994-era Plug and Play BIOS specification, which 32-bit x86 PCs used before ACPI to let the operating system discover and configure built-in motherboard resources such as serial and parallel ports on ISA-based hardware. It only ever applied to 32-bit x86 systems and has been functionally superseded by ACPI on every machine shipped in the last two decades.
recommendation
A candidate for future removal because the PnP BIOS specification it implements has been obsolete since ACPI took over platform configuration on PCs, and the in-kernel ACPI-based replacement (pnpacpi) covers the same role on any system from roughly the early 2000s onward. The code is x86_32-only, has no hardware entries listed in LKDDb, and recent commits are incidental cleanups rather than real development. It is worth flagging for deprecation, though a definitive removal would want a clearer survey of any remaining pre-ACPI machines still booting current kernels.
repository signals
sources
- cateee.net
CONFIG_PNPBIOS is limited to ISA and X86_32, is based on the 1994 Plug and Play BIOS spec, and its own help text says ACPI is expected to supersede it; LKDDb shows no concrete hardware entries.
- cateee.net
CONFIG_PNPACPI is the upstream ACPI-based protocol serving the same built-in mainboard resource-discovery role and is available across current kernel series.
- en.wikipedia.org
ACPI was introduced after PnP BIOS and is intended to replace the Plug and Play BIOS model for platform configuration and power management.
- git.zx2c4.com
The most recent visible pnpbios touch in late 2023 was an incidental x86 descriptor cleanup touching bioscalls.c, consistent with low-maintenance legacy code rather than active feature work.
- lore.kernel.org
Mailing-list link for the latest pnpbios-adjacent patch cited by the local git history; evidence of continued build/cleanup compatibility work, not active user-facing development or a removal series.
codex reasoning notes (technical)
This is a real kernel protocol driver for legacy firmware-mediated ISA/x86_32 Plug-and-Play enumeration. Local source inspection via shell showed fs_initcall/device_initcall registration and a pnp_protocol implementation. Upstream activity check used local git history via shell because `lei` was unavailable; the latest linked patch URL was extracted from that git output, and I found no explicit removal-series evidence in limited web/lore search results. Deployment looks low: the web-searched LKDDb PNPBIOS page shows ISA+x86_32-only scope and no hardware entries, while the ACPI source found by web search and the PNPACPI page indicate the modern replacement path. I left `last_widely_available_year` null because the exact market cutoff for new PnP-BIOS-only systems is not well-supported by the available sources.