View source for WiFi support in OpenMoko

From Openmoko

Jump to: navigation, search

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Administrators.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page:

Return to WiFi support in OpenMoko.

Personal tools

WiFi support for OpenMoko is in the works. Current Neo1973 GTA01 does not include a wireless LAN chip, but the upcoming Neo1973 GTA02 is going to have one: Atheros AR6K 802.11 b/g.

OpenMoko and WiFi

The OpenMoko project would love to add WiFi support to any of the devices on the roadmap.

However, we simply are unable to locate a supplier with a suitable product!

It seems like the choice has been made and Atheros it will be: From

Thanks for being the first to
tell us about Atheros. We're almost for sure going to use their AR6K
chipset in our next product.

Public call for WiFi

From this mailinglist posting:

We can't find a WiFi Chipset with GPL'ed drivers -- We know 
this has been discussed (to death) on this list, but as we're 
beginning work on the next summer hardware refresh we still can't seem
to find a vendor that meets our strict requirements: Namely, we refuse
to put anything binary in the kernel. 

Marvell has some nice for larger devices (the 8388). But we need
one specifically for mobile phones (like the 8686). If somebody 
can help us find the right vendor, we'll give you a free Neo1973. 
If you're a vendor and want to work with us to GPL your driver, we'll 
give you lots of business -- and a free phone ;-)

Regular chipsets are NOT suitable

Please notice that it is impossible for us to use any of the standard desktop WiFi chipsets, commonly found in miniPCI cards or USB WiFi adapters.

We really need a chipset (and even beyond that: Somebody manufacturing SMT modules with that chipset) that is specifically targetted for mobile phones or other mobile devices such as portable media players.

Regular WiFi chipsets just draw way too much power and are too large by an order of magnitude.

List of available WiFi modules for mobile phone usage

SyChip Products

  • WLAN6100EB — IEEE 802.11g/b Chip Scale Module
  • WLAN6064EB — IEEE 802.11b Embedded Module - Uses Marvell chipset - 88W8381PN, Used in Palm TX (fw 4.102.p0-122 from 2005/08/30, size 82876 bytes, fw stored in 8381Fw.pdb), PN means it uses RF8015 RF chip, while P-only stands for RF8010.
  • WLAN6061EB — IEEE 802.11b Embedded Module - Uses Marvell chipset - 88W8305, Used in Palm LifeDrive (fw 3.0.71p3 from 2005/06/10, size 60420 bytes, fw stored in 8305Fw.pdb)
  • Samsung SWL-2450 — IEEE 802.11b Embedded Module - Uses Marvell chipset - 88W8305, Used in Acer n50

