Jump to content

Atheros AR8131/AR8132


  • Please log in to reply
314 replies to this topic

#1
bramo

bramo

    InsanelyMac Protégé

  • Members
  • Pip
  • 9 posts
Hi all,

Pyun YongHyeon is working in third generation ethernet controller, AR8131/AR8132 from Atheros to FreeBSD.


http://people.freebs...ri/alc/if_alc.c
http://people.freebs...alc/if_alcreg.h
http://people.freebs...alc/if_alcvar.h
http://people.freebs...ri/alc/Makefile

Does anyone have any idea how to make a kext to mac os X?

Thanks,

Bramo

#2
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts

Hi all,

Pyun YongHyeon is working in third generation ethernet controller, AR8131/AR8132 from Atheros to FreeBSD.


http://people.freebs...ri/alc/if_alc.c
http://people.freebs...alc/if_alcreg.h
http://people.freebs...alc/if_alcvar.h
http://people.freebs...ri/alc/Makefile

Does anyone have any idea how to make a kext to mac os X?

Thanks,

Bramo


I sure wish I had some idea how to port this FreeBSD driver to OS X! I would love to get my AR8132 working on my new Sony netbook! :star_smile:

#3
monjardim

monjardim

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 1 posts
I´d like to use the ethernet in my ACER D250, I installed the IDENEB 10.5.6 but it didn´t work..

I can´t use the QUARTZ EXTREME too in ACER D250..

#4
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
Hoping someone can help!!!

#5
hammered24

hammered24

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
Well, i tried compiling this, had over 2000 Errors in each file.

Would probably be easier to do a complete re-write.

Something i don't have enough knowledge or time to do.

