alx: Unified OS driver attempt for Linux / FreeBSD

Goal is to use modern tools like coccinelle to see if we can
unify the alx Ethernet driver between Linux and FreeBSD.
The objective is to see if in practice even with these
tools we can keep getting updates to both OSes through
a single tree but at the same time see what challenges
we face.

This is part of the lofty effort on killing proprietary drivers.
I have taken the alx driver code from public postings on public
mailing lists. At this point I have not updated the alx driver
to match the newest v2 patch iterations. Work is still being
done to modify that driver to meet community standards.

Ideally we should try to first complete the driver with FreeBSD
support here prior to getting it upstream in the Linux kernel
as it would make the development easier. Once we have support
targets for both FreeBSD and Linux we can push upstream.

If we don't care then forget about this project.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
17 files changed
tree: ae268beda0bb0713c15b73c646494d27df4810e4
  1. src/
  2. .compat_copy
  3. .gitignore
  4. Makefile
  5. README.md
  6. refresh-compat
README.md

alx standalone development tree

The puropose of this development tree is to enable us to do development on alx for both BSD and Linux with a single unified repository. This enables us to synchronize fixes for both BSD and Linux.

Linux support

Linux support targets the alx driver to be built in synch with linux-next.git as the base development tree. Backport kernel support is provided by utilizing the compat-drivers framework.

To synch to the latest compat-drivers clone compat-drivers and run:

./refresh-compat

This will copy over all code needed to build the driver for Linux.

BSD support

TBD