Linux Kernel & OS

Linux kernel patches enable Apple AirDrop on T2 Macs via brcmfmac driver

Key Takeaway

Open-source developer Andre Eikmeyer has submitted kernel patches adding AWDL support to the Broadcom brcmfmac driver, enabling bidirectional AirDrop file transfers between Linux-running T2 Macs and Apple devices.

Summary

A patch series for the Linux kernel has been posted for review that would enable Apple AirDrop functionality on Macs equipped with Apple's T2 security chip. The patches, submitted by developer Andre Eikmeyer, extend the Broadcom brcmfmac wireless driver to support Apple Wireless Direct Link (AWDL), the protocol underlying AirDrop. This kernel-level support pairs with t2-drop, a Rust-based user-space application with NetworkManager integration, to provide complete send-and-receive capabilities between Linux systems and Macs, iPhones, and iPads.

The implementation leverages firmware already present on T2 Macs, where the Apple firmware manages AWDL scheduling and frame handling while the host kernel creates the AWDL interface and configures parameters. Higher-level functions including peer discovery, election, and AirDrop protocol handling occur in user space. The driver activates AWDL only on firmware that advertises "awdl" capability and supports interface_create version 3, with fallback behavior for incompatible hardware such as the BCM4350 found in pre-T2 MacBookPro14,1 systems.

AWDL driver architecture and firmware requirements

  • brcmfmac driver extension: The patches add AWDL support to the existing Broadcom brcmfmac kernel wireless driver, reusing the same driver infrastructure rather than introducing a separate module.
  • Firmware capability gating: AWDL activation requires firmware that announces "awdl" in its capabilities and supports interface_create version 3; the BCM4350 firmware on pre-T2 MacBookPro14,1 advertises AWDL but returns BCME_UNSUPPORTED for interface_create, preventing activation on incompatible hardware.
  • Kernel/userspace boundary: The firmware maintains the AWDL schedule and handles frame transmission/reception, while the kernel creates the AWDL interface and sets parameters; peer discovery, election, and AirDrop protocol logic reside entirely in user space.
  • User-space companion: The t2-drop Rust application, part of the kaiT2en project, provides NetworkManager integration and implements the peer-facing AirDrop protocol layers needed for bidirectional operation.
  • Hardware scope: Testing has focused on T2-equipped Macs; other Apple Broadcom chips such as the BCM4355 remain untested, and the BCM4350 on pre-T2 hardware is explicitly excluded by capability checks.

Why it matters

This development narrows a significant interoperability gap between Linux and Apple's ecosystem, allowing users of Linux on T2 Macs to participate in AirDrop workflows without proprietary software or network infrastructure. For the broader Linux community, it demonstrates continued progress in reverse-engineering and implementing Apple's closed wireless protocols, potentially informing future AWDL support for other Broadcom-based hardware or entirely open implementations.

Original reference: www.phoronix.com →