Discussion:
[Madwifi-devel] MadWifi reference edition
Pavel Roskin
2013-11-13 00:16:50 UTC
Permalink
Hello!

This might be of interest for developers working on ath5k and ath9k
drivers. It may be useful to have working MadWifi code for reference
to see how MadWifi accesses hardware registers, what packets it would
send, how it would communicate with other devices, how fast the
connections would be.

I fully realize that the MadWifi code is ugly and I don't want anyone
to use it for any new serious project (I know that existing embedded
systems still use MadWifi). Still, it's very unhelpful for developers
that the MadWifi site is down and the MadWifi code doesn't compile for
the latest kernels.

So I forked MadWifi on GitHub:
https://github.com/proski/madwifi

Here's the summary of the changes I've made so far:

Compilation fixed for Linux 3.10-3.12 and the current linux-next.
ath_info removed, it's should probably be maintained separately.
Removed integration with the official Subversion repository (it's down).
Removed support for Linux 2.6.12 and older, I have no time to compile
test it, let alone test the actual functionality.
Fixed compile errors in rare cases (e.g. SKB debugging and no VLAN).
Fixed some warnings, more fixes coming.

The purpose of the changes is not to make MadWifi work better. The
purpose is to make it compile cleanly and serve as a working reference
for ath5k and ath9k development.
--
Regards,
Pavel Roskin
Michael Renzmann
2013-11-14 07:06:04 UTC
Permalink
Hi Pavel (and all),

the webserver including the svn repos is back online. Sorry for the delay, but I don't check the various mailing lists on a regular basis. Threfore it's better to send me a personal mail if there's any issue with the server.

I recently moved a copy of the comlete repos, including the full history, to sf.net. My intention is to keep the repos - and in a next step also the website - there, so that I may be able to shut our server down at some point.

Is your github fork meant to be a permanent institution? If so, I'd vote to point people there by default, and keep the svn repos for history only. Please let me know what you think.

Bye, Mike
Post by Pavel Roskin
Hello!
This might be of interest for developers working on ath5k and ath9k
drivers. It may be useful to have working MadWifi code for reference
to see how MadWifi accesses hardware registers, what packets it would
send, how it would communicate with other devices, how fast the
connections would be.
I fully realize that the MadWifi code is ugly and I don't want anyone
to use it for any new serious project (I know that existing embedded
systems still use MadWifi). Still, it's very unhelpful for developers
that the MadWifi site is down and the MadWifi code doesn't compile for
the latest kernels.
https://github.com/proski/madwifi
Compilation fixed for Linux 3.10-3.12 and the current linux-next.
ath_info removed, it's should probably be maintained separately.
Removed integration with the official Subversion repository (it's down).
Removed support for Linux 2.6.12 and older, I have no time to compile
test it, let alone test the actual functionality.
Fixed compile errors in rare cases (e.g. SKB debugging and no VLAN).
Fixed some warnings, more fixes coming.
The purpose of the changes is not to make MadWifi work better. The
purpose is to make it compile cleanly and serve as a working reference
for ath5k and ath9k development.
--
Regards,
Pavel Roskin
------------------------------------------------------------------------------
DreamFactory - Open Source REST & JSON Services for HTML5 & Native Apps
OAuth, Users, Roles, SQL, NoSQL, BLOB Storage and External API Access
Free app hosting. Or install the open source package on any LAMP
server.
Sign up and see examples for AngularJS, jQuery, Sencha Touch and
Native!
http://pubads.g.doubleclick.net/gampad/clk?id=63469471&iu=/4140/ostg.clktrk
_______________________________________________
Madwifi-devel mailing list
https://lists.sourceforge.net/lists/listinfo/madwifi-devel
Pavel Roskin
2013-11-15 00:33:03 UTC
Permalink
Hi Michael,

On Thu, 14 Nov 2013 08:06:04 +0100
Post by Michael Renzmann
Hi Pavel (and all),
the webserver including the svn repos is back online. Sorry for the
delay, but I don't check the various mailing lists on a regular
basis. Threfore it's better to send me a personal mail if there's any
issue with the server.
I recently moved a copy of the comlete repos, including the full
history, to sf.net. My intention is to keep the repos - and in a next
step also the website - there, so that I may be able to shut our
server down at some point.
Thank you for your effort!
Post by Michael Renzmann
Is your github fork meant to be a permanent institution? If so, I'd
vote to point people there by default, and keep the svn repos for
history only. Please let me know what you think.
I'm fine with that.

I feel more freedom about applying patches to the sources that are not
the official MadWifi project. I would not make such big changes as the
removal of support for Linux 2.6.12 and older in the MadWifi subversion
repository, as I would feel obliged to ask in the lists, and I don't
think I would hear anything interesting back.

But if the MadWifi site just points to my repository and says that I'm
maintaining MadWifi in a separate repository, that would be a good
solution. I would have the moral obligation to keep it working, but I
would be free from the need to consult with the (barely existing)
community.

The reason for dropping support for Linux 2.6.12 and older is that I
found a dubious PDE macro that conflicted with the changes needed to
support procfs changes in Linux 3.10. I tried to compile Linux 2.4.22
and found that I need so many things just to configure it and prepare
for building modules - old compiler, old make, and even bash was giving
me trouble so I had to use ksh. And then I would not be able to run
that kernel on my hardware. To understand the changes made to the
kernel, I would need to download historic Linux repositories converted
from bitkeeper. I wrote scripts to test MadWifi with a large set
of kernels (https://github.com/proski/kernel-farm), but it would need
to be adapted for the 2.4 build system. That was way too much effort.

Linux 2.6.13 was a natural cutoff point as it introduced WPA and WPA2
in wireless extensions 18. As we know, WEP is not considered secure
these days. Yes, MadWifi could support WPA on older kernels, but it
was ugly.

I don't expect to apply any big changes, but I will apply bugfixes and
cleanups (in reasonable amounts).
--
Regards,
Pavel Roskin
Nick Kossifidis
2013-11-14 11:28:27 UTC
Permalink
Post by Pavel Roskin
Hello!
This might be of interest for developers working on ath5k and ath9k
drivers. It may be useful to have working MadWifi code for reference
to see how MadWifi accesses hardware registers, what packets it would
send, how it would communicate with other devices, how fast the
connections would be.
I fully realize that the MadWifi code is ugly and I don't want anyone
to use it for any new serious project (I know that existing embedded
systems still use MadWifi). Still, it's very unhelpful for developers
that the MadWifi site is down and the MadWifi code doesn't compile for
the latest kernels.
https://github.com/proski/madwifi
Compilation fixed for Linux 3.10-3.12 and the current linux-next.
ath_info removed, it's should probably be maintained separately.
Removed integration with the official Subversion repository (it's down).
Removed support for Linux 2.6.12 and older, I have no time to compile
test it, let alone test the actual functionality.
Fixed compile errors in rare cases (e.g. SKB debugging and no VLAN).
Fixed some warnings, more fixes coming.
The purpose of the changes is not to make MadWifi work better. The
purpose is to make it compile cleanly and serve as a working reference
for ath5k and ath9k development.
--
Regards,
Pavel Roskin
I've already cloned ath-info to another repository since I don't have
access to the madwifi's svn anymore and I wanted to add some
functionality:
https://github.com/mickflemm/ath-info

I've also cloned madwifi-old-openhal there for reference (since
-together with madwifi-trace, dadwifi etc- got deleted from the svn
and it's not easy for someone to find them on old revisions-):
https://github.com/mickflemm/madwifi-old-openhal

I think since you want to go that way, it would be nice to switch the
binary HAL with the one from FreeBSD or Atheros's LegacyHAL, it should
be easy to do so (API should still be the same) and it'll be much
easier to compare ath5k/ath9k to madwifi+freebsdHAL/AtherosHAL since
we'll also have source code access to the HAL. However IMHO it should
be much easier to compare FreeBSD to Linux than maintaining madwifi
for this purpose, not only we have the latest net80211 code there, the
HAL is also open source, maintained/updated, contains 11n support etc.

I know that a lot of people are using MadWiFi on embedded systems
-especially for ar5k chips- mostly due to turbo support (which we also
have on ath5k, we just don't have a way to set it from userspace). I'd
really like to see them contribute to ath5k to fit their needs than
keep on using madwifi, even if their changes don't go upstream it'll
still be much easier to maintain a patch that adds a feature on ath5k
than keep on using madwifi.
--
GPG ID: 0xEE878588
As you read this post global entropy rises. Have Fun ;-)
Nick
Nick Kossifidis
2013-11-14 11:36:29 UTC
Permalink
Post by Nick Kossifidis
I think since you want to go that way, it would be nice to switch the
binary HAL with the one from FreeBSD or Atheros's LegacyHAL, it should
be easy to do so (API should still be the same) and it'll be much
easier to compare ath5k/ath9k to madwifi+freebsdHAL/AtherosHAL since
we'll also have source code access to the HAL.
Just noticed you've already done the switch, is it Atheros's HAL or FreeBSD's ?
--
GPG ID: 0xEE878588
As you read this post global entropy rises. Have Fun ;-)
Nick
Pavel Roskin
2013-11-14 23:52:55 UTC
Permalink
On Thu, 14 Nov 2013 11:36:29 +0000
Post by Nick Kossifidis
Post by Nick Kossifidis
I think since you want to go that way, it would be nice to switch
the binary HAL with the one from FreeBSD or Atheros's LegacyHAL, it
should be easy to do so (API should still be the same) and it'll be
much easier to compare ath5k/ath9k to madwifi+freebsdHAL/AtherosHAL
since we'll also have source code access to the HAL.
The reference edition is for those who want to run MadWifi on the
bleeding edge kernels rather than dual boot.
Post by Nick Kossifidis
Just noticed you've already done the switch, is it Atheros's HAL or FreeBSD's ?
It's MadWifi trunk. It was already present on github:
https://github.com/puzzlet/madwifi

I cloned it and applied the only patch that was present in the latest
snapshot but not in that repository (removal of __devinitdata).
--
Regards,
Pavel Roskin
Loading...