PDA

View Full Version : AMD HomePNA (phoneline) card not working



marty39
08-22-2007, 04:10 AM
I used to be a UNIX user years ago, never an administrator. A few years ago I managed to put a Linux system on a 486 box with VLB on a coax network, and got Samba (sort of) working on it, but I still find Linux baffling.

I currently have an all Windows, all TCP/IP home network. I want to migrate my Windows XP Home system to Linux.

This computer has two PCI network cards. One is a Realtek 8139 that goes to an Internet router that connects to the Internet and most of the home network. I'm not having any problems with it.

Windows says the other card is an AMD PCnet-Home Based Network Adapter (Generic). In Knoppix, lspci says it's an AMD 79c978 [HomePNA] (rev51) with PCI ID 1022:2001. It goes to a similar card on a Win98 box named SLUG in the basement, two stories below the XP.

I boot from the Knoppix 7.04 live CD. I see that it recognizes eth0 and eth1. I can get to the Intenet. I can get to all the Windows boxes that are on the Internet router. I can't get to SLUG. SLUG shows up in the workgroup, probably because the network's browse master knows about it, but when I try to open it I get an error message.

I tried ndiswrapper. Windows uses netamdhl.inf and pcnt5hl.sys for the HomePNA card, so I copy them to root's home directory and run the GUI ndiswrapper configuration. In a root console, ndiswrapper says there's no new hardware and an alternate driver called pcnet32. If I modprobe ndiswrapper and modprobe -r pcnet32, eth0 (or eth1, depending on how Knoppix decides on bootup) no longer exists.

Then I realize that SLUG and both cards are using DHCP, because Windows XP bridged the cards together. I plan to try to bridge them when I finally install Linux, but until I do, SLUG and the HomePNA card need fixed IP addresses. So I go down to SLUG and give it a fixed IP address, the same one it got from DHCP. That works in Windows. Back in Knoppix, I give the HomePNA card a different fixed IP address, but I still can't reach SLUG.

I try ping -I eth0 [or eth1] 192.168.0.170 (that's SLUG's IP address) and the address is unreachable. If I ping -I eth0 [or eth1] 192.168.0.107 (a computer on the Realtek card) I get replies if I use the right eth?, unreachable if I use the wrong one.

I didn't give all the details of what I did, but I hope I did all the right things. At best, ifconfig shows me eth0, eth1, and lo. One of the eth? (depending on what order Knoppix saw them on bootup) has an IP address from DHCP and thousands of RX and TX bytes. The other has the fixed IP address I gave it and zero RX and TX.

I figure either there's no driver for the HomePNA card, or I'm doing something wrong. Can somebody help? Please.

Harry Kuhman
08-22-2007, 05:28 AM
You could confirm if Knoppix supports each network interface card by simply swapping which one is connected to the router and see if you can still ping the router and get out to the Internet (forget about Slug for this test).

Once you know both cards are supported, then it's time to try to get Slug working. Linux should let you bridge the two NICs, but I have no idea how to set that up. Can we assume that you don't have any empty ports left on the router to just plug the cable from Slug in there? And that you would rather resolve this issue and make all Slug traffic go through the Linux box than just add a network switch to the router?

marty39
08-22-2007, 12:44 PM
Sorry, that's Knoppix v5.1.1. I must have got the other version number from something else.

SLUG is not on a conventional ethernet cable because it's too far away to easily string a cable. It's connected through the home telephone wiring. That's what HomePNA does. So I can't put SLUG on the router without an ethernet-phoneline bridge. Netgear and Linsys used to make such bridges but they're not longer available. Is that what I need to use phoneline in Linux?

I can't completely swap the cards because the Realtek card is not a HomePNA card. The AMD card has connectors for phone and ethernet cable but the Realtek only has an ethernet cable connector.

I did unplug the phone cord and move the ethernet cable from the Realtek card to the AMD card. Knoppix was able to access the router and everything beyond it through the AMD card. So the PCnet32 driver supports the AMD card at least as an ethernet interface.

I tried dmesg | grep eth in both configurations. In both cases the Realtek was identified as eth0 and the AMD card as eth1.

With the ethernet cable on eth0 and the phone cord on eth1 (normal configuration for Windows) it says "eth1: link down" and later "ADDRCONF(NETDEV_UP): eth1: link is not ready" and then "eth1: link down" again (not recognizing the phoneline connection on eth1).

With the ethernet cable on eth1 and nothing on eth0 (configuration to test the AMD card) it says "eth0: link down" twice and "ADDRCONF(NETDEV_UP): eth0: link is not ready" (because nothing is plugged into eth0).

Apparently the AMD card is not recognized as being connected to anything if it's connected to the phone wire. Maybe the PCnet32 driver supports the ethernet function but not the phoneline function. And the Windows XP driver with ndiswrapper doesn't work at all; eth1 is not just down, but nonexistent - am I doing something wrong in the ndiswrapper configuration?

I've seen web pages that say there are no HomePNA Linux drivers available. I also saw one that tells how to compile a HPNA2 driver. If I remember correctly, what I have is a HomePNA 1.0 1Mb/s adapter.

