From: Johannes Berg <johannes@sipsolutions.net>
To: netdev@vger.kernel.org
Cc: mcgrof@do-not-panic.com, kvalo@adurom.com, adrian.chadd@gmail.com
Subject: [PATCH 0/1] alx driver
Date: Mon, 10 Jun 2013 23:26:48 +0200 [thread overview]
Message-ID: <1370899609-13954-1-git-send-email-johannes@sipsolutions.net> (raw)
So ... I was stupid enough to not research drivers for this device
before buying a board that included one, I figured in 2013 it wasn't
really possible for such a simple gigabit ethernet device to not
have a driver in Linux.
Boy was I wrong.
The vendor driver was previously posted on netdev, and subsequently
somewhat cleaned up, but ... it still had useless hand-rolled locks
(with test_and_set_bit/msleep!), horrible macros, and was generally
quite a mess.
I do have to admit that I'm not very familiar with all the netdev
APIs, since wireless devices are so slow that NAPI etc. hardly
matters. In a way, this is also me learning about it since we'll be
betting faster wireless too :-)
I hope I did an OK job at cleaning it up/rewriting it, but while I
thought about the locking for a while, or rather the lack thereof,
I'm not entirely sure that it's completely safe. It seemed to me
that since we have TX/RX all done from NAPI it won't actually have
to be reentrant/locked.
Also, I kept the FIELD macros, which seemed wrong at first but the
code didn't get nicer w/o them. I did fix them for endianness and
converted some to inlines; I don't get why they actually had endian
annotations and even turned on the sparse checks by default only to
then ignore all the errors it was giving. I'll happily kill these
if anyone thinks that would be better.
Anyway, as I said, I'm not very good at ethernet drivers, so let me
know what I need to fix.
Maybe the responsible QCA folks can actually add back the features
that I liberally pruned from the driver.
johannes
next reply other threads:[~2013-06-10 21:26 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-10 21:26 Johannes Berg [this message]
2013-06-10 21:26 ` [PATCH 1/1] alx: add a simple AR816x/AR817x device driver Johannes Berg
2013-06-10 21:29 ` [PATCH v2 " Johannes Berg
2013-06-11 22:23 ` Francois Romieu
2013-06-12 18:02 ` Johannes Berg
2013-06-18 1:18 ` Ben Hutchings
2013-06-20 21:40 ` Johannes Berg
2013-06-20 21:58 ` Ben Hutchings
2013-06-20 22:09 ` Johannes Berg
2013-06-21 12:45 ` Ben Hutchings
2013-06-21 20:42 ` Johannes Berg
2013-06-21 21:39 ` Ben Hutchings
2013-06-22 10:17 ` Johannes Stezenbach
2013-06-22 14:21 ` Ben Hutchings
2013-06-25 18:24 ` Johannes Berg
2013-06-12 7:11 ` [PATCH 0/1] alx driver Johannes Stezenbach
2013-06-12 18:00 ` Johannes Berg
2013-06-12 20:33 ` [PATCH] alx: add a simple AR816x/AR817x device driver Johannes Berg
2013-06-12 20:48 ` Stephen Hemminger
2013-06-12 20:51 ` Johannes Berg
2013-06-12 23:02 ` Francois Romieu
2013-06-13 3:46 ` Joe Perches
2013-06-13 6:47 ` Francois Romieu
2013-06-13 21:52 ` Johannes Berg
2013-06-13 23:03 ` Francois Romieu
2013-06-15 18:38 ` Johannes Berg
2013-06-13 22:24 ` Johannes Stezenbach
2013-06-13 22:29 ` Johannes Berg
2013-06-14 5:53 ` Johannes Stezenbach
2013-06-15 18:26 ` Johannes Berg
2013-06-15 20:15 ` Johannes Berg
2013-06-16 9:49 ` Johannes Stezenbach
2013-06-16 11:17 ` Johannes Berg
2013-06-16 17:48 ` Johannes Stezenbach
2013-06-16 18:06 ` Johannes Stezenbach
2013-06-16 18:42 ` Johannes Stezenbach
2013-06-16 19:41 ` Johannes Berg
2013-06-16 20:37 ` Johannes Stezenbach
2013-06-16 12:14 ` Johannes Berg
2013-06-17 20:44 ` [PATCH v4] " Johannes Berg
2013-06-17 23:05 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1370899609-13954-1-git-send-email-johannes@sipsolutions.net \
--to=johannes@sipsolutions.net \
--cc=adrian.chadd@gmail.com \
--cc=kvalo@adurom.com \
--cc=mcgrof@do-not-panic.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).