Hi,

I figured I'd look how hard it actually was to convert d80211 to a
proper protocol. And contrary to my own expectations I succeeded in
doing that in just over a day. Just like 8021q, it has virtual devices.

The patchset is huge and can be found at
http://johannes.sipsolutions.net/files/d80211-proto/

John, please apply patches 001 and 002 out of the patchset as soon as
you can -- they fix issues with cfg80211 that came up on IRC and in
private mail to me. Very important, and not related to converting it to
a protocol.

Each patch comes with a subject and description but since they're large
let me discuss some bits here.

001-cfg80211-fix-Makefile.patch
   cfg80211: fix Makefile brokenness

002-cfg80211-wext-compat.patch
   cfg80211: fix WE compat code

Absolutely required to fix two issues with cfg80211 that make the
current tree usable only in the strange configuration WE_NETLINK on and
CFG80211 off.

003-d80211-cookie.patch
   d80211: change the cookie to be opaque

   This changes the 'cookie' that d80211 returns from alloc_hw
   to be an opaque value to the driver. Turned out that it wasn't
   such a great idea but since it was generally a clean up I kept
   this patch to base my other patches on.

004-bcm43xx-adjust.patch:
   bcm43xx: adjust for the d80211 changes

   This adjusts bcm43xx for above changes with the cookie pointer.

005-d80211-reduce-mdev-1.patch
006-d80211-reduce-mdev-2.patch
   d80211: reduce mdev usage

   These two patches reduce mdev madness and change a lot of functions
   to take a struct ieee80211_local * instead of the master netdev

007-d80211-cleanup-rxmgmt.patch
   d80211: reduce mdev usage, fix ieee80211_rx_mgmt

   Cleans up the ieee80211_rx_mgmt and related code

008-d80211-scan-sanity.patch
   d80211: reduce master ieee80211_ptr deref in scan routines

   Similar to the reduce mdev patches, just for the scan routines

009-d80211-convert-spaces.patch
   d80211: convert leading spaces to tabs

   I hated working on the code, so I did this. The next patch
   breaks everything anyway.

010-d80211-proto.patch
   d80211: convert to an 802.11 protocol

   Converts d80211 to be a protocol together with tons of
   cleanups and more. Hard to describe in two lines.

011-bcm43xx-adjust-proto.patch
   bcm43xx: adjust to register a real struct net_device

   makes bcm43xx function after the previous patch

Have fun!

johannes

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to