2013-11-07 16:17:37

by Solomon Peachy

[permalink] [raw]
Subject: future of prism2_usb (aka wlan-ng) in staging tree

Greg, John,

I was wondering what it would take to get the prism2_usb/wlan-ng driver
out of its long home in the staging tree.

It's seen some work over the years, including conversion to cfg80211,
and in general seems to be no worse than its ancient bretheren already
living in net/wireless (ie orinoco and hostap)

There's certianly more internal cleanups that can be performed (eg
collapsing more unnecessary internal APIs such as the MIB handlers) but
at face value it would appears that the TODO items in the README have
been met (other than shutting up checkpatch's style warnings)

I'd be willing to take point on this and make checkpatch happy, but I'm
curious to hear your thoughts on any additional work you think is
necessary to get it out of staging.

Cheers,

- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.


Attachments:
(No filename) (957.00 B)
(No filename) (190.00 B)
Download all attachments

2013-11-07 18:57:42

by Solomon Peachy

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 12:52:02PM -0500, John W. Linville wrote:
> I haven't looked at the driver in question in a long time. Are there
> actually any users?

I honestly don't know who all uses it these days, since it's
802.11b-only and being USB, eminantly replacable with something more
modern.

Still, the driver and hardware works, and it's no more obsolete than the
likes of hostap, orinoco, aironet, zd1201, and others -- All of which
live on under net/wireless even though they still lack cfg80211 support.

BTW, this is my current WIP diffstat:

drivers/staging/wlan-ng/Makefile | 2
drivers/staging/wlan-ng/hfa384x.h | 2
drivers/staging/wlan-ng/hfa384x_usb.c | 67 ++----
drivers/staging/wlan-ng/p80211conv.c | 70 ------
drivers/staging/wlan-ng/p80211metadef.h | 3
drivers/staging/wlan-ng/p80211metastruct.h | 9
drivers/staging/wlan-ng/p80211netdev.c | 79 +++----
drivers/staging/wlan-ng/p80211netdev.h | 35 ---
drivers/staging/wlan-ng/prism2fw.c | 86 +++----
drivers/staging/wlan-ng/prism2mgmt.c | 126 ++++-------
drivers/staging/wlan-ng/prism2mib.c | 64 ++---
drivers/staging/wlan-ng/prism2sta.c | 118 ++++------
drivers/staging/wlan-ng/p80211ioctl.h | 89 -------
drivers/staging/wlan-ng/p80211req.c | 251 ----------------------
drivers/staging/wlan-ng/p80211req.h | 53 ----
drivers/staging/wlan-ng/p80211wep.c | 301 ---------------------------
16 files changed, 248 insertions(+), 1107 deletions(-)

Aside from fixing up a boatload of checkpatch warnings, I've been
stripping out more legacy cruft (eg custom ioctl, host-side WEP, more
plumbing) that's not relevant any longer.

- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.


Attachments:
(No filename) (1.88 kB)
(No filename) (190.00 B)
Download all attachments

2013-11-07 22:25:28

by Dan Williams

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, 2013-11-07 at 14:46 -0500, Solomon Peachy wrote:
> On Thu, Nov 07, 2013 at 02:11:23PM -0500, John W. Linville wrote:
> > And all of which were nominated by someone (possibly me) to be shuffled
> > out of the tree due to lack of users and unknown functional status...
>
> Heh, fair enough!
>
> > I don't want to discourage anyone from working on something that
> > scratches their itch, especially if you have working hardware and
> > some users. OTOH, I'd rather not add a long term support burden to
> > the kernel if nobody is going to use it...?
>
> On an average month the linux-wlan-ng repository I still host gets 3-4K
> non-spider hits for the USB firmware files, so in this particular case
> there are still users out there.
>
> At this point it's a more modern driver than the ones already in the
> kernel, and I'm willing to maintain it if there's a point to doing so.

What's the delta in device support between prism2_usb and the hostap
driver's USB subdriver? Is there any overlap?

Dan


2013-11-07 16:37:38

by Solomon Peachy

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 10:31:11AM -0600, Larry Finger wrote:
> This seems like a good point to clarify what it takes for a wireless
> driver to be added to net/wireless.
>
> Is it necessary that any new softmac driver in net/wireless must use
> mac80211, or is it sufficient that it implement cfg80211?

IMO a softmac driver should use mac80211 before being merged; there's no
sense in having multiple 802.11 stacks especially with the ever-growing
complexity of 802.11.

But in this particular case, prism2_usb/wlan-ng is perhaps the original
fullmac 802.11 device. :)

- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.


Attachments:
(No filename) (753.00 B)
(No filename) (190.00 B)
Download all attachments

2013-11-07 23:37:21

by Dan Williams

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, 2013-11-07 at 18:02 -0500, Solomon Peachy wrote:
> On Thu, Nov 07, 2013 at 04:25:00PM -0600, Dan Williams wrote:
> > > At this point it's a more modern driver than the ones already in the
> > > kernel, and I'm willing to maintain it if there's a point to doing so.
> >
> > What's the delta in device support between prism2_usb and the hostap
> > driver's USB subdriver? Is there any overlap?
>
> Given that there never was a hostap_usb, there's no overlap at all. If
> you have a prism2.5/3 USB widget, you'll need prism2_usb to make it more
> than a lousy paperweight.

Sorry, I see now I meant orinico_usb, not hostap...

Dan

> Way back in the day I'd advocated for doing a USB port of hostap rather
> than mainlining prism2_usb, strictly on a ROI basis, but the boots on
> the ground chose the latter. Given that prism2_usb has slowly been
> improved since then and hostap has largely been ignored, IMO the right
> thing here is to get it out of staging by taking care of any outstanding
> problems.
>
> On a strict feature basis, hostap has the advantage of supporting AP
> operation and WPA -- For the latter, prism2_usb just needs the cfg80211
> and crypto layer hooks since it needs to be handled in software anyway.
> As for AP operation -- Intersil never officially supported AP mode on
> the USB devices, and while it worked unofficially, it wasn't terribly
> stable. The same stabilitiy problems plagued monitor operation; my
> theory at the time was that their USB "glue" silicon simply couldn't
> keep up with the load.
>
> - Solomon



2013-11-07 19:15:13

by John W. Linville

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 01:57:14PM -0500, Solomon Peachy wrote:
> On Thu, Nov 07, 2013 at 12:52:02PM -0500, John W. Linville wrote:
> > I haven't looked at the driver in question in a long time. Are there
> > actually any users?
>
> I honestly don't know who all uses it these days, since it's
> 802.11b-only and being USB, eminantly replacable with something more
> modern.
>
> Still, the driver and hardware works, and it's no more obsolete than the
> likes of hostap, orinoco, aironet, zd1201, and others -- All of which
> live on under net/wireless even though they still lack cfg80211 support.

And all of which were nominated by someone (possibly me) to be shuffled
out of the tree due to lack of users and unknown functional status...

> BTW, this is my current WIP diffstat:
>
> drivers/staging/wlan-ng/Makefile | 2
> drivers/staging/wlan-ng/hfa384x.h | 2
> drivers/staging/wlan-ng/hfa384x_usb.c | 67 ++----
> drivers/staging/wlan-ng/p80211conv.c | 70 ------
> drivers/staging/wlan-ng/p80211metadef.h | 3
> drivers/staging/wlan-ng/p80211metastruct.h | 9
> drivers/staging/wlan-ng/p80211netdev.c | 79 +++----
> drivers/staging/wlan-ng/p80211netdev.h | 35 ---
> drivers/staging/wlan-ng/prism2fw.c | 86 +++----
> drivers/staging/wlan-ng/prism2mgmt.c | 126 ++++-------
> drivers/staging/wlan-ng/prism2mib.c | 64 ++---
> drivers/staging/wlan-ng/prism2sta.c | 118 ++++------
> drivers/staging/wlan-ng/p80211ioctl.h | 89 -------
> drivers/staging/wlan-ng/p80211req.c | 251 ----------------------
> drivers/staging/wlan-ng/p80211req.h | 53 ----
> drivers/staging/wlan-ng/p80211wep.c | 301 ---------------------------
> 16 files changed, 248 insertions(+), 1107 deletions(-)
>
> Aside from fixing up a boatload of checkpatch warnings, I've been
> stripping out more legacy cruft (eg custom ioctl, host-side WEP, more
> plumbing) that's not relevant any longer.

I don't want to discourage anyone from working on something that
scratches their itch, especially if you have working hardware and
some users. OTOH, I'd rather not add a long term support burden to
the kernel if nobody is going to use it...?

John
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.

2013-11-08 13:46:45

