Jump to content

Atheros 9285 kext for ML


15 posts in this topic

Recommended Posts

Hi sorry about this, this is literally the last thing. I did have a modified kext which was working but now what ever I try it doesn't seem to want to work.

 

I tried adding the AirPortAtheros21 kext back into the plugin folder of the IO80211Family kext Which worked before ...does anyone have a working kext that they don't mind uploading please?

Link to comment
Share on other sites

Isnt osx86 down for you? Thats interesting its been 404'ing for me for over a month. I will try it on another computer....maybe my firewall has somehow started blocking it.

 

EDIT: nope I tested it on a site that pings it and the site says its up but I cant access it here for whatever reasons. I dont suppose someone could grab the file for me and upload it?

 

Proof that I am not just being lazy

 

screenshot20121017at111.jpg

Link to comment
Share on other sites

hello

 

apply in dsdt the fix for 9285 and use the stock kext

 

no WLAN

 

into device name_adr 0x001C0001 insert
begin
Device (WLAN)\n
{\n
   Name (_ADR, 0x00)\n
   Method (_DSM, 4, NotSerialized)\n
   {\n
    Store (Package (0x0C)\n
	    {\n
		    "AAPL,slot-name", \n
		    Buffer (0x08)\n
		    {\n
			    "AirPort"\n
		    }, \n
		    "device-id", \n
		    Unicode ("*"), \n
		    "device_type", \n
		    Buffer (0x08)\n
		    {\n
			    "AirPort"\n
		    }, \n
		    "model", \n
		    Buffer (0x34)\n
		    {\n
			    "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
		    }, \n
		    "subsystem-id", \n
		    Buffer (0x04)\n
		    {\n
			    0x8F, 0x00, 0x00, 0x00\n
		    }, \n
		    "subsystem-vendor-id", \n
		    Buffer (0x04)\n
		    {\n
			    0x6B, 0x10, 0x00, 0x00\n
		    }\n
	    }, Local0)\n
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
    Return (Local0)\n
   }\n
}
end

 

or normal patch

 

into device name_adr 0x00 parent_adr 0x001C0001 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
   Store (Package (0x0C)\n
    {\n
	    "AAPL,slot-name", \n
	    Buffer (0x08)\n
	    {\n
		    "AirPort"\n
	    }, \n
	    "device-id", \n
	    Unicode ("*"), \n
	    "device_type", \n
	    Buffer (0x08)\n
	    {\n
		    "AirPort"\n
	    }, \n
	    "model", \n
	    Buffer (0x34)\n
	    {\n
		    "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
	    }, \n
	    "subsystem-id", \n
	    Buffer (0x04)\n
	    {\n
		    0x8F, 0x00, 0x00, 0x00\n
	    }, \n
	    "subsystem-vendor-id", \n
	    Buffer (0x04)\n
	    {\n
		    0x6B, 0x10, 0x00, 0x00\n
	    }\n
    }, Local0)\n
   DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
   Return (Local0)\n
}
end

 

good hack

Link to comment
Share on other sites

Thank you for the hack, but which kext is the normal kext? The ML install doesnt install the kext I was using with Lion and neither the one I had working previously with ML i.e. the AirPortAtheros21 kext...do I need to add this to the IO80211Family kext or just leave it as is and apply the patch?

Link to comment
Share on other sites

hello

 

apply in dsdt the fix for 9285 and use the stock kext

 

no WLAN

 

into device name_adr 0x001C0001 insert
begin
Device (WLAN)\n
{\n
Name (_ADR, 0x00)\n
Method (_DSM, 4, NotSerialized)\n
{\n
 Store (Package (0x0C)\n
	 {\n
		 "AAPL,slot-name", \n
		 Buffer (0x08)\n
		 {\n
			 "AirPort"\n
		 }, \n
		 "device-id", \n
		 Unicode ("*"), \n
		 "device_type", \n
		 Buffer (0x08)\n
		 {\n
			 "AirPort"\n
		 }, \n
		 "model", \n
		 Buffer (0x34)\n
		 {\n
			 "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
		 }, \n
		 "subsystem-id", \n
		 Buffer (0x04)\n
		 {\n
			 0x8F, 0x00, 0x00, 0x00\n
		 }, \n
		 "subsystem-vendor-id", \n
		 Buffer (0x04)\n
		 {\n
			 0x6B, 0x10, 0x00, 0x00\n
		 }\n
	 }, Local0)\n
 DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
 Return (Local0)\n
}\n
}
end

 

