Puppy on the Intel D945GSEJT & Realtek 8111D NIC

Problems and successes with specific brands/models of networking hardware.
Post Reply
Message
Author
ldolse
Posts: 367
Joined: Fri 23 Oct 2009, 16:33

Puppy on the Intel D945GSEJT & Realtek 8111D NIC

#1 Post by ldolse »

I've been banging my head against the wall trying to get this board working for the past two days, finally did it, so I thought I'd share my experience since it's not mentioned elsewhere on the forum.

There are basically two problems with this board:
  • The Realtek 8111D NIC isn't well supported in many (older?) kernels/bundled Realtek drivers
  • Once a bad driver has been loaded it puts the NIC into a failure state, one which requires PHYSICALLY DISCONNECTING THE POWER CORD to resolve
Unfortunately I only discovered the second point above after compiling the driver several times over, and trying at least a half dozen different Puppy and non-puppy distributions. The NIC failed upon booting up the first distribution, it didn't matter how many times I reinstalled/rebooted after that, or whether a newer distribution had the right driver.

I was doing my initial work with TurboPup Extreme, but tested several other variations of Puppy as well. I don't know if the newer distributions work out of the box or not, since I haven't tested them since discovering that disconnecting the power is a key part of the install process.

What I DO know is this, 4.2 puppy derivatives have an older r8169/r8168 version of the Realtek drivers which is incompatible with this card. The latest driver needs to be compiled. If a newer distribution is also incompatible then I'm fairly certain these steps will fix it as well.

Prerequisites:
  • devx sfs file for your distribution must be loaded at boot time
    kernel header sfs file must also be loaded at boot time - download here: http://bkhome.org/sources/
Download the latest driver from here:

Code: Select all

http://www.realtek.com/downloads/downloadsView.aspx?Langid=1&PNid=5&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false#RTL8111B/RTL8168B/RTL8111/RTL8168%3Cbr%3ERTL8111C/RTL8111CP/RTL8111D%28L%29%3Cbr%3ERTL8168C/RTL8111DP
Save the file to some temporary workspace, go to the shell, cd to the directory, then type the following commands:

Code: Select all

tar -jxf r8168-8.xxx.xx.tar.bz2
cd r8168-8.xxx.xx
./autogen.sh
Obviously change xxx.xx to whatever the actual names of the bzip file/directory.

Doing this will remove and backup the existing r8169 driver and install the new r8168 driver. There were some warnings during compilation, but so far they don't seem to be affecting performance.

Then:
  • Shutdown the system
    Pull the power cord
    Reinsert the power and restart the system
That worked with the latest version of the driver from the Realtek site.

I'm not really sure how to make drivers into .pets. If someone points me in the right direction I can create one and attach it.

Read another user's experience on Debian here.

Post Reply