[PATCH] SDIO support for Globalscale Dreamplug
Alexander Motin
mav at FreeBSD.org
Tue Jul 2 17:10:31 UTC 2013
On 02.07.2013 17:59, Ilya Bakulin wrote:
> Hi list,
> I'm currently developing a SDIO driver for the Globalscale Dreamplug.
> I have taken SDIO patch for Marvell SoC from [1].
> After that I have written some SDIO-related code in sys/dev/mmc/mmc.c,
> using OpenBSD SDIO code and the patch from Ben Gray ([2]) as a starting point.
>
> I have taken Warner's wish to have SDIO code in MMC bus into account, so there
> is no extra layer of abstraction in my code, SDIO devices will attach directly
> to MMC bus. This makes possible to implement combo cards support in the future,
> although I don't support them in my code atm.
>
> What is already implemented:
> * SDIO card detection;
> * CIS reading, both common CIS and individual functions' CIS;
> * Function enable.
>
> My questions, need answers before I can move further:
> * Where should I store information retrieved from the CIS?
> As far as I understand, I should use mmc_ivars structure for that.
> But in SDIO case the relationship between MMC bus and SDIO card is 1:1,
> and storing the information about the card in mmc_softc sounds like
> a good idea -- then I can pass only mmc_softc structure to all functions
> that need to work with the attached SDIO card.
I think SD world is a terrible mess by itself. I would like to not add
more. Functions that suppose card access should take card-specific
structure or device as an argument, not a bus ones.
> * Should I add any methods to the existing interface files?
>
> * Are there any devices on the market that use SDIO interface and which
> chipsets are supported in FreeBSD? Any Atheros devices?
> Adrian, what do you think?
> I have only Dreamplug with Marvell SDIO-based WLAN chip, that doesn't have
> an opensource driver even for Linux...
Recently I've bought EyeFi card hoping it is combined SD+SDIO, but seems
like card's WiFi part is completely autonomous and controlled via file
access on storage and not really SDIO.
I would try to look for SDIO Bluetooth card. I think such ones still
could be found on eBay, and I think there are some specifications for
that. Though I've never looked inside.
> [1] http://people.freebsd.org/~raj/misc/mv_sdio.c
> [2] http://lists.freebsd.org/pipermail/freebsd-arm/2012-June/003543.html
--
Alexander Motin
More information about the freebsd-embedded
mailing list