According to some unofficial sources they use the Prism 3 chipset. SyChip states they support Linux (but that's all ;-)). Refer to Marvell section further on.

NOTE: The Palm LifeDrive uses the SyChip 6061 chipset. several people have extracted the firmware that is being loaded from the driver into the 6061 chip. all indications are that the 6061 is actually using the firmware for the Marvell Libertas 88w8305 chipset. additionally, looking at some firmware for the 6100 series, seems to conclude that it is using the firmware for the Marvell Libertas 88w8385 chipset.

Conexant Products

  • CX53121 — Single-Chip 802.11a/b/g with SPI Interface.

In this article, they say Conexant Systems supports Linux.

CX53121 was released on June 2006 and, since it is a 68 square millimeter single chip solution, it's a good thing for a mobile device.

Broadcom Products

BCM4326 is a low power device that is said to be linux friendly as per this document

Also, the bcm43xx project could provide a Free driver if Broadcom isn't willing.

TI Products

  • WiLink 6.0 (WL1271/WL1273) — mWLAN / Bluetooth / FM transmit and receive Chip solution WiLink 6.0
  • WiLink 5.0 (WL1251/WL1253) — mWLAN / Bluetooth / FM receive Module solution WiLink 5.0
  • WiLink 4.0 (WL1251/WL1253) — mWLAN Single-Chip Solution WiLink 4.0

The Product literature claims to be Linux compatible

ACX 100 has reverse-engineered GPL drivers, and has done for several years. it is a wifi 802.11 chipset from TI that has been used for several years in the HTC smartphone products, including the HTC-designed iPAQs (HTC designs all of Compaq/HP's iPAQs)

I assume that you are happy to have binary-only firmware uploaded to turn chips into actual useful products.

NXP Products

Linux drivers are available and in production use but not GPL'd yet.

New product touted as Linux friendly:

Note: The product won't ship in Volume until Q4 which means it's probably not very useful right now. The Product literature mentions reference design software support for Linux operating system.

Key Stream Corporation

Based in Japan. Linux support unknown. Has a few "low power" chips. Most useful info in Japanese. English site:

ZyDAS ZD1211 chipset

ZyDAS ZD1211 is a chipset designed to work with small power consumption. It fits the power supply from USB and is used by many USB wifi adapters. Interestingly, it supports "access point mode" which allows other adapters to connect to.

Chipset specifications:
* 802.11a/b/g support (few sticks support 802.11a though)
* USB 2.0 support (802.11b only on USB 1.1)
* typical current consumption: 150mA (idle), 200mA (sending)
* WEP64/128/256, WPA-PSK
* Station and Ad hoc mode 

The source code of the driver was initially contributed by ZyDAS under the GPL license, the ZD1211 Linux driver is maintained by the open source community.

Comunity site of the driver: It has been included in the kernel since version 2.6.18.


According to a friend, Mstar semiconductor has a new low power wifi chip, no info about Linux though.

Mstar Semiconductor email: contact_us at


  • Accton WM3236AB provides Atheros AR6001 b/g with 11x11mm size
  • Accton WM3236AQ provides Atheros AR6001 b/g with 13x13mm size

List of chipset vendors who are known to be at least partially GPL friendly


Libertas (includes the 88W8305, 88W8381, 88W8385, 88W8388 and 88W8686)

According to prplague on #openmoko, Zcomax XG-880M module might fit the requirements.

Embedded Works provides SMD versions of 88w8385 which are 9.6x9.6x1.7 mm big. This chip should be quite more power-consuming than other products on the market.


  • USB 88W8388 - fully supported by GPL libertas driver
  • CF 88W8385 - driver based on GPL libertas driver by Holger Schurig (libertas_cs)
  • CF 88W8305 - driver is work in progress, firmware can be loaded and basic communication with firmware works (based on 8385 driver)
  • CF 88W8381 - driver is work in progress, nothing done yet
  • SD 88W8686 - driver by Marvell, available here [

As for the driver git tree, see here (GPL, in sync with mainline, supporting USB8388 and partly CF8385):;a=summary
For CF8385 patches, see

Marvell also cooperates with Gumstix(TM) and released this driver (GPL, supporting, supporting CF8385):





The new RT2501 Wireless Chipset from Ralink seems to have been released with GPL drivers. Ralink is very active in the Linux community, and provides source code for many of its client drivers to developers. Moreover esists an rt2x00 Open Source Project on Sourceforge aiming to create a stable and feature rich Linux driver for wireless 802.11b and 802.11g cards that are based on the Ralink rt2400 and rt2500 chipsets. This chipset has many interesting features as: Bluetooth Co-existence, Low Power with Advanced Power Management, Linux AP Driver.



The AR6K has a GPL host driver available today. The firmware that runs on the AR6K is quite closed, but that's the case with most, if not any of these radios. No binary modules would need to be run in the kernel. A company called Card Access Inc. sells dev boards and kits and provides commercial support for the AR6K. Modules with the AR6K are available from Card Access Inc.

and also provide by accton@taiwan in size 11.4 X 10.85 X 1.75 802.11 b/g,power consumption and BT coexistance function:

This sounds like a really great device


These guys have a mobile WiFi solution;

and they do state that they support Linux;

However, they don't say whether it is GPL'd but it might be worth checking out.


STMicroelectronics, headquartered in Switzerland, also has a radio on chip solution it says on:

Three chipsets that may work, STLC4550(single band b/g), STLC4420(dual band a/b/g) and STLC4370(single band b/g). Press release state "ST offers manufacturers a complete WLAN hardware and software solution, with source code in house"..."operating systems including" ..."Linux"

Interesting to add to the other options: The STLC4420 seems to be priced at $9 a per unit on buying 100k units.

It seems that STLC4550 is a derivative of Conexant CX3110x as dmesg from Nokia Maemo devices show the following:

<4>[ 5.223236] CX3110x chip variant: STLC4550 
<4>[ 5.305053] CX3110x: firmware version: 
<4>[ 5.320709] Loaded CX3110x driver, version 0.8 "

whereas CX3110x is a Conexant's 802.11 b/g embedded chipset for which they have a driver at which supposedly is GPL.

However: Just above the dmesg output cited above there's the following line

<4>[ 5.064849] umac: module license 'Proprietary' taints kernel. 

and umac likely is needed for cx3110x to work.


related to entry above is (CX53111)

An inquiry on #maemo yields bad news:

<buz> i'm wondering about the cx3110c driver
<buz> is that fully opensource now?or does it still need proprietary modules?
<neal> the latter

But see and for reverse engineered GPL drivers for some Conexant cards.


CSR released an innovative single-chip solution for WiFI called UniFi(tm). The new UniFi-2 Portable is a Dual RISC microcontrollers based solution really really small and powerful. The company gives support to Linux and Windows developers with a dedicated website and an SDK package. The same company has launched UniVox, a VoIP phone based on this UniFi single-chip Wi-Fi technology. Driver is available for Linux, but not as GPL.


The module IC is targeted to mobile devices including Mobile Phones, Digital Still Cameras (DSCs), Portable Media Players (PMPs), Personal Digital Assistants (PDAs), and Gaming Devices which need small footprint package, low power consumption, multiple interfaces and OS support.

Contact as streamunlimited is doing a lot of embedded Linux development.