or normal patch

 

into device name_adr 0x00 parent_adr 0x001C0001 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x0C)\n
 {\n
	 "AAPL,slot-name", \n
	 Buffer (0x08)\n
	 {\n
		 "AirPort"\n
	 }, \n
	 "device-id", \n
	 Unicode ("*"), \n
	 "device_type", \n
	 Buffer (0x08)\n
	 {\n
		 "AirPort"\n
	 }, \n
	 "model", \n
	 Buffer (0x34)\n
	 {\n
		 "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
	 }, \n
	 "subsystem-id", \n
	 Buffer (0x04)\n
	 {\n
		 0x8F, 0x00, 0x00, 0x00\n
	 }, \n
	 "subsystem-vendor-id", \n
	 Buffer (0x04)\n
	 {\n
		 0x6B, 0x10, 0x00, 0x00\n
	 }\n
 }, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end

 

good hack

 

As I far as I know, this method only works for 9285 with 4.x version :(

Mine is 2.X

Link to comment
Share on other sites

hello

 

apply in dsdt the fix for 9285 and use the stock kext

 

no WLAN

 

into device name_adr 0x001C0001 insert
begin
Device (WLAN)\n
{\n
Name (_ADR, 0x00)\n
Method (_DSM, 4, NotSerialized)\n
{\n
 Store (Package (0x0C)\n
	 {\n
		 "AAPL,slot-name", \n
		 Buffer (0x08)\n
		 {\n
			 "AirPort"\n
		 }, \n
		 "device-id", \n
		 Unicode ("*"), \n
		 "device_type", \n
		 Buffer (0x08)\n
		 {\n
			 "AirPort"\n
		 }, \n
		 "model", \n
		 Buffer (0x34)\n
		 {\n
			 "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
		 }, \n
		 "subsystem-id", \n
		 Buffer (0x04)\n
		 {\n
			 0x8F, 0x00, 0x00, 0x00\n
		 }, \n
		 "subsystem-vendor-id", \n
		 Buffer (0x04)\n
		 {\n
			 0x6B, 0x10, 0x00, 0x00\n
		 }\n
	 }, Local0)\n
 DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
 Return (Local0)\n
}\n
}
end

 

or normal patch

 

into device name_adr 0x00 parent_adr 0x001C0001 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x0C)\n
 {\n
	 "AAPL,slot-name", \n
	 Buffer (0x08)\n
	 {\n
		 "AirPort"\n
	 }, \n
	 "device-id", \n
	 Unicode ("*"), \n
	 "device_type", \n
	 Buffer (0x08)\n
	 {\n
		 "AirPort"\n
	 }, \n
	 "model", \n
	 Buffer (0x34)\n
	 {\n
		 "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
	 }, \n
	 "subsystem-id", \n
	 Buffer (0x04)\n
	 {\n
		 0x8F, 0x00, 0x00, 0x00\n
	 }, \n
	 "subsystem-vendor-id", \n
	 Buffer (0x04)\n
	 {\n
		 0x6B, 0x10, 0x00, 0x00\n
	 }\n
 }, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end

 

good hack

 

bro, what's stock kext ?

the original IO802 kext for which system version ?

Link to comment
Share on other sites

  • 2 weeks later...

hello

 

apply in dsdt the fix for 9285 and use the stock kext

 

no WLAN

 

into device name_adr 0x001C0001 insert
begin
Device (WLAN)\n
{\n
Name (_ADR, 0x00)\n
Method (_DSM, 4, NotSerialized)\n
{\n
 Store (Package (0x0C)\n
	 {\n
		 "AAPL,slot-name", \n
		 Buffer (0x08)\n
		 {\n
			 "AirPort"\n
		 }, \n
		 "device-id", \n
		 Unicode ("*"), \n
		 "device_type", \n
		 Buffer (0x08)\n
		 {\n
			 "AirPort"\n
		 }, \n
		 "model", \n
		 Buffer (0x34)\n
		 {\n
			 "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
		 }, \n
		 "subsystem-id", \n
		 Buffer (0x04)\n
		 {\n
			 0x8F, 0x00, 0x00, 0x00\n
		 }, \n
		 "subsystem-vendor-id", \n
		 Buffer (0x04)\n
		 {\n
			 0x6B, 0x10, 0x00, 0x00\n
		 }\n
	 }, Local0)\n
 DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
 Return (Local0)\n
}\n
}
end

 

or normal patch

 

