2010-05-14 06:23:43

by Madhavi Manchala

[permalink] [raw]
Subject: Architecture for wireless driver development in the Linux environment

Dear Experts,

I am new to the wireless driver development in the Linux environment.
I have gone through the http://wireless.kernel.org/ link about the
wireless driver development in the Linux environment. However, I did
not find any architecture or skeleton driver like usb-skeleton.c file
either in the drivers/Documentation or in the mentioned link. I want
to develop a driver for USB WIFI device for x86 architecture. Please
let me where can find the USB WIFI driver development architecture in
the Linux environment.

http://wireless.kernel.org/en/developers/Documentation/cfg80211
What is cfg80211? Are we need to follow this configuration method for
developing the drivers in the Linux environment?

Thanks and Regards,
Madhavi.


2010-05-14 06:39:53

by Luis R. Rodriguez

[permalink] [raw]
Subject: Re: Architecture for wireless driver development in the Linux environment

On Thu, May 13, 2010 at 11:23 PM, Madhavi Manchala
<[email protected]> wrote:
> Dear Experts,
>
> I am new to the wireless driver development in the Linux environment.
> I have gone through the http://wireless.kernel.org/ link about the
> wireless driver development in the Linux environment. However, I did
> not find any architecture or skeleton driver like usb-skeleton.c file
> either in the drivers/Documentation or in the mentioned link. I want
> to develop a driver for USB WIFI device for x86 architecture. Please
> let me where can find the USB WIFI driver development architecture in
> the Linux environment.

You can look at:

drivers/net/wireless/mac80211_hwsim.c

> http://wireless.kernel.org/en/developers/Documentation/cfg80211
> What is cfg80211? Are we need to follow this configuration method for
> developing the drivers in the Linux environment?

Its what defines the generic data structure for all 802.11 devices,
both FullMAC and SoftMAC, it also defines the new API for 802.11 for
Linux, you register your struct wiphy device to cfg80211, your driver
has cfg80211_ops and you use nl80211 to communicate to cfg80211 from
userspace for a wiphy device or just generally to cfg80211 (for iw reg
get/set).

Luis