Files
xone_macos/include/usb/usb_transport.hpp
T
portersky a7d7d0f253 chore: scaffold CMake build system
Add the CMake build for the Swift + C++ macOS port, mirroring the
refix layout: deps/ modules (Platform, Flags, Sanitizers, FindUnity),
per-module static libraries (usb, auth, mt76, gip, hid, api), a Swift
app entry point with a pure C bridge header, and a Unity test suite
behind BUILD_TESTING.

Swift requires the Ninja or Xcode generator; a guard in
CMakeLists.txt rejects anything else.

Co-Authored-By: qwen (qwen/qwen3.8-27b@q2_k_xl): scaffolded CMake build + tests
2026-08-17 14:18:03 +02:00

26 lines
970 B
C++

#pragma once
// ==============================================================================
// USB transport (IOKit / IOUSBFamily)
// ==============================================================================
// Owns the physical Xbox Wireless Dongle:
// VID 0x045E, PIDs 0x02E6 (old), 0x02FE (new), 0x02F9 (ASUS/Lenovo built-in),
// 0x091E (Surface Book 2).
//
// Port target: medusalix/xone transport/dongle.c + transport/mt76.c USB calls.
// Linux usb_control_msg()/usb_bulk_msg() map to IOUSBDeviceInterface
// DeviceRequest / IOUSBInterfaceInterface WritePipe+ReadPipe.
// ==============================================================================
#include <cstdint>
namespace xone::usb {
// Probe for a connected dongle and claim its WLAN interface
// (bInterfaceNumber 1).
// TODO(phase 2): IOKit implementation (IOServiceMatching, interface open,
// EP 0x04 bulk in/out + EP 0x05 interrupt in).
auto probe() -> bool;
} // namespace xone::usb