Sorry Guys, but whoever programed that sucks :(

#6
reader02

reader02

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts

Well, i tried compiling this, had over 2000 Errors in each file.

Would probably be easier to do a complete re-write.

Something i don't have enough knowledge or time to do.

Sorry Guys, but whoever programed that sucks :star_smile:


try it:

1. download atl1E source from here : http://iats.googleco...rce20090418.zip
2. download l1c linux source AR81Family-linux-v1.0.0.10.tar.gz from here : http://partner.ather...om/Drivers.aspx
3. According l1c source to modify the following file:
at.h
at_hw.cpp
at_hw.h
at_main.cpp
at_main.h
at_osdep.h
at_param.cpp
at_param.h
4. good luck!

#7
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts

try it:

1. download atl1E source from here : http://iats.googleco...rce20090418.zip
2. download l1c linux source AR81Family-linux-v1.0.0.10.tar.gz from here : http://partner.ather...om/Drivers.aspx
3. According l1c source to modify the following file:
at.h
at_hw.cpp
at_hw.h
at_main.cpp
at_main.h
at_osdep.h
at_param.cpp
at_param.h
4. good luck!


Reader02, thanks for posting the link to the L1c linux source!!! I am going to get right onto working on this driver again. Are you willing to give any insight if (and when) I hit snags along the way? Or would you prefer to not be involved in this driver at all?

Thanks again for the link! :(

#8
PaxXx

PaxXx

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPip
  • 1,115 posts
  • Gender:Male
  • Location:ITALIA
Hello Boys !!!!! I have the same Ethernet LAN on my laptop Acer 6930G signature .... I tried several kext for Atl1e on the forum, but nobody has managed to make it go !!!!!
If you need help, I'm available!! :) ;)

#9
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
Well, it just became painfully obvious to me that I am too dumb to get this thing working with my AR8132. After numerous code changes and adaptions, all I've managed to do is frustrate myself and my poor little netbook. :-( I hope someone with more driver knowledge than me can make some sense of it all.

#10
arkixml

arkixml

    InsanelyMac Protégé

  • Members
  • Pip
  • 7 posts
I really need this to work on my netbook too. I'm not much of a programmer, but I'd like to help figure this one out if I can.

#11
terramir

terramir

    InsanelyMac Geek

  • Members
  • PipPipPipPip
  • 213 posts
  • Gender:Male
  • Location:Los Angeles

I really need this to work on my netbook too. I'm not much of a programmer, but I'd like to help figure this one out if I can.

Hmm there is a driver for mac os that support the family http://www.insanelym...howtopic=140907 problem is it only really supports the pciid 1969:1026 and the ones your talking about here are most likely the pciid 1969:1062 however if you edit the id in the info.plist file inside the kext you get the card detected however you cannot get an internet connection etc ip etc. However if you guys that are looking at that BSD driver can compare the differences between that card and the 1969:1026 card you may be able to understand what needs to be changed on this kext in order to make it work for our cards (the 1969:1062)
if any of you have a clue about coding this is a hint I can give you, myself I dun have the first clue about coding in kernel space in regards to bsd land so I can just point to the link.
terramir

#12
congenic

congenic

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 4 posts
My device shows up as 1969:1063 rev c0.

I would really appreciated if someone could provide a way to get this supported in Leopard.

Some of you guys are so talented...I hope someone will be able to figure this out.

Alternatively, can someone suggest a compatible USB wireless device?

#13
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
I haven't given up on this thing--quite frankly, I need the built in NIC too badly to just sit back and "wait it out". I have compiled numerous new kexts consisting of a variety of changes to the L1e kext. I just cannot get it working. :-/

At this point, I am willing to chip in some monetary compensation (for the time dedicated to porting this driver) to anyone who can produce a working driver for this NIC. I certainly would appreciate any assistance with getting this project working. Thanks!

#14
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
Does anyone know what the closest OS X equivalent data structure is to a linux socket buffer (sk_buff)? Is there a native data structure in OS X (I am still very new to the OS X libraries) which is typically used as a socket buffer for OS X network drivers? If there is not a native type, has anyone else here created a "socket buffer" class for OS X they might be willing to share?

Thanks in advance to anyone who can help! :)

#15
hammered24

hammered24

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts

Well, it just became painfully obvious to me that I am too dumb to get this thing working with my AR8132. After numerous code changes and adaptions, all I've managed to do is frustrate myself and my poor little netbook. :-( I hope someone with more driver knowledge than me can make some sense of it all.


I feel exactly the same way. I Defintally don't know enough about C programming to get this thing working. More than 50% of the code would need to be adapted / rewritten and that is a BIG Job and requires someone who actually knows what they are doing, My first year in a UNI Programming course isn't going to cut it i'm afraid.

anyway - Maybe this'll help you out http://www.psystar.c...pensource/r1000

You could copy some of the code or give you a template to look at for a fully working driver.

#16
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts

I feel exactly the same way. I Defintally don't know enough about C programming to get this thing working. More than 50% of the code would need to be adapted / rewritten and that is a BIG Job and requires someone who actually knows what they are doing, My first year in a UNI Programming course isn't going to cut it i'm afraid.

anyway - Maybe this'll help you out http://www.psystar.c...pensource/r1000

You could copy some of the code or give you a template to look at for a fully working driver.


Contrary to my initial "frustrated" posts, I have not stopped working on this driver (the AR8132 driver). I have basically replaced all of the at_hw.h file from the ATL1e source with the register definitions from the linux ATL1c/ATL2c source. The amount of code that needed to be changed was nowhere near 50% (at least not yet). But, there are plenty of differences [apparently] between the ATL1e/ATL2e and ATL1c/ATL2c hardware.

After more coding and testing, I cannot figure out why I continually end up meeting this condition in this function: void AttansicL1eEthernet::atIntr(...)

Can anyone explain to me what might cause the "status & (ISR_GPHY | ISR_MANUAL)" condition to always be true? Furthermore, can anyone give any info as to what enabling "MASTER_CTRL_MANUAL_INT" does in this code:
// Enable interrupts. 	val = AT_READ_REG(&adapter->hw, REG_MASTER_CTRL);    AT_WRITE_REG(&adapter->hw, REG_MASTER_CTRL, val|MASTER_CTRL_MANUAL_INT);
The reason I ask is that the linux ATL1c code does NOT enable the same register when enabling the adapter. However, the OS X code does--anyone know why? If I comment out the above two lines, I do not end up in the "status & (ISR_GPHY | ISR_MANUAL)" state as I mentioned above AND I actually reach the outputPacket(...) function. However, even though my debug output says it is outputting packets, there is no network activity indicated by activity LEDs and obviously, I am not actually able to speak with my network. :(

I can make my way through the code fairly well, but I get a bit lost when working with hardware interrupt requests. Any insight into this would be greatly appreciated! Thanks in advance!

#17
enzobelmont

enzobelmont

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 168 posts
sorry MrBlippy I can not help you but count on me as a beta tester :(

#18
reader02

reader02

    InsanelyMac Protégé

  • Members
  • PipPip
  • 63 posts
1. atIntr originally code at atl1e_main.c line 2478 atl1e_intr function. and atl1c_intr function at atl1c_main.c line 1628.

if the "status & (ISR_GPHY | ISR_MANUAL)" condition always true, Instruction register has not been properly initialized

2. MASTER_CTRL_MANUAL_INT at atl1e_main.c line 1644 atl1e_up function ,you can delete it. try search MASTER_CTRL_MANUAL_INT in atl1e_main.c.you should find that.

In short, you can compare atl1e_main.c and AttansicL1eEthernet.cpp, Then modify the AttansicL1eEthernet.cpp according to atl1c_main.c file.

#19
MrBlippy

MrBlippy

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts

1. atIntr originally code at atl1e_main.c line 2478 atl1e_intr function. and atl1c_intr function at atl1c_main.c line 1628.

if the "status & (ISR_GPHY | ISR_MANUAL)" condition always true, Instruction register has not been properly initialized

2. MASTER_CTRL_MANUAL_INT at atl1e_main.c line 1644 atl1e_up function ,you can delete it. try search MASTER_CTRL_MANUAL_INT in atl1e_main.c.you should find that.

In short, you can compare atl1e_main.c and AttansicL1eEthernet.cpp, Then modify the AttansicL1eEthernet.cpp according to atl1c_main.c file.


Thanks for replying! I have been doing as you say--I have compared the atl1c files against the atl1e project and have made numerous changes. I am at the point where so many of the original atl1e functions have been modified to match the atl1c functions and yet, I just cannot get past the "status & (ISR_GPHY | ISR_MANUAL)" condition. It appears that the adapter is initializing properly, but apparently something is still not configured properly. I am about ready to pull my hair out. :wacko:

When you refer to the instruction register, are you talking about "REG_ISR" (address 0x1600)? Also, if it helps at all, when I enter into the atIntr(...) method in [my modified] AttansicL1eEthernet.cpp file, the status at REG_ISR is 0x1400004 or 0x81400004 (depending on whether I check before of after acknowledging the ISR).

I suppose if it would help, I could put the Xcode project up on a Google Code site if anyone cares to come help point out where my errors are. :P The code is a mess as I have been making numerous changes to it. Let me know if there is any interest in helping me out with what is left (hopefully, it is not too far off). Thanks to anyone who would like to help with the code.

BTW, I know there are many people who are anxious to beta test a kext when it is ready. No need to reply to say that. I will put out a beta when it is ready to test--probably under a new thread.

#20
fallenlordz

fallenlordz

    InsanelyMac Protégé

  • Members
  • Pip
  • 8 posts
Hope its progressing along nicely :rolleyes:
patiently waiting!





2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy