Contribute
Register

Intel WiFi Driver Effort

Status
Not open for further replies.
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.
 
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.
 
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.
 
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).
 
@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

  • Screen Shot 2018-07-03 at 21.51.38.png
    Screen Shot 2018-07-03 at 21.51.38.png
    74.4 KB · Views: 424
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:
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:
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! :)
 
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.
 
Status
Not open for further replies.
Back
Top