Acpi Prp0001 0 (TRENDING 2025)
[ 0.987654] ACPI: PRP0001:00: PRP0001 device
Suppose a device has both a PRP0001 entry (to load a DT driver) and a legacy PNPXXXX HID (for an older ACPI driver). The kernel may prefer the DT driver via PRP0001. Disabling PRP0001 forces the kernel to fall back to the native ACPI driver – useful for performance comparison or bug workarounds.
The PRP0001 ID solves this by allowing the ACPI table to say: "I don't have a unique ACPI ID for this device, so please just look at the 'compatible' string provided in the properties." Key Benefits
ls /sys/bus/acpi/devices/PRP0001:00/ -l
// drivers/acpi/scan.c static bool acpi_prp0001_enabled = true;
Greatly expands hardware support for Linux; makes cross-platform hardware development easier.
acpi PRP0001:00: bus: acpi type: hid:PRP0001 acpi PRP0001:00: driver: gpio_keys acpi prp0001 0
The PRP0001 mechanism is not just a theoretical concept; it is actively used in the kernel to support real-world hardware.
This process effectively tricks the kernel's driver binding mechanism. The device appears to the driver as a DT node, even though its description is embedded within an ACPI table.
Run dmesg | grep -i prp0001 . You will often see output similar to this: The PRP0001 ID solves this by allowing the
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.
I2cSerialBusV2 (0x48, ControllerInitiated, 400000, AddressingMode7Bit, "\\_SB.PCI0.I2C1", 0x00, ResourceConsumer, , Exclusive,) ) Return (SBUF)
If you see ACPI\VEN_PRP&DEV_0001 in the Windows Device Manager, it usually indicates a missing driver for a specific hardware component that the manufacturer didn't provide a standard Windows identifier for. The device appears to the driver as a
Used heavily in x86 systems (standard Windows PCs and Intel/AMD laptops). It relies on unique, hardcoded Hardware IDs (like VEN_INTEL&DEV_A1B0 ). The Hybrid Bridge
So what does acpi prp0001 0 do?