netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* d80211: The struct ieee80211_hw_modes array is a pain
@ 2006-12-13 10:42 Michael Buesch
  2006-12-13 11:23 ` Ivo Van Doorn
  0 siblings, 1 reply; 2+ messages in thread
From: Michael Buesch @ 2006-12-13 10:42 UTC (permalink / raw)
  To: Jiri Benc; +Cc: netdev

I am currently porting the bcm43xx driver to my new Sonics
Silicon Backplane busdriver.
I am having a major pain implementing the hw->modes field
for this. In particular, the problem is allocation.
I always felt sick about hw->modes, but with my new code it's
damn complicated to get allocation of the stuff right.
The problem is, that I do not know in advance which PHYMODEs
my device supports (in fact, we never knew that, but we worked
around it (in a broken way)).
We have the following scenario: The PHYs are probed one after
each other. We have one data structure per PHY. This bites
the static hw->modes array in its ass. I would either have to
allocate it "big enough" at the first time (wasting lots of memory)
or I'd have to re-allocate it every time a new PHY is probed.
Another (much harder to fix) problem is the opposite of the probing:
Removing the PHYs.

So, what I'd like to have is:

One struct ieee802111_hw_mode which I can embed into the PHY
data structure. This struct is now dynamically registered to the
ieee80211 subsystem (instead of doing a static array pain).

Registering and unregistering would be done with simple linked lists,
perhaps, in d80211.

If nobody has any objections against this approach, I will do a
patch soon.

-- 
Greetings Michael.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-12-13 11:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-12-13 10:42 d80211: The struct ieee80211_hw_modes array is a pain Michael Buesch
2006-12-13 11:23 ` Ivo Van Doorn

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).