If you use acpi=off, PRP0001 processing never starts. acpi prp0001 0 is irrelevant in that case.
Verify the compatible string in _DSD matches the driver’s of_match_table exactly. A trailing space or wrong vendor prefix (e.g., bosch,bme280 vs bmp,bme280) will cause a mismatch.
[ 0.123456] ACPI: PRP0001:00: PRP0001 device
[ 0.123457] acpi PRP0001:00: [Firmware Info]: Device [BME280] compatible with bosch,bme280
[ 0.123789] i2c i2c-0: added device BME280
What happened? The kernel found a PRP0001 device, extracted a compatible property from its _DSD, matched it to an I2C driver (bme280), and created the device.
If you saw this in a specific error log, config, or script, please share more context, and I can give a more precise explanation.
The ACPI hardware ID is a special "fallback" ID used by the Linux kernel to support devices that were originally designed for Device Tree (DT) on platforms like ARM, but are now being used on ACPI-based systems (like x86 PCs or the Steam Deck). Stack Overflow What it does The Bridge
: It allows a driver to use its existing Device Tree "compatible" string (e.g., ) even when running on an ACPI system. Device-Specific Data : When ACPI sees , it looks for a special property called
(Device-Specific Data) in the ACPI tables to find the actual hardware identity. Why you see it as an "Unknown Device" If you are seeing ACPI\VEN_PRP&DEV_0001 in Windows Device Manager (common on Steam Decks Chromebooks
running Windows), it means Windows doesn't know how to handle this Linux-centric bridge. Steam Deck : It usually refers to specialized hardware like the Steam Deck's buttons/controllers
or power management features that lack official Windows-signed drivers. Chromebooks : It often points to specialized components like specific LED controllers How to fix it Steam Deck users : Ensure you have installed the latest APU and SD Resources drivers official Steam Deck Windows Resources page Chromebook/Other : Check the manufacturer's support site (e.g., HP Support ) for specific chipset or "Serial IO" drivers. Linux users : This is usually handled automatically by the kernel's acpi_scan_handler Google Groups Are you seeing this ID in Windows Device Manager on a specific handheld or laptop? acpi prp0001 0
PC Engines APU* LED support · Issue #2114 · opnsense/core - GitHub
The identifier ACPI\PRP0001:0 (often seen as ACPI\VEN_PRP&DEV_0001) refers to a specific virtual device entry in the Advanced Configuration and Power Interface (ACPI) table, primarily associated with the Google Chromebook Device driver . Understanding ACPI and the PRP0001 ID
ACPI is an industry standard that allows an operating system (OS) to communicate with hardware for power management and configuration . When you see PRP0001, it typically appears in the Windows Device Manager under "Other Devices" or "System Devices" when a user installs Windows on hardware originally designed for the ChromeOS ecosystem, such as a Google Chromebook or the Valve Steam Deck . Identifier Breakdown: ACPI: The subsystem managing the hardware state.
VEN_PRP: The Vendor ID (PRP often refers to "Proprietary" or "Prototyping" in specific ACPI contexts).
DEV_0001: The Device ID for this specific virtual interface.
:0: Indicates the first instance (index 0) of this device type found in the ACPI tables . Context: Why it Appears
This device ID is frequently encountered by enthusiasts performing Windows-on-Chromebook or Windows-on-Steam-Deck installations .
Google Chromebooks: On many Chromebook models, this ID represents a driver that allows Windows to interact with proprietary Google hardware components, such as custom keyboards, touchpads, or specialized USB controllers . If you use acpi=off , PRP0001 processing never starts
Valve Steam Deck: On the Steam Deck, users often find this as one of several "unknown devices" after installing Windows. It is generally linked to custom power management or sensor interfaces provided by Valve that lack official standalone Windows drivers . Significance and Troubleshooting
In most cases, the ACPI\PRP0001 device does not have a critical function for basic Windows operation, and many users choose to ignore the "Unknown Device" warning without loss of stability . However, for full hardware functionality: unknown device id is ACPI\VEN_PRP&DEV_0001 - 9515969
The hardware ID ACPI\PRP0001\0 is a special "fallback" identifier used in modern firmware to bridge the gap between two different ways computers describe their hardware: ACPI (common in Windows/PCs) and Device Tree (common in Linux/Embedded systems). Why is it "interesting"?
Normally, every piece of hardware has a specific, unique ID (like "PNP0A0A" for an ASUS component). However, PRP0001 is a generic ID that tells the operating system: "I don't have a unique ACPI ID, so please look at my software-defined properties to figure out who I am". Where you will usually see it
This ID frequently appears as an "Unknown Device" in Windows Device Manager on specific hardware that wasn't originally designed for Windows, or uses cross-platform drivers:
Steam Deck: Often appears when users install Windows on a Steam Deck.
Chromebooks: Seen when running Windows on Chromebook hardware (like Acer or HP models).
Developer Boards: Used on Intel Edison or other IoT platforms to let Linux drivers work without rewriting code for ACPI. How to handle it If you are seeing this as an "Unknown Device" in Windows: ACPI Based Device Enumeration [ 0
The device string acpi prp0001 0 typically appears in Linux system logs (such as dmesg or /sys paths) and refers to a generic ACPI device node.
Here is a breakdown of what this identifier means, why it appears, and how to interpret it.
ACPI PRP0001 0 (commonly surfaced in kernel logs as messages referencing “prp0001” or similar identifiers) denotes a platform resource-provisioning ACPI object associated with device provisioning and power/resource management on modern x86 and ARM platforms. This editorial explains what PRP0001 is, its origin and purpose within ACPI, why it appears in logs, practical implications for system integrators and users, diagnostic approaches, remediation strategies, and forward-looking considerations for firmware and OS maintainers.
PRP0001 allows firmware writers to expose a Device Tree-style compatible string (e.g., "bosch,bme280") inside an ACPI table, and the Linux kernel will then attempt to match it to a Device Tree driver instead of an ACPI driver.
Last updated: 2025 – This article is evergreen, but kernel versions >6.0 have stable PRP0001 behavior. Always refer to your kernel’s dmesg for exact behavior.
Many embedded ARM devices use Device Tree for hardware description. On x86, ACPI is the standard. But some hardware peripherals (e.g., certain SPI/I2C sensors, GPIO controllers) only have Device Tree bindings available in the kernel — no ACPI driver.
To avoid rewriting drivers, Linux allows ACPI to “pretend” it enumerated a Device Tree node. The actual hardware description is stored inside ACPI’s _DSD property under the key "compatible".
Example from an ACPI table (SSDT):
Name (_HID, "PRP0001")
Name (_DSD, Package()
ToUUID("daffd814-6eba-4d8c-8a91-bc9bbf4aa301"),
Package()
Package(2) "compatible", "ti,ads1115"
)
Here, PRP0001 tells Linux: “Don’t look for an ACPI driver — instead, use the Device Tree driver for ti,ads1115.”