Jump to content

DSDT.aml kills ASUS WL138g V2 wireless card (solved)


di524up
 Share

37 posts in this topic

Recommended Posts

I have a GA-P35-DS4 board, which has ALC889a audio and Realtek 8111B ethernet.

 

In Leopard, ASUS WL138g V2 wireless card works out-of-box and is detected as Airport.

 

In Snow Leopard, however, it is only detected if DSDT.aml is removed from /Extra.

 

I have tried various possibilities:

1) DSDT.aml with only RTC fix

2) DSDT.aml with only sound fix

3) DSDT.aml with only ethernet fix

 

Otherwise, with DSDT.aml, RTC/sound/ethernet works perfectly.

 

Booting with kernel flags arch=i386 or -x32 did not help.

 

Anyone has similar problem and would like to share your experience? Thanks!

 

Update 1

Still no joy after further tests...

1. The same dsdt.aml kills wireless card in Leopard too

2. Flash the BIOS with the patched BIOS - same outcome

 

Update 2

Clearly the wireless card is missing with dsdt.aml

Without dsdt.aml

post-402179-1251873414_thumb.png

With dsdt.aml

post-402179-1251873372_thumb.png

dsdt.aml with RTC & sound fix

DSDT.aml.zip

 

Update 3

Finally got the wireless card in both 32- and 64-bit modes to work by decompiling the dsdt without the "-newHPET" option. However, HPET is lost.

DSDT.aml.zip

Link to comment
Share on other sites

I have a GA-P35-DS4 board, which has ALC889a audio and Realtek 8111B ethernet.

 

In Leopard, ASUS WL138g V2 wireless card works out-of-box and is detected as Airport.

 

In Snow Leopard, however, it is only detected if DSDT.aml is removed from /Extra.

 

I have tried various possibilities:

1) DSDT.aml with only RTC fix

2) DSDT.aml with only sound fix

3) DSDT.aml with only ethernet fix

 

Otherwise, with DSDT.aml, RTC/sound/ethernet works perfectly.

 

Booting with kernel flags arch=i386 or -x32 did not help.

 

Anyone has similar problem and would like to share your experience? Thanks!

 

For me, the IONetworking.kext w/ Realtekr1000 always kills ASUS WL138g V2.

 

 

My recommendation. Dont put networking in your DSDT & dont use realtekr1000.kext. Then it should work.

Link to comment
Share on other sites

Still no joy after further tests...

 

1. The same dsdt.aml kills wireless card in Leopard too

2. Flash the BIOS with the patched BIOS - same outcome

 

So, I have come to a conclusion that something in dsdt has to be changed, but I don't know how.

 

Can someone help to have a look at my dsdt a couple of posts above?

 

Thanks!

Link to comment
Share on other sites

it has something to do with hpet, i will post a solution for you when i reach home... but you will lose your hpet

 

Thanks, alexkidd!

 

Like you say, it is indeed a problem with hpet. I finally got the wireless card to work by decompiling the dsdt without the "-newHPET" option. The new dsdt.aml works fine.

 

Any idea how to get hpet to work? I really appreciate your help here. Thanks again!

Link to comment
Share on other sites

i've managed to get wireless card detected with HPET enabled, but it couldnt scan for any network.....

 

what i've done is add these into my dsdt

Device (RP02)
		{
			Name (_ADR, 0x001E0000)  // last two digits is a number of the bridge
			Device (ARPT)
			{
				Name (_ADR, Zero)
				Name (_SUN, 0x00)	// add this object with the same value as PCI bridge
				  Method (_DSM, 4, NotSerialized)   // add this method
				{
					Store (Package (0x04)
					{
						"model",
						Buffer ()
						{
							"BCM4306 802.11b/g Wireless"
						},

						"built-in",
						Buffer ()
						{
							0x00
						}

					}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))   // define the method at the top
					Return (Local0)
				}

  }
}

Link to comment
Share on other sites

i've managed to get wireless card detected with HPET enabled, but it couldnt scan for any network.....

 

what i've done is add these into my dsdt

Device (RP02)
		{
			Name (_ADR, 0x001E0000)  // last two digits is a number of the bridge
			Device (ARPT)
			{
				Name (_ADR, Zero)
				Name (_SUN, 0x00)	// add this object with the same value as PCI bridge
				  Method (_DSM, 4, NotSerialized)   // add this method
				{
					Store (Package (0x04)
					{
						"model",
						Buffer ()
						{
							"BCM4306 802.11b/g Wireless"
						},

						"built-in",
						Buffer ()
						{
							0x00
						}

					}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))   // define the method at the top
					Return (Local0)
				}

  }
}

 

