ENUM ATCPHY_PIPEHANDLER_STATE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… enum atcphy_pipehandler_state β€” kernel API manual, bestie edition

okay so this is from the Kernel API Manual, and the page is literally called enum atcphy_pipehandler_state(9). iconic. it's all about the states of the PIPE mux interface β€” yeah, the "pipehandler" ✨


🌸 NAME 🌸

enum atcphy_pipehandler_state β€” the states of the PIPE mux interface (the "pipehandler", iykyk) πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

enum atcphy_pipehandler_state {
    ATCPHY_PIPEHANDLER_STATE_DUMMY ,
    ATCPHY_PIPEHANDLER_STATE_USB3 ,
    ATCPHY_PIPEHANDLER_STATE_USB4

};

like, that's the whole squad. three members, no more, no less πŸ’…


✨ Constants ✨

  • ATCPHY_PIPEHANDLER_STATE_DUMMY β€” the "Dummy PHY" state, which disables USB3 so you're on USB2 only 🫢
  • ATCPHY_PIPEHANDLER_STATE_USB3 β€” USB3 is directly connected to the Type-C port, no middleman 🌈
  • ATCPHY_PIPEHANDLER_STATE_USB4 β€” USB3 is tunneled via USB4/Thunderbolt, main character energy πŸ”₯

πŸ‘‘ Description πŸ‘‘

so here's the vibe check: DWC3's USB3 PIPE interface is connected to a multiplexer inside this PHY, and that mux can switch between three whole states πŸ‘€

  • a dummy state β€” this one effectively disables any USB3 support and falls back to USB2 only operation via the separate ULPI interface 😭
  • a USB3 state β€” for regular USB3 or USB3+DisplayPort operation πŸŽ€
  • a USB4 state β€” for USB3 tunneled via USB4/Thunderbolt ⭐

that's it. that's the mux. slay.


πŸ” SEE ALSO πŸ”

  • Kernel file ./drivers/phy/apple/atc.c β€” enum atcphy_mode(9), struct apple_atcphy(9) πŸ’œ

bestie fr fr read the actual source before you poke at it, k? ./drivers/phy/apple is where the magic lives πŸ™ˆ

and that's the page, periodt πŸ’… this cutie came out of ./drivers/phy/apple, dated October 2026, and it's filed under enum atcphy...andler_state(9) in the Kernel API Manual β€” go off, kernel docs 🌸🫢

πŸ“¦ where this page comes from