2008-04-14 10:14:42

by Holger Schurig

[permalink] [raw]
Subject: Alternative Libertas SDIO driver seen

On Monday 14 April 2008 11:12:38 claud_yu wrote:
> Hi ,
>
> Currently I use wi2wi W2SW0001, I send Murata module
> back. I still try to port the libertas driver to mx31.
> Wi2Wi provide a SD card development card on wi2wi
> website. I also try another 88w8686 driver from
> project moblin (http://www.moblin.org/). The driver
> should based on marvell SDIO driver. But the driver
> still have some problem while firmware download.

Okay, I find a kernel tree there which, in
debian/patches/0019-marvell_8686_8688.patch contains another
libertas driver.

Unfortunately, the (Intel created) moblin.org webpage only
supports the "http://" access protocol to the git tree, which is
rather inefficent. I'm currently trying to get this tree
with "git clone --reference /usr/src/linux-git
http://www.moblin.org/repos/projects/kernel-mid-2.6.24.git/",
and takes ages. Maybe they also made this tree from scratch, so
that the reference to Linus' git tree won't help the
downloading.



Okay, to the driver:

* it's GPL, so we can copy from it
* it's an if_sdio.c only-driver (and also contains something
with bluetooth stuff)
* it's weird, as this patch contains two wlan_11.c files
which differ. This is true for effectively every wlan_XXX.c
file.
* it looks similar to what Marvell donated originally to OLPC
* compared to the current in-kernel libertas driver, it has
some more code for 802.11a frequencies
* older Marvell drivers contained firmware as *.h files, this
driver now uses #include <linux/firmware.h> as well

As this driver is sdio-only, and we have already other libertas
drivers supported in the kernel, it would never accepted as-is
in mainland kernel. Therefore I invite Marvell and Intel to
participate with the in-kernel libertas driver. I understand
that for Intel this might not be possible immediately, because
the current libertas driver might not work on their
Atom-reference platform, but I guess in the long-run could be
beneficial.

I CC'ed feng tang from "git log
debian/patches/0019-marvell_8686_8688.patch" therefore :-)


2008-04-14 17:15:21

by Dan Williams

[permalink] [raw]
Subject: Re: Alternative Libertas SDIO driver seen

On Mon, 2008-04-14 at 18:31 +0200, Holger Schurig wrote:
> > the moblin libertas driver is originally based on source
> > marvell released for both the OLPC and the UMPC
>
> I understand the history similar to this:
>
> Marvell driver developed driver
> dropped to OLPC
> Marvell continued internal driver
> Linux community used OLPC driver and
> brought it into a linux mainline acceptable form
> Marvell released 5.0.16 as GPL
> OLPC driver was massaged to support
> USB,CF and somwhat to support SDIO
> Marvell continued internal driver
> Linux community changed OLPC driver
> Marvell released v8 to Intel moblinux
> Marvell continued internal driver
> Linux community changed OLPC driver
> Marvell releases v9 to Intel moblinux
>
>
> From some perspective, I find the current libertas driver in
> Linux better (Dan Williams wrote about this).
>
> However, I'd like to compare an early OLPC driver to the v9 that
> is in Intel's moblinux tree. This way we can find out what
> Marvell changed in the meantime and decide which of those
> changes might be beneficial for us.

WMM and BT coexistance are two big ones so far.

For your reviewing pleasure, from the latest 8686 drop on the Marvell
site against the early 8388 drop on their site, which is essentially
what they tossed over the wall to OLPC in April 2006:

http://people.redhat.com/dcbw/lbs-drivers.diff

Dan



2008-04-15 02:05:51

by Feng Tang

[permalink] [raw]
Subject: RE: Alternative Libertas SDIO driver seen


Hi, Dan, Hlger,

Yes, moblin.org has some drivers for Marvell SDIO 868x devices. One rea=
son for that is moblin.org need suppport some Marvell devices which are=
brand new and not covered by current Libertas driver.

Also Marvell driver on moblin.org is updated frequently as it keeps get=
ting new developing versons from Marvell, which make it difficult to cl=
ean up the code to open-source format for each new version.

Thanks,
=46eng
-----Original Message-----
=46rom: Dan Williams [mailto:[email protected]]=20
Sent: 2008=C4=EA4=D4=C214=C8=D5 23:20
To: Holger Schurig
Cc: [email protected]; claud_yu; Harvey, Timothy; Tang, =
=46eng; [email protected]
Subject: Re: Alternative Libertas SDIO driver seen

