TP-LINK WN722N 无线 USB 设备被 macOS 识别为以太网设备
TP-LINK WN722N Wireless USB device recognized as Ethernet device by macOS
我正在为 TP-WN722N-v1
开发内核扩展 (kext
),因为它不受支持。
我设法将固件上传到设备,它被系统识别,显然,它在 veeery 基本支持下工作。
我可以在设置面板的网络下找到它,但它被识别为 ethernet device
,所以我还不能使用它。
我应该从哪里开始让系统将其视为wireless interface
?我继承自正确的 class 吗?
我的class是这样开始的:
class TL_WN722N : public IOEthernetController
Apple 自己的 Wifi 驱动程序基于 IO80211Controller
class,它是 IOEthernetController
的子class。
很遗憾,这不是 public KPI。曾经有一个 "leaked" 头文件,并且 Hackintosh 人群已经做出一些努力对其进行逆向工程。我不知道是否有人真的基于此得到了驱动程序。
我见过的任何制造商提供的第 3 方 wifi 驱动程序都跳过 IO80211Controller
并简单地直接子classed IOEthernetController
,(重新)实现任何特定于 wifi 的东西直接在驱动程序中。任何用于选择 SSID 等的 UI 都需要通过自定义应用程序,并且不能在网络首选项窗格或菜单栏图标中使用 Apple 自己的 wifi UI。这可能需要大量工作,但绝对有可能。
请注意,从 macOS 10.15 Catalina 开始,已弃用 在 kexts 中实现 USB 网络设备驱动程序,任何此类 kext 都可能在 10.16 中停止工作。您应该使用 DriverKit 来定位未来版本的 macOS。
我正在为 TP-WN722N-v1
开发内核扩展 (kext
),因为它不受支持。
我设法将固件上传到设备,它被系统识别,显然,它在 veeery 基本支持下工作。
我可以在设置面板的网络下找到它,但它被识别为 ethernet device
,所以我还不能使用它。
我应该从哪里开始让系统将其视为wireless interface
?我继承自正确的 class 吗?
我的class是这样开始的:
class TL_WN722N : public IOEthernetController
Apple 自己的 Wifi 驱动程序基于 IO80211Controller
class,它是 IOEthernetController
的子class。
很遗憾,这不是 public KPI。曾经有一个 "leaked" 头文件,并且 Hackintosh 人群已经做出一些努力对其进行逆向工程。我不知道是否有人真的基于此得到了驱动程序。
我见过的任何制造商提供的第 3 方 wifi 驱动程序都跳过 IO80211Controller
并简单地直接子classed IOEthernetController
,(重新)实现任何特定于 wifi 的东西直接在驱动程序中。任何用于选择 SSID 等的 UI 都需要通过自定义应用程序,并且不能在网络首选项窗格或菜单栏图标中使用 Apple 自己的 wifi UI。这可能需要大量工作,但绝对有可能。
请注意,从 macOS 10.15 Catalina 开始,已弃用 在 kexts 中实现 USB 网络设备驱动程序,任何此类 kext 都可能在 10.16 中停止工作。您应该使用 DriverKit 来定位未来版本的 macOS。