into device name_adr 0x00 parent_adr 0x001C0001 insert
begin
Method (_DSM, 4, NotSerialized)\n
{\n
Store (Package (0x0C)\n
 {\n
	 "AAPL,slot-name", \n
	 Buffer (0x08)\n
	 {\n
		 "AirPort"\n
	 }, \n
	 "device-id", \n
	 Unicode ("*"), \n
	 "device_type", \n
	 Buffer (0x08)\n
	 {\n
		 "AirPort"\n
	 }, \n
	 "model", \n
	 Buffer (0x34)\n
	 {\n
		 "Atheros 9285 8802.11 b/g/n Wireless Network Adapter"\n
	 }, \n
	 "subsystem-id", \n
	 Buffer (0x04)\n
	 {\n
		 0x8F, 0x00, 0x00, 0x00\n
	 }, \n
	 "subsystem-vendor-id", \n
	 Buffer (0x04)\n
	 {\n
		 0x6B, 0x10, 0x00, 0x00\n
	 }\n
 }, Local0)\n
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
Return (Local0)\n
}
end

 

p.H.

Could you please explain with more detail how we can apply this hack to the DSDT file?

I'm using the Atheros9285 kext on ML (and it works) but I've always read that it's much better to use DSDT files and avoid kexts if it can be done with DSDT.

Thanks.

Link to comment
Share on other sites

Can these patches be applied automatically with DSDT Editor? Or will i have to apply them manually?

 

I'm asking because i have no idea where to find the correct place to apply it manually, but i have the DSDT Editor app, and just discovered that, given the performance of my atheros 9285 in Mountain Lion with an old legacy kext i use for enable it, the dsdt editing way suddenly became quite attractive :)

 

Another question i forgot: will those patches work with my firmware version (thanks, ph, for raising the subject), which is 2.1.14.9?

 

Bah, won't wait for an answer: going to test the "normal" patch right now! :)

 

UPDATE: my answer to my own questions:

 

1) Worked seamlessly with DSDT Editor. Sacredgeometry, go google for it, download it, install the patch artur-pt posted here (i used the "No WLAN", you should use the better for you) and quite possibly be happy with your working wi-fi. :)

 

2) In the end, i thought my firmware was 2.x because of what appeared in System Information. Since it now appears as 4.0, that older value in the end must have been generated but the legacy kext i was using, which has a plug-in inside called AirPortAtheros21 inside. Now i have a perfectly stable wi-fi. Thanks once more, artur-pt.

 

PH, you are sure your firmware is 2.x? Take the System Information shown specs with a grain of salt, if it was there you learned this info.

 

Guys, now that i'm starting to do dsdt patches more frequently, i can tell ya: how much fun!

Link to comment
Share on other sites

Don't know which version I have (2 or 4), but with a modified 802family kext I got AR9285 working with fast speeds. If I put back the original kext ML is saying: No WLAN devices found.

 

Should I apply the No WLAN patch then, or the normal one?

 

Thx.

Link to comment
Share on other sites

Check you dsdt out: if it does not have a device called WLAN, then you should use the "no WLAN" patch. Otherwise, use the normal one. :)

 

Ah, now I get it. Silly me :)

Thx, for the quick reply :D

 

This whole forum is just a very :thumbsup_anim: community :D.

Link to comment
Share on other sites

OMG! What did I started to do, so fun!

 

Okay, I really want to do this, but to pull this off I think I'm gonna need your help guys, if that's okay :)

How do I find out which device delivers WLAN in the DSDT (if any)?

 

I got following device blocks:

 

Device FAN0 (not likely)

Device FAN1 (not likely)

Device PDRC (is inside Scope _SB.PCI0)

Device SAT0 (same scope as PDRC)

Device SAT1 (same scope as PDRC)

Device SBUS (same scope as PDRC)

Device TMRP (same scope as PDRC)

Device CPBG (Scope _SB)

 

edit: Got loads more of device blocks (seemed rather weird at first sight). Please look in the DSDT for all Device blocks. I couldn't find a WLAN block though.

 

Is this enough info for you? Any keywords I must be looking for?

For the mods: Not planning to hijack this topic :)

 

If needed I can upload DSDT.

 

My DSDT is downloadable as a dsl file, see attachment. If needed only. I really like to patch it myself to let it be a good moment of learning, just kinda new to this stuff. Did it once earlier, but forgot most of it already. Will try to remember better for future reference :)

dsdt.zip

Link to comment
Share on other sites

 Share

×
×
  • Create New...