August 27, 2010

Lnx2Mac's Realtek RTL81xx Driver about to go Beta



OSX Realtek 8111E/8168E support coming soon

Hi !

Due to the shortcomings of the current Realtek 81xx Hackintosh drivers (such as lack of or limited support of 8111E, 32/64-bit, sleep issues), I endeavored to port the Linux RTL81xx driver to OSX.

With the help of MacMan and tonymacx86, we alpha tested it on several platforms, P55, H55, X58, with RTL8111D and RTL8111E.

I feel it's almost ready for a restricted Beta test cycle !

Among the issues it fixes are:
  • RTL8111E Support
  • Full 32-bit and 64-bit support
  • Sleep/Wake issues

MacMan and tonymacx86 proposed creating a restricted area in the tonymacx86 forum for this beta test !
Thanks guys, you rock !

So, if you are willing to help testing, go to this topic in the tonymacx86 forum, post your current configuration (and any caveats on it), and I'll consider you for inclusion in this Beta cycle.

Thanks,
Lnx2Mac

22 comments:

  1. A lot of people have been waiting for this, for a very long time. 32/64 bit support for all variants of the Realtek 81xx. Very nice work indeed!

    ReplyDelete
  2. I never thought I would see the day when this controller would work smoothly, automatically and out of the box. Cheers to all the team!

    So I guess now we will also -hopefully- have this driver behave to the vanilla standards--with "automatic" selection of speed rather than manual!

    Best regards and thank you!

    ReplyDelete
  3. @Konsti: Yes, I'm so thrilled with it !

    Have just released a 2nd Beta, and a pack of folks at the tonymacx86 forum are testing it as I write these lines !

    Good news ahead !!!

    ReplyDelete
  4. @lnx2mac

    i have searched the forum but i couldn't find an answer there: do you have any problems with ethernet with the Gigabyte GA-P55M-UD4?

    because i bought the same mobo and wanted to know what problems i might run into (automatic selection of speed?)

    ReplyDelete
  5. @Anonymous: No, I have no problems with the Ethernet on my rig.
    However, being a Linux kernel developer, I though I might help the people which are getting newer boards with the RTL8111E.
    So far, the feedback from the Beta group is amazing !
    I'm so glad I could contribute in doing this !

    ReplyDelete
  6. @lnx2mac

    now i understand! ;). i thought i'd have to wait with setting up my hackintosh until the driver is out.

    but great contribution anyway, i'm sure the folks with 8111E chipset will appreciate it very much :)

    ReplyDelete
  7. How about WOL? Is that working at all?
    And will you be releasing the code once it emerges out of beta?

    ReplyDelete
  8. @Anonymous: Yes, WOL works.
    And I'll be releasing the source code after the beta.

    ReplyDelete
  9. Hello, does this driver supports vlan creation?

    ReplyDelete
  10. @Anonymous: No. At the moment, VLAN creation is not yet supported.

    ReplyDelete
  11. Does the driver support “Checksum Offload” for Ethernet NICs that support it (8111D(L), 8168)? That would be especially great for us Atom users.

    ReplyDelete
  12. @Anonymous: Not at the moment. Checksum Offloading is still disabled.
    I'm working on stabilizing the basic functionality before I add more features.

    ReplyDelete
  13. @Lnx2Mac: “Checksum Offloading is still disabled” meaning that it’s in the source, but is not compiled in, right? I would be very happy to test it once you release the source.

    ReplyDelete
  14. @Anonymous: Checksum Offloading is currently disabled at the NIC register level.
    And yes, there's support for it in the source.

    ReplyDelete
  15. @Lnx2Mac: Could you please describe your KEXT development approach for people who already know how to write C/ObjC apps? That would really help people like me join in and help improving the drivers we use.

    ReplyDelete
  16. @Anonymous: In brief...
    1) Take from the Linux Open-Source driver the parts that "know how to talk" to the hardware,
    2) Detach it from the Linux kernel C APIs,
    3) Adapt it to XNU (The OS X Mach/BSD kernel and IOKit C++ framework).

    ReplyDelete
  17. @Lnx2Mac: Thanks! I am very interested in knowing how you debug a KEXT.

    ReplyDelete
  18. @Anonymous: There are several ways... and some are nicely explained in Apple's Developer Documentation:
    Debugging an I/O Kit Device Driver or Debugging a Kernel Extension with GDB...

    But you asked how do *I* debug kexts...
    Well, I'm old-school... I don't believe [much] in debuggers !
    Instead, I rely quite much on tracing and logging.
    But my main debugging strategy is READ AND KNOW YOUR CODE !
    So, infrequently, I reach for the debugger.

    ReplyDelete
  19. @Lnx2Mac: Thanks a lot. :)

    ReplyDelete
  20. I want just know if the driver from realtek version 2.0.5 (2010/9/21) for MacOS 10.6 on Intel-based Mac is working or not ?
    Thanks for the answers.

    ReplyDelete
  21. @Anonymous:
    Users of 2.0.5 on P55 and X58 have reported:
    - Network lost on wake-up, and
    - Every other boot, USB is stuck.
    It seems it works on older boards...

    None of these issues happen with the RTL81xx v0.0.67

    ReplyDelete
  22. Lnx2Mac, thank you for all great work.

    ReplyDelete