mortis Posted November 25, 2005 Share Posted November 25, 2005 Well... Here are the sources to start developing a driver for Marvell-Yukon, Syskonnect and other NICs The other thread was going nowhere Please post on advances, and not requierements on how much you need this driver! Good Luck. EDIT: added sources from NetBSD4 FreeBSD.zip linux.zip sk_netbsd4.zip Link to comment Share on other sites More sharing options...
jegabla Posted November 25, 2005 Share Posted November 25, 2005 Apple Network Kernel Extensions Programming Guide: http://developer.apple.com/documentation/D...P40001858-CH225 Link to comment Share on other sites More sharing options...
MadHorab Posted November 25, 2005 Share Posted November 25, 2005 As I said in the other post, I can host the driver Link to comment Share on other sites More sharing options...
altaic Posted December 5, 2005 Share Posted December 5, 2005 That network kernel extensions development guide link is broken. Here's a valid one. Link to comment Share on other sites More sharing options...
altaic Posted December 5, 2005 Share Posted December 5, 2005 I'm a few hundred lines into writing a driver for the yukon (I started it tonight). This is my first device driver, and the apple frameworks require sifting through dev docs, so it may take awhile. Also, I happen to be a student who prioritizes his studies over personal projects, so be patient. I'll post updates here periodically. Will Link to comment Share on other sites More sharing options...
eightballbill Posted December 5, 2005 Share Posted December 5, 2005 Thanks Altaic. If you have time, could you explain or give us some link about how to port drivers from BSD to darwin? Link to comment Share on other sites More sharing options...
altaic Posted December 5, 2005 Share Posted December 5, 2005 It depends entirely on the device. There's a USB example with the ADC Reference Library, as well as a PCMCIA one. There are several audio examples, also. Since plain old PCI doesn't have any examples, I read the Writing PCI Drivers doc, among others I searched for in the ADC. Basically, one has to write it from scratch, since the code structure is quite different from Apple's frameworks. Reference the other ports, certainly, for things like registers and such. There are sometimes notes about hardware bugs and workarounds, too. So, I guess what I'm saying is that when you sit down to port a driver, you should prepare yourself to write the thing from the bottom up. There is no simple method, of which I am aware. When I am sure I have the foundation of the driver correct, and I have the licensing {censored} figured out, I'll post what I've done, so others may fill in the gaps if they so choose. Will Link to comment Share on other sites More sharing options...
aitikin Posted December 6, 2005 Share Posted December 6, 2005 When I am sure I have the foundation of the driver correct, and I have the licensing {censored} figured out, I'll post what I've done, so others may fill in the gaps if they so choose. Cool, thanks for your work. I unfortunately can't code very well but I'm praying someone will figure it out soon. This is the one thing left before I can move my primary OS to OS X. Link to comment Share on other sites More sharing options...
altaic Posted December 7, 2005 Share Posted December 7, 2005 Jesus... The registers list just keeps going. I think I'm going to ditch my register structs and use the linux ones instead. Upon further investigation, it looks like the linux ones will work with little modification. Will Link to comment Share on other sites More sharing options...
eightballbill Posted December 7, 2005 Share Posted December 7, 2005 Which register base did you use? The BSD's one? Link to comment Share on other sites More sharing options...
altaic Posted December 7, 2005 Share Posted December 7, 2005 Yeah. The BSD ones are all defines which I was converting to structs, where as the linux ones are all proper structs. I need to pass a struct containing all the hardware registers into the memory-mapper, so I can directly access them. Link to comment Share on other sites More sharing options...
autoy Posted December 7, 2005 Share Posted December 7, 2005 Hey, this is great news! Glad this project is not dead after all Plase count us in for betatesting! Link to comment Share on other sites More sharing options...
eightballbill Posted December 7, 2005 Share Posted December 7, 2005 How long do you think it will take to finish the driver? (i don't want to put you under pressure, just to know when you will make us happy ;-) ) Link to comment Share on other sites More sharing options...
altaic Posted December 8, 2005 Share Posted December 8, 2005 (edited) Well, I'm going to try to get basic features working, first, which, when I figure out how the hardware queues work, should be trivial. I'm still working on the registers. It's pretty convoluted. It'll take a while. The more code I read, the more complex and daunting this task is. One step at a time, though. I know that didn't really answer your question, but I really don't know how long it'll take. It might take a week, or a month or more. Likely more than a week, since I have end-of-semester exams, projects, and crits. Edited December 8, 2005 by altaic Link to comment Share on other sites More sharing options...
altaic Posted December 8, 2005 Share Posted December 8, 2005 I've contacted Marvell, asking if they'd be so kind as to send me the whitepaper describing the registers. It would speed things up tremendously. Link to comment Share on other sites More sharing options...
eightballbill Posted December 10, 2005 Share Posted December 10, 2005 What did they answer? Link to comment Share on other sites More sharing options...
jegabla Posted December 13, 2005 Share Posted December 13, 2005 (edited) Altaic, have you considered contacting syskonnect? I think their drivers are based on Marvel Yukon chips too. Edited December 13, 2005 by jegabla Link to comment Share on other sites More sharing options...
mortis Posted December 13, 2005 Author Share Posted December 13, 2005 I did contact syskonnect 1-2 months ago. They replied that OSX driver are not opensource so they wouldn´t releasethem, and x86 platform was not a target for them at that point. It may be worhtwhile trying to contact the again though. Link to comment Share on other sites More sharing options...
eightballbill Posted December 17, 2005 Share Posted December 17, 2005 Altaic? Are you there? Link to comment Share on other sites More sharing options...
altaic Posted December 19, 2005 Share Posted December 19, 2005 Marvell did not respond. Additionally, I'm really busy with exams and such, and then I plan on taking a break for a week or so, so I won't be doing any development for some time. Link to comment Share on other sites More sharing options...
mortis Posted December 19, 2005 Author Share Posted December 19, 2005 since I can't code I won't flame anyone, and I'd rather thank the few people who have taken the taks of porting drivers. But it is most dissapointing that after some 4 months of OsX this community has achieved very little in terms of porting to everyone. We have been more succesful in cracking and hacking installs of OsX (a somewhat illegal activity) than acctually expanding the hardware base (a totally legal activity through opensource!) Thus, OsX will still be a limited Os for few people Please people, keep on trying! Link to comment Share on other sites More sharing options...
autoy Posted December 20, 2005 Share Posted December 20, 2005 Ok, I got reply from Syskonnect. The good news is they will definitely support x86 platform. The bad news is that porting resources are not sheduled yet, so it's not going to be inmediate. Maybe the release of x86 machines on January will put them under some pressure. Stay tuned, it ain't over yet... Link to comment Share on other sites More sharing options...
eightballbill Posted December 20, 2005 Share Posted December 20, 2005 Mortis you are right, but it is also true that the people who could really help us porting x86 application/drivers etc. and have experience (like Maxxuss or cremes for example) don't help us. I'm not saying that they are expected to, since is not their job, but they could do in 1 day much more than what we could do in 2 weeks. Is there a way to contact people them and ask them to give us a hand? Link to comment Share on other sites More sharing options...
aitikin Posted December 20, 2005 Share Posted December 20, 2005 Mortis, I agree, I believe that everyone here is starting to agree with you. I'm not trying to {censored} about it, but I believe that it is sad that we've had projects devoted to Marvell and nVidia and everything and the fruits of the labor (in the nVidia case) are barely worth it. We all know there will eventually be nVidia drivers, it'll just be a matter of time, I understand that, but I still believe it would be great if we had it working. The most likely situation for it to be successful is if we were to get a lot more people working on it. Of course I, like yourself, don't know how to code drivers, so I can't exactly help. Link to comment Share on other sites More sharing options...
altaic Posted December 22, 2005 Share Posted December 22, 2005 It takes a great deal of effort to write drivers for hardware who's manufacturer is uncooperative. Not just time, but effort. Even for experienced people, it's difficult. Link to comment Share on other sites More sharing options...
Recommended Posts