QUOTE (Cybex @ Oct 10 2009, 10:03 AM)

Anyone else got the Realtek 1000 working without a kext? So dsdt only?
Download and run realtek's RTGNICv2.0.3.pkg, it replaces IONetworkingFamily.kext/Contents/PlugIns/AppleRTL8169Ethernet.kext with an updated version.
Then you can remove pystar's RealtekR1000.kext.
I've had a few kernel panics using it, so it may require DSDT mods to be stable.
Here's a few to try.
1. Add to PEX4 and 5;
CODE
Device (LAN0)
{
Name (_ADR, 0x00)
Name (_PRW, Package (0x02)
{
0x0B,
0x04
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x04)
{
"built-in",
Buffer (0x01)
{
0x01
},
"device_type",
Buffer (0x09)
{
"ethernet"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
or
2. Add ETH0 to PEX4 and add ETH1 to PEX5;
CODE
Device (ETH0)
{
Name (_ADR, 0x00)
Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"location",
Buffer (0x02)
{
"1"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
Device (ETH1)
{
Name (_ADR, 0x00)
Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x02)
{
"location",
Buffer (0x02)
{
"2"
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
or
3. Add to PEX4 and 5;
CODE
Device (GIGE)
{
Name (_ADR, 0x00)
Name (_PRW, Package (0x02)
{
0x09,
0x03
})
Method (EWOL, 1, NotSerialized)
{
If (LEqual (Arg0, 0x01))
{
Or (GP9, 0x01, GP9)
}
Else
{
And (GP9, 0x00, GP9)
}
If (LEqual (Arg0, GP9))
{
Return (0x00)
}
Else
{
Return (0x01)
}
}
}
and change;
CODE
OperationRegion (GPIO, SystemIO, 0x0800, 0x05)
Field (GPIO, ByteAcc, NoLock, Preserve)
{
GO01, 8,
GO02, 8,
GO03, 8,
GO04, 8,
GO05, 8
}
to;
CODE
OperationRegion (GPIO, SystemIO, 0x0800, 0x06)
Field (GPIO, ByteAcc, NoLock, Preserve)
{
GP9, 1,
GO01, 8,
GO02, 8,
GO03, 8,
GO04, 8,
GO05, 8
}
For 1 and 2 add the following before the `Method _WAK' section;
CODE
Method (DTGP, 5, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,
/* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
}))
{
If (LEqual (Arg1, One))
{
If (LEqual (Arg2, Zero))
{
Store (Buffer (One)
{
0x03
}, Arg4)
Return (One)
}
If (LEqual (Arg2, One))
{
Return (One)
}
}
}
Store (Buffer (One)
{
0x00
}, Arg4)
Return (Zero)
}