USB-C UCSI GET_CABLE_PROPERTY Errors on Boot
Summary
On Linux kernel 6.9 and later, Framework laptops produce ucsi_acpi error messages during boot and whenever a USB-C device is plugged or unplugged. The errors — unknown error 0, unknown error 256, GET_CABLE_PROPERTY failed (-5), and UCSI_GET_PDOS failed (-5) — originate from a kernel feature that queries USB-C cable properties via the UCSI (USB Type-C Connector System Software Interface) ACPI interface12. Framework's firmware does not pass cable property information correctly to the kernel, causing the queries to fail34. The messages are cosmetic in most cases and do not affect USB functionality, though some users report related issues with external monitors and power delivery negotiation56.
Symptoms
- Error messages in
dmesg/journalctlon boot17:ucsi_acpi USBC000:00: unknown error 0ucsi_acpi USBC000:00: GET_CABLE_PROPERTY failed (-5)ucsi_acpi USBC000:00: unknown error 256ucsi_acpi USBC000:00: GET_CABLE_PROPERTY failed (-5) UCSI_GET_PDOSvariant on some configurations5:ucsi_acpi USBC000:00: UCSI_GET_PDOS failed (-5)- Errors triggered on plug/unplug — inserting or removing expansion cards, chargers, or USB-C devices produces additional error messages18
- PME spurious native interrupt may appear alongside the UCSI errors when plugging in a charger1
- External monitors may not be detected via USB-C on some systems (may be a separate issue)69
- EPR (240W) charging may fail because the kernel cannot read the cable e-marker to confirm 5A capability10
Affected Models
- Framework Laptop 13 (AMD Ryzen 7040 Series) — most commonly reported1711
- Framework Laptop 13 (AMD Ryzen AI 300 Series)12
- Framework Laptop 13 (Intel Core Ultra Series 1) — some reports5
- Framework Laptop 16 (AMD Ryzen 7040 Series)111
- Framework Laptop 12 — at least one report13
The issue is not exclusive to Framework — the same UCSI errors have been reported on other AMD-based laptops14.
Root Cause
Linux kernel 6.9 introduced a patch by Jameson Thies (Google) that queries GET_CABLE_PROPERTY via the UCSI ACPI interface to register USB-C cable details (plug type, cable type, revision) in sysfs (/sys/class/typec/)2. On Framework laptops, the PD (Power Delivery) controllers respond with error codes 0 and 256 instead of valid cable property data, causing the kernel to log the failure13.
Framework's Daniel_Schaefer (Framework Software Engineer) explained the architecture4:
- Framework laptops use separate PD controllers — one for each side (managing two ports each) — rather than implementing PD logic in the EC (Embedded Controller) like most Chromebooks
- The UCSI subsystem in the OS communicates through ACPI (BIOS) to the EC, which passes messages through to the PD controllers and back
- The kernel UCSI driver expects Chromebook-like behavior where the EC handles PD natively, but Framework's PD subsystem is implemented differently
- The errors are the kernel trying to retrieve non-vital Type-C cable and port information (used for informational popups about cable capabilities), not core USB functionality
Heikki Krogerus (Intel, UCSI maintainer) confirmed on the linux-usb mailing list that the interface claims the Cable Details feature is supported but clearly does not return correct data, and indicated this should be reported to AMD15.
Framework engineer JohnAZoidberg stated3:
"The UCSI error messages mean that the kernel is unable to figure out the cable properties. Our firmware currently does not pass this information correctly to the kernel. We have fixed this for some cases but some more cases remain."
Diagnosis
-
Check for UCSI errors:
sudo dmesg | grep ucsi_acpi -
Check journal for error timeline:
journalctl -b | grep ucsi_acpi -
Verify kernel version — the errors started appearing in kernel 6.91:
uname -r -
Test with expansion cards removed — removing all non-USB-C expansion cards reduces (but does not eliminate) the errors17
-
Check if ports still function — test charging, data transfer, and display output on each port to confirm the errors are cosmetic vs. functional4
Workarounds & Fixes
| Solution | Effectiveness | Notes |
|---|---|---|
| Ignore the messages34 | Usually sufficient | Framework confirmed the errors are non-functional in most cases — USB-C ports continue to operate normally |
Use quiet kernel parameter13 | Hides messages visually | Add quiet to kernel boot parameters. Does not fix the underlying issue, only hides console output during boot |
| Downgrade to kernel 6.8 or earlier17 | Eliminates messages entirely | The GET_CABLE_PROPERTY query was introduced in 6.9. Not practical for most users due to security and driver improvements in newer kernels |
| Keep expansion cards inserted at boot1 | Reduces occurrences | Errors appear most often when USB-A, HDMI, or other non-USB-C expansion cards are present during boot |
| Update to latest BIOS3 | May reduce occurrences | Framework has applied partial fixes in newer firmware versions, but some cases remain |
| Power delivery workaround (for EPR)10 | Workaround | If 240W charging fails, try a different USB-C cable or port. The issue stems from the kernel being unable to read cable e-marker data |
Resolution
Framework has acknowledged the issue and filed internal engineering tickets58. Framework engineer JohnAZoidberg confirmed that partial fixes have been applied in firmware updates but some cases remain unresolved3. There is no complete fix available yet.
The errors are expected to persist until either:
- Framework releases a firmware update that properly responds to UCSI
GET_CABLE_PROPERTYqueries - A kernel patch is submitted to handle Framework's non-standard UCSI implementation gracefully
Users experiencing functional issues (monitors not connecting, charging failures) alongside these errors should open a support ticket with Framework, as those may be separate problems46.
Related
- [TRACKING] USB C Error on boot — Framework Community (main tracking thread, 95+ replies)
- ucsi_acpi USBC000:00: unknown error 0 · Issue #3 — GitHub (Framework firmware tracker)
- ucsi_acpi USBC000:00: unknown error 256 · Issue #185 — GitHub
- Continuous ucsi_acpi errors on AMD Ryzen AI 300 Series — Framework Community
- GET_CABLE_PROPERTY issue — Linux USB Mailing List — linux-usb
- USB-C Ports Stop Charging — related known problem