Harry Kuhman
08-22-2007, 08:10 PM
OK, I see the issue now, I was under the impression they were just 2 different ethernet cards.

As I understand it your physical situation doesn't allow you to just tape a cat5 cable on the end of the existing telephone wires, and pull it through where the telephone line is by pulling on the phone wire, then crimp on the modular connectors on each end of the cat5. Too bad, that would be the best and simplest way to do it.

Sounds like the adapter card for this needs special drivers and they are not included in Knoppix. And you may not even be able to find the drivers for your particular hardware version. Not that Knoppix is particularly friendly to adding drivers anyway.

I'm guessing that you have already considered a wireless connection to Slug, but that the thickness of the floors is making wireless unsuitable. If that's the case you might get somewhere with high gain directional antennas. But wifi is what it is, and sometimes it's tough to get the signals where you want them.

I do occasionally see special equipment that is designed to meet this need. I've seen ethernet-to-AC-wiring adapters that just let you plug in an ethernet cable to each adapter, plug the adapter in the wall, and you have ethernet running over your power lines. I've even seen them cheap when on a special sale, but otherwise they can be pricey. The key here is getting something that uses a normal ethernet connection and does the special magic in external hardware, rather than something like the cards you have that need special drivers that may not be produced for all OSs or ever for future versions of Windows.

Good luck. My choice would be to re-look at the options for running CAT5 or to see if I couldn't get a wireless signal through, but with some searching you might be able to find drivers for your hardware. If you go that route and want a Linux system installed upstairs, then I would urge that you go with Debian or some other system intended for hard disk rather than Knoppix, it will make a lot of things, including installing the drivers, much cleaner.

marty39
08-22-2007, 09:57 PM
Actually I can get a wireless signal through. But SLUG is (actually was, and might be again some day) one end of a coax subnetwork, which was bridged to the rest of the network with Winbridge. I couldn't use wireless because there were no software bridging tools for Windows that would work with a wireless adapter. SLUG is now running Windows 98 SE.

Can Linux can bridge wireless adapters? If it can, then that might be the way to go. The trouble is, I wasn't contemplating switching SLUG to Linux, just my upstairs desktop machine. But if there are now software bridges available for Windows 98 that can work between a wireless card and an old coax card, I could transition my systems to Linux one at a time.

The wireless card I have that I could put in SLUG is the Netgear MA301/MA401 combo. Would that have driver problems in Linux?

Side question: might some Linux distribution other than Knoppix have a driver for my phoneline card?

Harry Kuhman
08-22-2007, 10:53 PM
Can Linux can bridge wireless adapters?
The short answer is yes. There is lots of software running under Linux that does this and more. Unfortunately the longer answer is that I don't know how to guide you through doing it. One simple thing that you might want to consider is, rather than using a wireless NIC in Slug, use a normal ordinary NIC in Slug that you can bridge (gee, it amazes me even as I type this that you can bridge that strange AMD HomePNA card but not a much more standard wireless NIC) and connect it by ethernet cable to a wireless bridge. You find that some wireless routers can be put into bridge mode, which lets them connect to a wireless router or access point. And such wireless routers are often less expensive that just buying a wireless bridge, since so fewer dedicated wireless bridges than wireless routers are made and sold. But take some care in shopping here, some routers that can be used as wireless bridges only will function as bridges when connecting to their own brand of wireless router or access point (or even to the same model wireless router). Still, there are many to select from and this should get you an easy to use solution. You may even find that you don't need to route through Slug at all, if multiple inputs on the bridge are available you could just plug other system in there. Or if the bridge only has one input available (when in bridge mode) then a small inexpensive switch would get you several extra ethernet ports, and you wouldn't need to get a second ethernet NIC for Slug.

This way your choice to run windows or Linux on any of the downstairs system is driven by what software you plan to run, not by networking needs.


The wireless card I have that I could put in SLUG is the Netgear MA301/MA401 combo. Would that have driver problems in Linux?
I don't know that card, don't know what the combo is about and don't know what chip set it uses. It might be well supported in Linux. I'll leave it to you to determine the chipset and see how well supported it is in Linux. My expectations for Knoppix however are far more negative. I can't get wireless working at all in 5.x, even with the one wireless card that I have that did work in Knoppix 4.02. So don't make your Linux choices based on Knoppix.


Side question: might some Linux distribution other than Knoppix have a driver for my phoneline card?
Sure, it might. Again, some searching on your part is in order. But understand that because of Knoppix's Live CD nature it will have far fewer drivers than hard disk install Linux distros.

marty39
08-23-2007, 05:28 PM
About bridging wireless cards, my understanding is as follows. The HomePNA card, once you find a driver for it, is just another wired card. Wireless cards on the other hand are fundamentally different from wired cards, because they have parameters like channel number and encryption that wired cards don't have. So if everything is packed into one interface then a bridge that handles wired cards won't be able to deal with wireless cards. That does seem to me like the wrong way to go about it, but I can't change Windows.

I guess this question is closed: Knoppix doesn't support the HomePNA card, but there may be workarounds that work in Knoppix and there may be other Linux distributions that do support the card. Thanks for helping me get to that point .