This is an old revision of the document!


SDIO is an interface designed as an extension for the existing SD card standard, to allow connecting different peripherals to the host with the standard SD controller. Nowadays it's extensively used to connect WiFi/Bluetooth chips on ARM boards, like Wandboard, Raspberry Pi 3 or Banana Pi. GlobalScale DreamPlug has an internal SDIO slot with the Marvell WLAN/Bluetooth module.

FreeBSD lacks SDIO support and is not able to talk to the peripheral devices behind SDIO. Work is going on to create a driver for the FreeBSD. Earlier version used DreamPlug hardware, which has Marvell SD8787 chip (WiFi, BT and FM).

Currently the MMC stack is being moved onto CAM framework, this will allow to handle interrupts generated by SDIO cards and hopefully fix several other issues with the old stack.

The first version of MMCCAM stack was committed to FreeBSD 12 in r320844, minimum FreeBSD_version is 1200038. This means that it's now possible to work on drivers for the WiFi devices sitting on the SDIO bus.

Board Device Linux driver
Wandboard Broadcom BCM4339 802.11 a/b/g/n/ac brcmfmac
Raspberry Pi 3 Broadcom BCM43438 brcmfmac
Banana Pro AMPAK AP6181 (Broadcom BCM43362) brcmfmac
  • sdio.1501754102.txt.gz
  • Last modified: 2017/08/03 09:55
  • by IlyaBakulin