by Solomon Peachy

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 05:37:02PM -0600, Dan Williams wrote:
> > Given that there never was a hostap_usb, there's no overlap at all. If
> > you have a prism2.5/3 USB widget, you'll need prism2_usb to make it more
> > than a lousy paperweight.
>
> Sorry, I see now I meant orinico_usb, not hostap...

I'd started to write a more detailed history of the somewhat inbred
HFA384x chipsets, but eh, it's not particularly relevant. Suffice it to
say that the differences between the Orinoco and Prism2.5/3 USB hardware
are enough to make trying to support both with a single codebase an
insane proposition.

- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.


Attachments:
(No filename) (788.00 B)
(No filename) (190.00 B)
Download all attachments

2013-11-07 18:00:19

by John W. Linville

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 11:37:19AM -0500, Solomon Peachy wrote:
> On Thu, Nov 07, 2013 at 10:31:11AM -0600, Larry Finger wrote:
> > This seems like a good point to clarify what it takes for a wireless
> > driver to be added to net/wireless.
> >
> > Is it necessary that any new softmac driver in net/wireless must use
> > mac80211, or is it sufficient that it implement cfg80211?
>
> IMO a softmac driver should use mac80211 before being merged; there's no
> sense in having multiple 802.11 stacks especially with the ever-growing
> complexity of 802.11.
>
> But in this particular case, prism2_usb/wlan-ng is perhaps the original
> fullmac 802.11 device. :)

We have long said that any softmac driver needs to be based on
mac80211. We have also been saying for some time that any newly
merged drivers need to fully support cfg80211. FWIW, I think that
we would actively discourage anyone from implementing any support at
all for wireless extensions -- shouldn't need that anyway with full
cfg80211 support..

I haven't looked at the driver in question in a long time. Are there
actually any users?

John
--
John W. Linville Someday the world will need a hero, and you
[email protected] might be all we have. Be ready.

2013-11-07 23:02:33

by Solomon Peachy

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 04:25:00PM -0600, Dan Williams wrote:
> > At this point it's a more modern driver than the ones already in the
> > kernel, and I'm willing to maintain it if there's a point to doing so.
>
> What's the delta in device support between prism2_usb and the hostap
> driver's USB subdriver? Is there any overlap?

Given that there never was a hostap_usb, there's no overlap at all. If
you have a prism2.5/3 USB widget, you'll need prism2_usb to make it more
than a lousy paperweight.

Way back in the day I'd advocated for doing a USB port of hostap rather
than mainlining prism2_usb, strictly on a ROI basis, but the boots on
the ground chose the latter. Given that prism2_usb has slowly been
improved since then and hostap has largely been ignored, IMO the right
thing here is to get it out of staging by taking care of any outstanding
problems.

On a strict feature basis, hostap has the advantage of supporting AP
operation and WPA -- For the latter, prism2_usb just needs the cfg80211
and crypto layer hooks since it needs to be handled in software anyway.
As for AP operation -- Intersil never officially supported AP mode on
the USB devices, and while it worked unofficially, it wasn't terribly
stable. The same stabilitiy problems plagued monitor operation; my
theory at the time was that their USB "glue" silicon simply couldn't
keep up with the load.

- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.


Attachments:
(No filename) (1.54 kB)
(No filename) (190.00 B)
Download all attachments

2013-11-07 19:46:54

by Solomon Peachy

[permalink] [raw]
Subject: Re: future of prism2_usb (aka wlan-ng) in staging tree

On Thu, Nov 07, 2013 at 02:11:23PM -0500, John W. Linville wrote:
> And all of which were nominated by someone (possibly me) to be shuffled
> out of the tree due to lack of users and unknown functional status...

Heh, fair enough!

> I don't want to discourage anyone from working on something that
> scratches their itch, especially if you have working hardware and
> some users. OTOH, I'd rather not add a long term support burden to
> the kernel if nobody is going to use it...?

On an average month the linux-wlan-ng repository I still host gets 3-4K
non-spider hits for the USB firmware files, so in this particular case
there are still users out there.

At this point it's a more modern driver than the ones already in the
kernel, and I'm willing to maintain it if there's a point to doing so.

- Solomon
--
Solomon Peachy pizza at shaftnet dot org
Delray Beach, FL ^^ (email/xmpp) ^^
Quidquid latine dictum sit, altum viditur.


Attachments:
(No filename) (981.00 B)
(No filename) (190.00 B)
Download all attachments