Contribute
Register

Intel WiFi Driver Effort

Joined
Feb 21, 2013
Messages
38
Motherboard
Samsung RC530-S01
CPU
Core i7 2630QM
Graphics
Intel HD Graphics 3000
Mobile Phone
iOS
It probably won't work... special support must be coded into the Ethernet drivers.
I'm assuming you're using Mieze's Realtek Ethernet kext, which does not have this support.
Yes, it's Mieze's kext. It's sad that this kext doesn't have this ability :( Are there any open-source ethernet kexts that have this ability or maybe there's some documentation about KDP? I may try to implement this in Mieze's kext.

One of another options that I will try for workaround is Linux+Mac on VM. I see that VirtualBox has the ability of PCI passthrough on Linux. So, I will just disable Wifi module on Linux and do passthrough to VM. I guess it's not necessary to disable module on Linux, but I don't want any side effects during development.
 
Joined
Feb 21, 2013
Messages
38
Motherboard
Samsung RC530-S01
CPU
Core i7 2630QM
Graphics
Intel HD Graphics 3000
Mobile Phone
iOS
Yes, it's Mieze's kext. It's sad that this kext doesn't have this ability :( Are there any open-source ethernet kexts that have this ability or maybe there's some documentation about KDP? I may try to implement this in Mieze's kext.

One of another options that I will try for workaround is Linux+Mac on VM. I see that VirtualBox has the ability of PCI passthrough on Linux. So, I will just disable Wifi module on Linux and do passthrough to VM. I guess it's not necessary to disable module on Linux, but I don't want any side effects during development.
Quickly looked through documentation for IONetworkController class. From the first sight, it doesn't look too hard to implement KDP. I will spend some time on this and maybe get the result in short time.

P.S. Quick googling gave me this results: http://unix.superglobalmegacorp.com/xnu/newsrc/iokit/Drivers/network/drvPPCUniN/UniNEnet.cpp.html Maybe this will also help in implementation.
 
Joined
Oct 12, 2017
Messages
93
Motherboard
GA-Z170N-WIFI
CPU
Core i7 6700k
Graphics
EVGA NVIDIA GeForce GTX 960
Off-topic.
This topic relates to WiFi only.
Thats fine but i dont see why talking about Bluetooth on these chips is prohibited on this topic.
since the kext makes the hardware run properly (or at least be recognised properly by the system) i assumed Bluetooth would
get enabled as a by product.

If the Wifi will work thats just another bonus for me, but i really dont want to make useless purchases of natively supported
modules if i can get the Intel 8260 chip running.
 

RehabMan

Moderator
Joined
May 3, 2012
Messages
188,974
Motherboard
Intel DH67BL
CPU
i7-2600K
Graphics
HD 3000
Mac
MacBook Air
Mobile Phone
iOS
i dont see why talking about Bluetooth on these chips is prohibited on this topic.
This topic is specific to WiFi.
Note title: "Intel WiFi Driver Effort"

since the kext makes the hardware run properly (or at least be recognised properly by the system) i assumed Bluetooth would
get enabled as a by product.
Bluetooth is separate hardware on a completely separate bus (BT on USB, WiFi on PCIe).
 
Joined
Sep 11, 2012
Messages
47
Motherboard
GA H370N-Wifi
CPU
i7 8700
Graphics
RX 580
Mac
MacBook Air
Mobile Phone
Android, iOS
@black_wizard here is my output:
_____
Kext with invalid signatured (-67050) allowed: <OSKext 0x7ffc685234b0 [0x7fff8d3f6af0]> { URL = "file:///Users/kevinagnes/Documents/Black80211.kext/", ID = "net.rpeshkov.Black80211" }

Code Signing Failure: code signature is invalid

Invalid signature -67050 for kext <OSKext 0x7ffc685234b0 [0x7fff8d3f6af0]> { URL = "file:///Users/kevinagnes/Documents/Black80211.kext/", ID = "net.rpeshkov.Black80211" }
_____

Cheers!
 

Attachments

Joined
Oct 12, 2017
Messages
93
Motherboard
GA-Z170N-WIFI
CPU
Core i7 6700k
Graphics
EVGA NVIDIA GeForce GTX 960
So careful you miss a report of Bluetooth working that was posted 3 messages before this.

Now, don’t expect any macOS/iOS Bluetooth dependent feature to work. This is barebones Bluetooth and that’s it.
As long as i can use any bluetooth keyboard and mouse ill be happy for now while this project hopefully gets somewhere.
I actually plugged the card into the slot and bluetooth was enabled automatically without any kext. (only the USB fix)
ill try to connect to some other device other then the iPhone since they dont even see each other.
if it works ill also try my part with the Wifi
 
Last edited:
Joined
Feb 21, 2013
Messages
38
Motherboard
Samsung RC530-S01
CPU
Core i7 2630QM
Graphics
Intel HD Graphics 3000
Mobile Phone
iOS
Hi guys!

Small update. I (finally!) managed how to provide scan results to 80211 stack of MacOS. Here's screenshot:
upload_2018-7-5_0-31-2.png


upload_2018-7-5_0-37-53.png


Name of the network here is the one from my router. I just grabbed all the information from beacon via Wireshark.

It took me quite a long time to figure out why I don't see any results while I was providing it correctly. A couple of days ago I found out that it's possible to enable airport logging that's very useful and showed me that during scan, no matter what result I return, it was thinking that device is busy. This comes from the fact that if you implement some of IOCTL calls to return valid result, airport will be thinking that you're trying to associate with the network.

So, the next step I'll take is merging part of black80211 codebase into IntelWifi. Since IntelWifi is able to receive beacon frames from outside world, the result should be quite interesting: it will be possible to see the networks that you have nearby in Network preferences.

P.S. Previously I was going to implement KDP for Realtek8111 for easier debugging of my kexts, but finally I realised that it will take a lot of time because I need to understand in details how Realtek Ethernet devices work. Since KDP activates only when kernel is in panic, I'm absolutely blind, because in kernel panic system is absolutely unresponsive and the only way to check that you're succeeded in implementation is to try to connect to machine with debugger. Connected - you've done everything right. Not connected - something is wrong, what's wrong? - something somewhere. So, for now I decided to postpone this work till better times.
 
Last edited:
Joined
Sep 11, 2012
Messages
47
Motherboard
GA H370N-Wifi
CPU
i7 8700
Graphics
RX 580
Mac
MacBook Air
Mobile Phone
Android, iOS
Hi guys!

Small update. I (finally!) managed how to provide scan results to 80211 stack of MacOS. Here's screenshot:
View attachment 339244

View attachment 339246

Name of the network here is the one from my router. I just grabbed all the information from beacon via Wireshark.

It took me quite a long time to figure out why I don't see any results while I was providing it correctly. A couple of days ago I found out that it's possible to enable airport logging that's very useful and showed me that during scan, no matter what result I return, it was thinking that device is busy. This comes from the fact that if you implement some of IOCTL calls to return valid result, airport will be thinking that you're trying to associate with the network.

So, the next step I'll take is merging part of black80211 codebase into IntelWifi. Since IntelWifi is able to receive beacon frames from outside world, the result should be quite interesting: it will be possible to see the networks that you have nearby in Network preferences.

P.S. Previously I was going to implement KDP for Realtek8111 for easier debugging of my kexts, but finally I realised that it will take a lot of time because I need to understand in details how Realtek Ethernet devices work. Since KDP activates only when kernel is in panic, I'm absolutely blind, because in kernel panic system is absolutely unresponsive and the only way to check that you're succeeded in implementation is to try to connect to machine with debugger. Connected - you've done everything right. Not connected - something is wrong, what's wrong? - something somewhere. So, for now I decided to postpone this work till better times.
Amazing work! :)
 
Joined
May 27, 2016
Messages
84
Motherboard
Asus x99 Delux II
CPU
i7 6950
Graphics
Radeon VII
Mac
iMac
Classic Mac
PowerBook
Good progress. At what point do you need Apple80211Interface?
I never tested the reversed Apple80211Interface header. Most likely it does not work.

Hi guys!

Small update. I (finally!) managed how to provide scan results to 80211 stack of MacOS. Here's screenshot:
View attachment 339244

View attachment 339246

Name of the network here is the one from my router. I just grabbed all the information from beacon via Wireshark.

It took me quite a long time to figure out why I don't see any results while I was providing it correctly. A couple of days ago I found out that it's possible to enable airport logging that's very useful and showed me that during scan, no matter what result I return, it was thinking that device is busy. This comes from the fact that if you implement some of IOCTL calls to return valid result, airport will be thinking that you're trying to associate with the network.

So, the next step I'll take is merging part of black80211 codebase into IntelWifi. Since IntelWifi is able to receive beacon frames from outside world, the result should be quite interesting: it will be possible to see the networks that you have nearby in Network preferences.

P.S. Previously I was going to implement KDP for Realtek8111 for easier debugging of my kexts, but finally I realised that it will take a lot of time because I need to understand in details how Realtek Ethernet devices work. Since KDP activates only when kernel is in panic, I'm absolutely blind, because in kernel panic system is absolutely unresponsive and the only way to check that you're succeeded in implementation is to try to connect to machine with debugger. Connected - you've done everything right. Not connected - something is wrong, what's wrong? - something somewhere. So, for now I decided to postpone this work till better times.
 
Top