NOTE: this page is for archival only, see the note at the end of the page.

Support for Linux 802.11 drivers on Android

This section tries documents the what is required to support 802.11 Linux drivers on Android.

The current status quo

Android uses wireless-extensions to support its 802.11 drivers. The drivers that Android devices have up to this day used are all using wireless-extensions for communication. The Android codebase also uses a custom wpa_supplicant. The details of this can be found on this porting wifi drivers to android documentation.

Roadmap

The current Android 802.11 interface should at the minimum change to use nl80211. The proper approach would be to provide a custom driver_nl80211_android.c wrapper for the modified wpa_supplicant in Android. This would be a clone of driver_nl80211.c with the Android extensions added and mapped to nl80211 commands where existing functionality is available. For couple of missing parts, some new functionality may need to be exposed by adding a proper nl80211-based interface for them in the upstream driver.

Doing this will mean adding support to Android for *all* new 802.11 Linux drivers, this includes all cfg80211 and mac80211 drivers.

Work

Anyone working on this?


This is a static dump of the wiki, taken after locking it in January 2015. The new wiki is at https://wireless.wiki.kernel.org/.
versions of this page: last, v7, v6, v5, v4, v3, v2, v1