<?xml version="1.0" encoding="UTF-8" standalone="yes"?><oembed><version><![CDATA[1.0]]></version><provider_name><![CDATA[Software is Crap]]></provider_name><provider_url><![CDATA[https://davmac.wordpress.com]]></provider_url><author_name><![CDATA[davmac]]></author_name><author_url><![CDATA[https://davmac.wordpress.com/author/davmac/]]></author_url><title><![CDATA[Hardware that Works with&nbsp;Linux]]></title><type><![CDATA[link]]></type><html><![CDATA[<p>It&#8217;s sometimes surprisingly difficult to find out whether hardware will work with Linux. Partly, this is because a piece of hardware often consists internally of chips manufactured by someone other than the hardware itself, and it&#8217;s the chips which you must have drivers for. For instance, I have a Leadtek TV tuner card (PCI) and the chips onboard it are a couple of Connexant chips plus a Philips (tuner) chip. This is one of the few products I have seen which actually lists the chips on the box, however. Finding out what chips a product uses can be difficult in itself. Often the easiest way (for PCI cards) is to plug the card in and use &#8220;lspci&#8221; or equivalent to find out what&#8217;s on it, but by that stage you&#8217;ve already laid down your cash for the product.</p>
<p>Even knowing the chips and knowing that there is a linux driver for them doesn&#8217;t always tell you how well your device will be supported. The aforementioned TV tuner card required that I add a subsystem ID to the driver and recompile the kernel. Once I&#8217;d done that, it worked fine (well, it received digital TV fine; I never tried analog. I also got the remote to work fairly easily).</p>
<p>I bought a new (external) ADSL/2/2+ modem recently, an &#8220;OpenNetworks iConnectAccess621&#8221;. It has a single ethernet port as well as a USB port. I wondered if I would be able to talk to the modem via the USB port and thereby free up two ethernet ports &#8211; one on the PC and one on the modem. As it turned out, the iConnectAccess621 use a Texas Instruments (TI) chip, and I could talk to it using the &#8220;RNDIS&#8221; driver in Linux (RNDIS apparently is a badly-documented Microsoft-developed protocol for ethernet-over-USB); however, restarting the computer seemed to lock up the connection (couldn&#8217;t talk to the modem anymore) until I also power-cycled the modem. I partly blame the modem and partly blame Linux&#8217;s USB implementation (which seemed to have a lot of trouble dealing with the resulting situation on the USB bus; kept on giving error messages and took ages to boot).</p>
<p><!--more--></p>
<p>Another question which remains unsatisfactorily answered at least by a quick web search is: Will a 64-bit PCI card work in a 32-bit slot? The real answer is probably &#8220;depends on the card, but in theory, it should&#8221;. That&#8217;s not particularly helpful for individual hardware items though. I wanted in particular to know if one of Sun&#8217;s &#8220;QFE&#8221; quad-port ethernet cards would work in my linux box, which only has 32-bit PCI slots. The Linux HME driver (&#8220;Happy Meal Ethernet&#8221;, no kidding, is the name of Sun&#8217;s single-port ethernet cards) apparently also supports QFE cards, though after finding this out I still wasn&#8217;t sure if the 64-bit card would work in a 32-bit slot. I&#8217;m happy to report that it does. Which means, incidentally, that I don&#8217;t need to worry about using the USB connection to talk to the modem anymore.</p>
<p>So what does &#8220;QFE&#8221; stand for? The only thing that came to my mind originally was &#8220;Quick F*** Ethernet&#8221; but apparently the real answer is &#8220;Quad Fast Ethernet&#8221;, which makes sense in a way that &#8220;Happy Meal Ethernet&#8221; does not. The QFE card it seems basically consists of four HME chips soldered onto a single card, which explains why the HME driver supports it.</p>
]]></html></oembed>