On Mon, 2008-04-14 at 12:11 +0200, Holger Schurig wrote:
> On Monday 14 April 2008 11:12:38 claud_yu wrote:
> > Hi ,
> >
> > Currently I use wi2wi W2SW0001, I send Murata module
> > back. I still try to port the libertas driver to mx31.
> > Wi2Wi provide a SD card development card on wi2wi
> > website. I also try another 88w8686 driver from
> > project moblin (http://www.moblin.org/). The driver
> > should based on marvell SDIO driver. But the driver
> > still have some problem while firmware download.
>=20
> Okay, I find a kernel tree there which, in=20
> debian/patches/0019-marvell_8686_8688.patch contains another=20
> libertas driver.

Yeah, this is based on the V8/V9 Marvell vendor driver, which is a
continuation of the driver that got dropped on OLPC. So you'll notice
quite a few similarities to early versions of the upstream libertas
driver.

I'd like to think we've improved on the vendor driver greatly, from a
cleanup standpoint (getting rid of the SBI abstraction stuff), from a
Wireless Extensions standpoint, from a readability/maintainability
standpoint, etc.

Unfortunately we never got any buy-in from Marvell themselves on
developing on the upstream driver together, though we did get some
patches from their engineers that were against upstream.

We can only really pull stuff from the moblin/vendor driver since if we
wanted to use that code, we'd have to re-do all the work we've done ove=
r
the past 2 years cleaning up the existing libertas driver but on the
moblin/vendor driver. The vendor driver probably has better support fo=
r
things like WMM, power management, etc in it that are useful to mobile
stuff but haven't yet been a focus of the existing libertas driver sinc=
e
it too so long just to get it to work reliably with a lot of different
hardware than just the 868x.

Dan

> Unfortunately, the (Intel created) moblin.org webpage only=20
> supports the "http://" access protocol to the git tree, which is=20
> rather inefficent. I'm currently trying to get this tree=20
> with "git clone --reference /usr/src/linux-git=20
> http://www.moblin.org/repos/projects/kernel-mid-2.6.24.git/",=20
> and takes ages. Maybe they also made this tree from scratch, so=20
> that the reference to Linus' git tree won't help the=20
> downloading.
>=20
>=20
>=20
> Okay, to the driver:
>=20
> * it's GPL, so we can copy from it
> * it's an if_sdio.c only-driver (and also contains something
> with bluetooth stuff)
> * it's weird, as this patch contains two wlan_11.c files
> which differ. This is true for effectively every wlan_XXX.c
> file.
> * it looks similar to what Marvell donated originally to OLPC
> * compared to the current in-kernel libertas driver, it has
> some more code for 802.11a frequencies
> * older Marvell drivers contained firmware as *.h files, this
> driver now uses #include <linux/firmware.h> as well
>=20
> As this driver is sdio-only, and we have already other libertas=20
> drivers supported in the kernel, it would never accepted as-is=20
> in mainland kernel. Therefore I invite Marvell and Intel to=20
> participate with the in-kernel libertas driver. I understand=20
> that for Intel this might not be possible immediately, because=20
> the current libertas driver might not work on their=20
> Atom-reference platform, but I guess in the long-run could be=20
> beneficial.
>=20
> I CC'ed feng tang from "git log=20
> debian/patches/0019-marvell_8686_8688.patch" therefore :-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wirel=
ess" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html

2008-04-14 15:22:48

by Dan Williams

[permalink] [raw]
Subject: Re: Alternative Libertas SDIO driver seen

On Mon, 2008-04-14 at 12:11 +0200, Holger Schurig wrote:
> On Monday 14 April 2008 11:12:38 claud_yu wrote:
> > Hi ,
> >
> > Currently I use wi2wi W2SW0001, I send Murata module
> > back. I still try to port the libertas driver to mx31.
> > Wi2Wi provide a SD card development card on wi2wi
> > website. I also try another 88w8686 driver from
> > project moblin (http://www.moblin.org/). The driver
> > should based on marvell SDIO driver. But the driver
> > still have some problem while firmware download.
>
> Okay, I find a kernel tree there which, in
> debian/patches/0019-marvell_8686_8688.patch contains another
> libertas driver.

Yeah, this is based on the V8/V9 Marvell vendor driver, which is a
continuation of the driver that got dropped on OLPC. So you'll notice
quite a few similarities to early versions of the upstream libertas
driver.

I'd like to think we've improved on the vendor driver greatly, from a
cleanup standpoint (getting rid of the SBI abstraction stuff), from a
Wireless Extensions standpoint, from a readability/maintainability
standpoint, etc.

Unfortunately we never got any buy-in from Marvell themselves on
developing on the upstream driver together, though we did get some
patches from their engineers that were against upstream.

We can only really pull stuff from the moblin/vendor driver since if we
wanted to use that code, we'd have to re-do all the work we've done over
the past 2 years cleaning up the existing libertas driver but on the
moblin/vendor driver. The vendor driver probably has better support for
things like WMM, power management, etc in it that are useful to mobile
stuff but haven't yet been a focus of the existing libertas driver since
it too so long just to get it to work reliably with a lot of different
hardware than just the 868x.

Dan

> Unfortunately, the (Intel created) moblin.org webpage only
> supports the "http://" access protocol to the git tree, which is
> rather inefficent. I'm currently trying to get this tree
> with "git clone --reference /usr/src/linux-git
> http://www.moblin.org/repos/projects/kernel-mid-2.6.24.git/",
> and takes ages. Maybe they also made this tree from scratch, so
> that the reference to Linus' git tree won't help the
> downloading.
>
>
>
> Okay, to the driver:
>
> * it's GPL, so we can copy from it
> * it's an if_sdio.c only-driver (and also contains something
> with bluetooth stuff)
> * it's weird, as this patch contains two wlan_11.c files
> which differ. This is true for effectively every wlan_XXX.c
> file.
> * it looks similar to what Marvell donated originally to OLPC
> * compared to the current in-kernel libertas driver, it has
> some more code for 802.11a frequencies
> * older Marvell drivers contained firmware as *.h files, this
> driver now uses #include <linux/firmware.h> as well
>
> As this driver is sdio-only, and we have already other libertas
> drivers supported in the kernel, it would never accepted as-is
> in mainland kernel. Therefore I invite Marvell and Intel to
> participate with the in-kernel libertas driver. I understand
> that for Intel this might not be possible immediately, because
> the current libertas driver might not work on their
> Atom-reference platform, but I guess in the long-run could be
> beneficial.
>
> I CC'ed feng tang from "git log
> debian/patches/0019-marvell_8686_8688.patch" therefore :-)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html