Can you give more details? To which section should the above codes be added? Thanks!

Link to comment
Share on other sites

A Google search seems to indicate that dsdt mod is not compatible with wireless, not only on OS X but on Linux as well.

 

@alexkidd, you are so close already. Any progress?

 

finally got HPET and wireless working with dsdt mod....after removing NullCPUPowerManagement.kext and SleepEnabler.kext and use dsdt patcher with -newHPET option....with the following code

			Device (HUB0)
		{
			Name (_ADR, 0x001E0000)
			Method (_STA, 0, NotSerialized)
			{
				Return (0x0F)
			}

			Name (PICM, Package (0x0C)
			{
				Package (0x04)
				{
					0xFFFF, 
					Zero, 
					LNKE, 
					Zero
				}, 

				Package (0x04)
				{
					0xFFFF, 
					One, 
					LNKD, 
					Zero
				}, 

				Package (0x04)
				{
					0xFFFF, 
					0x02, 
					LNKC, 
					Zero
				}, 

				Package (0x04)
				{
					0xFFFF, 
					0x03, 
					LNKA, 
					Zero
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					Zero, 
					LNKD, 
					Zero
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					One, 
					LNKC, 
					Zero
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					0x02, 
					LNKA, 
					Zero
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					0x03, 
					LNKE, 
					Zero
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					Zero, 
					LNKC, 
					Zero
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					One, 
					LNKC, 
					Zero
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					0x02, 
					LNKC, 
					Zero
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					0x03, 
					LNKC, 
					Zero
				}
			})
			Name (APIC, Package (0x0C)
			{
				Package (0x04)
				{
					0xFFFF, 
					Zero, 
					Zero, 
					0x14
				}, 

				Package (0x04)
				{
					0xFFFF, 
					One, 
					Zero, 
					0x13
				}, 

				Package (0x04)
				{
					0xFFFF, 
					0x02, 
					Zero, 
					0x12
				}, 

				Package (0x04)
				{
					0xFFFF, 
					0x03, 
					Zero, 
					0x10
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					Zero, 
					Zero, 
					0x13
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					One, 
					Zero, 
					0x12
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					0x02, 
					Zero, 
					0x10
				}, 

				Package (0x04)
				{
					0x0001FFFF, 
					0x03, 
					Zero, 
					0x14
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					Zero, 
					Zero, 
					0x12
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					One, 
					Zero, 
					0x12
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					0x02, 
					Zero, 
					0x12
				}, 

				Package (0x04)
				{
					0x0006FFFF, 
					0x03, 
					Zero, 
					0x12
				}
			})
			Method (_PRT, 0, NotSerialized)
			{
				If (LNot (PICF))
				{
					Return (PICM)
				}
				Else
				{
					Return (APIC)
				}
			}

			Method (_PRW, 0, NotSerialized)
			{
				Return (Package (0x02)
				{
					0x0B, 
					0x05
				})
			}

			Device (ARPT)
			{
				Name (_ADR, Zero)
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x08)
						{
							"AAPL,Slot-name", 
							Buffer (0x0B)
							{
								"Built-In"
							}, 

							"name", 
							Buffer (0x13)
							{
								"Network controller"
							}, 

							"model", 
							Buffer (0x2B)
							{
								"Broadcom Corporation BCM4320 802.11 a/b/g"
							}, 

							"device_type", 
							Buffer (0x08)
							{
								"AirPort"
							}
						}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}
			}
		}

		Device (PX40)

post-88791-1252090675_thumb.png

Link to comment
Share on other sites

I'd like to try this mod, but when I go to generate the DSDT with "iasl -ta" against the modified dsl, I get:

 

Intel ACPI Component Architecture

ASL Optimizing Compiler version 20080926 [Oct 4 2008]

Copyright © 2000 - 2008 Intel Corporation

Supports ACPI Specification Revision 3.0a

 

EP45T-UD3P-DSDT.dsl.txt 2746: DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))

Error 4067 - Object is not accessible from this scope ^ (DTGP)

 

ASL Input: EP45T-UD3P-DSDT.dsl.txt - 6144 lines, 205686 bytes, 2602 keywords

Compilation complete. 1 Errors, 0 Warnings, 0 Remarks, 34 Optimizations

 

 

I've double checked for things like missing brackets etc..

Link to comment
Share on other sites

 Share

×
×
  • Create New...