The libertas driver made its debut in the OLPC XO laptop, where it drives a Marvell 88W83886 USB device. In addition to the USB front-end, the driver now includes support for CompactFlash, SDIO, and GSPI interfaces.
- Marvell 88W8385 CF/SDIO
- Marvell 88W8388 USB
- Marvell 88W8686 SDIO/GSPI
AmbiCom WL54CF (CF)
- SparkLAN WCFM-100 (CF)
- Pretec CompactWLAN 802.11g CFEWGS
- prototype boards
- OLPC laptop
- station (with limited roaming support)
- Mesh on USB devices (802.11s like)
- Mainly interesting for developers, it allows to switch various debug messages on and of.
- Can extract a firmware out of a binary file.
You can get the source of the tools via
git clone git://git.infradead.org/users/schurig/libertas-tools.git tools
All devices need firmware, which can be found in the libertas/ directory in the Linux firmware tree.
Get the libertas-tools from above and change into the fwcutter/ directory. Type make. The makefile will download a binary driver, extract the firmware out of it, checks it. Copy the two firmware files libertas_helper.fw and libertas.fw from the fwcutter/ directory into the /lib/firmware/ directory.
- Claud Yu got the driver working, using a firmware 8.73.7.p3 (downloaded from marvell.com). The 9.70.3.p18 firmware doesn't support the CMD_802_11_DATA_RATE command that the libertas driver currently needs.
The GSPI firmware is available in the Linux firmware tree. Copy libertas/gspi8686_v9_helper.bin to /lib/firmware/libertas/gspi8686_hlp.bin and libertas/gspi8686_v9.bin to /lib/firmware/libertas/gspi8686.bin.
using the GSPI device
GSPI devices are intended to be used in embedded systems. You must build your kernel with CONFIG_GENERIC_GPIO enabled to use the libertas_spi driver. Add the libertas_spi device to the SPI device tree in your arch/xxx/mach-xxx/boards/xxx.c – that file should include <linux/spi/libertas_spi.h> and define libertas_spi_platform_data. The SPI .bits_per_word should be set to 16 and .mode left at the default.
Some developers and users might be reachable in #libertas on *.freenode.net, see http://freenode.net/irc_servers.shtml to find a IRC node near you.