Date: Tue, 10 Dec 2013 12:13:07 -0600 From: Jim Thompson <jim@netgate.com> To: Mark Felder <feld@freebsd.org> Cc: freebsd-net <freebsd-net@freebsd.org> Subject: Re: Intel Controllers [Rant] Message-ID: <CAKAfi7x8SJD7bCLbr2YUKK6nCQgAvZYoGiuqDfBTvweDYGwOYQ@mail.gmail.com> In-Reply-To: <1386697668.8944.57916449.7576FC53@webmail.messagingengine.com> References: <1386634847.38473.YahooMailNeo@web121606.mail.ne1.yahoo.com> <1386697668.8944.57916449.7576FC53@webmail.messagingengine.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Dec 10, 2013 at 11:47 AM, Mark Felder <feld@freebsd.org> wrote: > On Mon, Dec 9, 2013, at 18:20, Barney Cordoba wrote: >> Why is it that every time I get a new MB it has yet-another intel >> controller on it? How are you supposed to write good drivers that support >> 9000 different controllers? As much as I appreciate the progression of >> CPU technology, they >> would serve the community better by making up their damn minds and just >> build 1 or 2 controller for each >> target market. >> > > I'm pretty sure an entirely new driver doesn't need to be written for > each new controller. I assume like with most things (network cards, wifi > chips, etc) it's usually a matter of adding its identifier to the driver > code. It goes beyond that. In the simplest case, then yes, things are as you say. But chips have bugs, which require work-arounds, or other slightly strange stuff. Case(s) in-point: The 82575 assigns queues using vectors via a bitmask The Intel 82576 chip uses a table that essentially consists of 2 columns with 8 rows. The ordering is column-major (like Fortran arrays). On 82580 and newer adapters the scheme is similar to 82576, however instead of ordering column-major, the ordering is row-major (like C or Pascal). These chips are all supported via the igb driver. Some parts supported by the igb driver use MSI-X interrupts, others don't. On i350, i354, i210, and i211, loopback VLAN packets have the tag byte-swapped. The list of issues is by no means limited to the above. Jim
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAKAfi7x8SJD7bCLbr2YUKK6nCQgAvZYoGiuqDfBTvweDYGwOYQ>