2008-04-14 16:34:34

by Holger Schurig

[permalink] [raw]
Subject: Re: Alternative Libertas SDIO driver seen

> the moblin libertas driver is originally based on source
> marvell released for both the OLPC and the UMPC

I understand the history similar to this:

Marvell driver developed driver
dropped to OLPC
Marvell continued internal driver
Linux community used OLPC driver and
brought it into a linux mainline acceptable form
Marvell released 5.0.16 as GPL
OLPC driver was massaged to support
USB,CF and somwhat to support SDIO
Marvell continued internal driver
Linux community changed OLPC driver
Marvell released v8 to Intel moblinux
Marvell continued internal driver
Linux community changed OLPC driver
Marvell releases v9 to Intel moblinux


>From some perspective, I find the current libertas driver in
Linux better (Dan Williams wrote about this).

However, I'd like to compare an early OLPC driver to the v9 that
is in Intel's moblinux tree. This way we can find out what
Marvell changed in the meantime and decide which of those
changes might be beneficial for us.

2008-04-14 13:46:18

by David Anders

[permalink] [raw]
Subject: Re: Alternative Libertas SDIO driver seen

Holger,

the moblin libertas driver is originally based on source marvell released for both the OLPC and
the UMPC, which is then used in conjunction with the atheros sdio stack that was announced some
time back:

http://www.linuxdevices.com/news/NS6177996610.html

thanks
Dave Anders


--- Holger Schurig <[email protected]> wrote:

> On Monday 14 April 2008 11:12:38 claud_yu wrote:
> > Hi ,
> >
> > Currently I use wi2wi W2SW0001, I send Murata module
> > back. I still try to port the libertas driver to mx31.
> > Wi2Wi provide a SD card development card on wi2wi
> > website. I also try another 88w8686 driver from
> > project moblin (http://www.moblin.org/). The driver
> > should based on marvell SDIO driver. But the driver
> > still have some problem while firmware download.
>
> Okay, I find a kernel tree there which, in
> debian/patches/0019-marvell_8686_8688.patch contains another
> libertas driver.
>
> Unfortunately, the (Intel created) moblin.org webpage only
> supports the "http://" access protocol to the git tree, which is
> rather inefficent. I'm currently trying to get this tree
> with "git clone --reference /usr/src/linux-git
> http://www.moblin.org/repos/projects/kernel-mid-2.6.24.git/",
> and takes ages. Maybe they also made this tree from scratch, so
> that the reference to Linus' git tree won't help the
> downloading.
>
>
>
> Okay, to the driver:
>
> * it's GPL, so we can copy from it
> * it's an if_sdio.c only-driver (and also contains something
> with bluetooth stuff)
> * it's weird, as this patch contains two wlan_11.c files
> which differ. This is true for effectively every wlan_XXX.c
> file.
> * it looks similar to what Marvell donated originally to OLPC
> * compared to the current in-kernel libertas driver, it has
> some more code for 802.11a frequencies
> * older Marvell drivers contained firmware as *.h files, this
> driver now uses #include <linux/firmware.h> as well
>
> As this driver is sdio-only, and we have already other libertas
> drivers supported in the kernel, it would never accepted as-is
> in mainland kernel. Therefore I invite Marvell and Intel to
> participate with the in-kernel libertas driver. I understand
> that for Intel this might not be possible immediately, because
> the current libertas driver might not work on their
> Atom-reference platform, but I guess in the long-run could be
> beneficial.
>
> I CC'ed feng tang from "git log
> debian/patches/0019-marvell_8686_8688.patch" therefore :-)
>
> _______________________________________________
> libertas-dev mailing list
> [email protected]
> http://lists.infradead.org/mailman/listinfo/libertas-dev
>



____________________________________________________________________________________
Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