* Netgear WG311v3 - Marvell 88w8355 "Libertas" @ 2008-03-02 11:19 Julian Calaby 2008-03-02 15:33 ` Dan Williams 0 siblings, 1 reply; 7+ messages in thread From: Julian Calaby @ 2008-03-02 11:19 UTC (permalink / raw) To: linux-wireless, libertas-dev Hi, I'm not sure if this is the correct place to ask this, but here goes. I have recently obtained a Netgear WG311v3 card, under the misunderstanding that it was an atheros card. (though I have no idea how I managed to do that) Following some random FAQ, I have this card working reliably, for the moment, using ndiswrapper, which is more than suitable for my needs. However I yearn for more. I have discovered here: http://users.linpro.no/janl/hardware/wifi.html that this card appears to use a Marvel 88w8355 "Libertas" chipset. However I have not yet confirmed the exact chip used on my card. I believe variants of this chip, are supported on SDIO, (8385, 8686) USB (8388) and CompactFlash (8385) using the libertas driver. Annoyingly I can find no information on this chip, or anything related to it, and I have heard that Marvel has been relatively uninterested in supporting these chips on Linux. I also note that this chip appears to have been designed exclusively for the embedded market, and as such, my card is somewhat rare, which has probably contributed to the lack of any interest in a pci driver. I can also find no information on a pci version of the libertas driver, only a proposal which appeared to go nowhere due to lack of documentation. I also cannot find any information on any linux support for this card outside of using ndiswrapper. As such, I am considering reverse engineering the pci interface for this chipset, and hopefully linking it up with the existing libertas driver. I was hoping to use the ndiswrapper driver as a starting point, using it as a black box to see how it talks to the PCI card. (possibly hacking together a OS level PCI sniffer) and hopefully, what I'll see will match up to what's going on in the libertas driver for similar tasks, and then I should be able to write the necessary code (or specifications) to do this. I am also concerned about any possible legal ramifications of this reverse engineering. Is it all right for me to do this, providing that I treat the ndiswrapper driver as a black box? or am I too close to non-free code to have my code be untainted? I also must point out that this will be my first reverse engineering project of this scale, and I am inexperienced in linux drivers in general - however I see it as a good way to learn. Thanks, -- Julian Calaby Email: julian.calaby@gmail.com ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Netgear WG311v3 - Marvell 88w8355 "Libertas" 2008-03-02 11:19 Netgear WG311v3 - Marvell 88w8355 "Libertas" Julian Calaby @ 2008-03-02 15:33 ` Dan Williams 2008-03-02 22:01 ` Julian Calaby 0 siblings, 1 reply; 7+ messages in thread From: Dan Williams @ 2008-03-02 15:33 UTC (permalink / raw) To: Julian Calaby; +Cc: linux-wireless, libertas-dev On Sun, 2008-03-02 at 22:19 +1100, Julian Calaby wrote: > Hi, > > I'm not sure if this is the correct place to ask this, but here goes. > > I have recently obtained a Netgear WG311v3 card, under the > misunderstanding that it was an atheros card. (though I have no idea > how I managed to do that) > > Following some random FAQ, I have this card working reliably, for the > moment, using ndiswrapper, which is more than suitable for my needs. > > However I yearn for more. > > I have discovered here: > http://users.linpro.no/janl/hardware/wifi.html > that this card appears to use a Marvel 88w8355 "Libertas" chipset. > However I have not yet confirmed the exact chip used on my card. I think you mean "88w8335" actually. The Netgear WG311v3 uses the Marvell 88w8335 chipset. > I believe variants of this chip, are supported on SDIO, (8385, 8686) > USB (8388) and CompactFlash (8385) using the libertas driver. Correct; the existing Libertas driver (perhaps somewhat mis-named) supports only the FullMAC variants of the libertas family. The other, lower-numbered chips in the libertas family (8335, 8310, etc) are all more softmac parts and not supported by the existing libertas driver. > Annoyingly I can find no information on this chip, or anything related > to it, and I have heard that Marvel has been relatively uninterested > in supporting these chips on Linux. Correct; Marvell isn't that interested in supporting the older libertas family chips in Linux (ie, anything < 8388 actually). They have expressed interest in getting their TopDog 802.11n solution working in Linux however. > I also note that this chip appears to have been designed exclusively > for the embedded market, and as such, my card is somewhat rare, which > has probably contributed to the lack of any interest in a pci driver. > > I can also find no information on a pci version of the libertas > driver, only a proposal which appeared to go nowhere due to lack of > documentation. I also cannot find any information on any linux support > for this card outside of using ndiswrapper. There's an existing vendor net80211-based driver for the 8335 here: http://git.infradead.org/?p=users/dwmw2/marvell-db64660-2.6.12.6.git;a=tree;f=drivers/net/wireless/marvell_softap;h=566585b308d53a7006814c77dedae73cc919cbef;hb=HEAD There's also some reverse-engineered bits here: http://www.saillard.org/linux/mrv8k/ and the mac80211 port of mrv8k here: http://david.woodhou.se/mrv.tar.gz though the last one here panic-ed in the interrupt handler when I tried it last on 2.6.22. > As such, I am considering reverse engineering the pci interface for > this chipset, and hopefully linking it up with the existing libertas > driver. Don't link up with the existing libertas driver, they are just too different (softmac vs. fullmac). > I was hoping to use the ndiswrapper driver as a starting point, using > it as a black box to see how it talks to the PCI card. (possibly > hacking together a OS level PCI sniffer) and hopefully, what I'll see > will match up to what's going on in the libertas driver for similar > tasks, and then I should be able to write the necessary code (or > specifications) to do this. > > I am also concerned about any possible legal ramifications of this > reverse engineering. Is it all right for me to do this, providing that > I treat the ndiswrapper driver as a black box? or am I too close to > non-free code to have my code be untainted? I'd say first, try to whip the existing mrv8k-mac80211 port into shape and you probably won't have to worry much about the legal ramifications. You can look at the GPL-ed vendor driver (from the git I posted) for pointers about hardware-specific stuff, but after the 8388 driver experience, I'd strongly advocate writing a driver from scratch (or basing off mrv8k) and not using existing Marvell vendor drivers as a starting point. Dan ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Netgear WG311v3 - Marvell 88w8355 "Libertas" 2008-03-02 15:33 ` Dan Williams @ 2008-03-02 22:01 ` Julian Calaby 2008-03-03 0:55 ` Dan Williams 0 siblings, 1 reply; 7+ messages in thread From: Julian Calaby @ 2008-03-02 22:01 UTC (permalink / raw) To: Dan Williams; +Cc: linux-wireless, libertas-dev On Mon, Mar 3, 2008 at 2:33 AM, Dan Williams <dcbw@redhat.com> wrote: > On Sun, 2008-03-02 at 22:19 +1100, Julian Calaby wrote: > > Hi, > > > > I'm not sure if this is the correct place to ask this, but here goes. > > > > I have recently obtained a Netgear WG311v3 card, under the > > misunderstanding that it was an atheros card. (though I have no idea > > how I managed to do that) > > > > Following some random FAQ, I have this card working reliably, for the > > moment, using ndiswrapper, which is more than suitable for my needs. > > > > However I yearn for more. > > > > I have discovered here: > > http://users.linpro.no/janl/hardware/wifi.html > > that this card appears to use a Marvel 88w8355 "Libertas" chipset. > > However I have not yet confirmed the exact chip used on my card. > > I think you mean "88w8335" actually. The Netgear WG311v3 uses the > Marvell 88w8335 chipset. Oh, ok, I stand corrected, I stupidly didn't read the chip (apart from noticing the stylised M) before thwacking it into my machine. > > I believe variants of this chip, are supported on SDIO, (8385, 8686) > > USB (8388) and CompactFlash (8385) using the libertas driver. > > Correct; the existing Libertas driver (perhaps somewhat mis-named) > supports only the FullMAC variants of the libertas family. > > The other, lower-numbered chips in the libertas family (8335, 8310, etc) > are all more softmac parts and not supported by the existing libertas > > driver. Oh. That sucks, I'd thought that this was just another Libertas part, given the website mentioned above. Well, that explains why the "Libertas" parts supported by the current kernel require firmware and why the ndiswrapper driver I'm using doesn't. > > I can also find no information on a pci version of the libertas > > driver, only a proposal which appeared to go nowhere due to lack of > > documentation. I also cannot find any information on any linux support > > for this card outside of using ndiswrapper. > > There's an existing vendor net80211-based driver for the 8335 here: > > http://git.infradead.org/?p=users/dwmw2/marvell-db64660-2.6.12.6.git;a=tree;f=drivers/net/wireless/marvell_softap;h=566585b308d53a7006814c77dedae73cc919cbef;hb=HEAD > > There's also some reverse-engineered bits here: > > http://www.saillard.org/linux/mrv8k/ > > and the mac80211 port of mrv8k here: > > http://david.woodhou.se/mrv.tar.gz > > though the last one here panic-ed in the interrupt handler when I tried > it last on 2.6.22. Cool! =) > > As such, I am considering reverse engineering the pci interface for > > this chipset, and hopefully linking it up with the existing libertas > > driver. > > Don't link up with the existing libertas driver, they are just too > different (softmac vs. fullmac). Fair enough, I'll leave that be then. > > I was hoping to use the ndiswrapper driver as a starting point, using > > it as a black box to see how it talks to the PCI card. (possibly > > hacking together a OS level PCI sniffer) and hopefully, what I'll see > > will match up to what's going on in the libertas driver for similar > > tasks, and then I should be able to write the necessary code (or > > specifications) to do this. > > > > I am also concerned about any possible legal ramifications of this > > reverse engineering. Is it all right for me to do this, providing that > > I treat the ndiswrapper driver as a black box? or am I too close to > > non-free code to have my code be untainted? > > I'd say first, try to whip the existing mrv8k-mac80211 port into shape > and you probably won't have to worry much about the legal ramifications. > You can look at the GPL-ed vendor driver (from the git I posted) for > pointers about hardware-specific stuff, but after the 8388 driver > experience, I'd strongly advocate writing a driver from scratch (or > basing off mrv8k) and not using existing Marvell vendor drivers as a > starting point. Ok, will do. I'm not sure I'm up to writing a full driver, so I'll try to get mvr8k working on my box, then probably call back here for help. Either way though, thanks for all the info and pointers. I'll check them out tonight. > Dan Thanks, -- Julian Calaby Email: julian.calaby@gmail.com ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Netgear WG311v3 - Marvell 88w8355 "Libertas" 2008-03-02 22:01 ` Julian Calaby @ 2008-03-03 0:55 ` Dan Williams 2008-03-03 4:06 ` Julian Calaby 0 siblings, 1 reply; 7+ messages in thread From: Dan Williams @ 2008-03-03 0:55 UTC (permalink / raw) To: Julian Calaby; +Cc: linux-wireless, libertas-dev On Mon, 2008-03-03 at 09:01 +1100, Julian Calaby wrote: > On Mon, Mar 3, 2008 at 2:33 AM, Dan Williams <dcbw@redhat.com> wrote: > > On Sun, 2008-03-02 at 22:19 +1100, Julian Calaby wrote: > > > Hi, > > > > > > I'm not sure if this is the correct place to ask this, but here goes. > > > > > > I have recently obtained a Netgear WG311v3 card, under the > > > misunderstanding that it was an atheros card. (though I have no idea > > > how I managed to do that) > > > > > > Following some random FAQ, I have this card working reliably, for the > > > moment, using ndiswrapper, which is more than suitable for my needs. > > > > > > However I yearn for more. > > > > > > I have discovered here: > > > http://users.linpro.no/janl/hardware/wifi.html > > > that this card appears to use a Marvel 88w8355 "Libertas" chipset. > > > However I have not yet confirmed the exact chip used on my card. > > > > I think you mean "88w8335" actually. The Netgear WG311v3 uses the > > Marvell 88w8335 chipset. > > Oh, ok, I stand corrected, I stupidly didn't read the chip (apart from > noticing the stylised M) before thwacking it into my machine. > > > > I believe variants of this chip, are supported on SDIO, (8385, 8686) > > > USB (8388) and CompactFlash (8385) using the libertas driver. > > > > Correct; the existing Libertas driver (perhaps somewhat mis-named) > > supports only the FullMAC variants of the libertas family. > > > > The other, lower-numbered chips in the libertas family (8335, 8310, etc) > > are all more softmac parts and not supported by the existing libertas > > > > driver. > > Oh. > > That sucks, I'd thought that this was just another Libertas part, > given the website mentioned above. > > Well, that explains why the "Libertas" parts supported by the current > kernel require firmware and why the ndiswrapper driver I'm using > doesn't. The 8335 still requires firmware. Lots of the windows drivers embed the firmware into the .sys or .dll files, whereas on Linux embedding firmware into the driver is quite frowned upon. dan > > > I can also find no information on a pci version of the libertas > > > driver, only a proposal which appeared to go nowhere due to lack of > > > documentation. I also cannot find any information on any linux support > > > for this card outside of using ndiswrapper. > > > > There's an existing vendor net80211-based driver for the 8335 here: > > > > http://git.infradead.org/?p=users/dwmw2/marvell-db64660-2.6.12.6.git;a=tree;f=drivers/net/wireless/marvell_softap;h=566585b308d53a7006814c77dedae73cc919cbef;hb=HEAD > > > > There's also some reverse-engineered bits here: > > > > http://www.saillard.org/linux/mrv8k/ > > > > and the mac80211 port of mrv8k here: > > > > http://david.woodhou.se/mrv.tar.gz > > > > though the last one here panic-ed in the interrupt handler when I tried > > it last on 2.6.22. > > Cool! =) > > > > As such, I am considering reverse engineering the pci interface for > > > this chipset, and hopefully linking it up with the existing libertas > > > driver. > > > > Don't link up with the existing libertas driver, they are just too > > different (softmac vs. fullmac). > > Fair enough, I'll leave that be then. > > > > I was hoping to use the ndiswrapper driver as a starting point, using > > > it as a black box to see how it talks to the PCI card. (possibly > > > hacking together a OS level PCI sniffer) and hopefully, what I'll see > > > will match up to what's going on in the libertas driver for similar > > > tasks, and then I should be able to write the necessary code (or > > > specifications) to do this. > > > > > > I am also concerned about any possible legal ramifications of this > > > reverse engineering. Is it all right for me to do this, providing that > > > I treat the ndiswrapper driver as a black box? or am I too close to > > > non-free code to have my code be untainted? > > > > I'd say first, try to whip the existing mrv8k-mac80211 port into shape > > and you probably won't have to worry much about the legal ramifications. > > You can look at the GPL-ed vendor driver (from the git I posted) for > > pointers about hardware-specific stuff, but after the 8388 driver > > experience, I'd strongly advocate writing a driver from scratch (or > > basing off mrv8k) and not using existing Marvell vendor drivers as a > > starting point. > > Ok, will do. I'm not sure I'm up to writing a full driver, so I'll try > to get mvr8k working on my box, then probably call back here for help. > > Either way though, thanks for all the info and pointers. I'll check > them out tonight. > > > Dan > > Thanks, > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Netgear WG311v3 - Marvell 88w8355 "Libertas" 2008-03-03 0:55 ` Dan Williams @ 2008-03-03 4:06 ` Julian Calaby 2008-03-03 15:28 ` Dan Williams 0 siblings, 1 reply; 7+ messages in thread From: Julian Calaby @ 2008-03-03 4:06 UTC (permalink / raw) To: Dan Williams; +Cc: linux-wireless, libertas-dev On Mon, Mar 3, 2008 at 11:55 AM, Dan Williams <dcbw@redhat.com> wrote: > > On Mon, 2008-03-03 at 09:01 +1100, Julian Calaby wrote: > > Well, that explains why the "Libertas" parts supported by the current > > kernel require firmware and why the ndiswrapper driver I'm using > > doesn't. > > The 8335 still requires firmware. Lots of the windows drivers embed the > firmware into the .sys or .dll files, whereas on Linux embedding > firmware into the driver is quite frowned upon. Yeah, I discovered that the mrv8k driver still requires firmware, despite there being no actual file in the windows driver that I can point to as being the firmware image. Thanks, -- Julian Calaby Email: julian.calaby@gmail.com ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Netgear WG311v3 - Marvell 88w8355 "Libertas" 2008-03-03 4:06 ` Julian Calaby @ 2008-03-03 15:28 ` Dan Williams 2008-03-03 21:32 ` Julian Calaby 0 siblings, 1 reply; 7+ messages in thread From: Dan Williams @ 2008-03-03 15:28 UTC (permalink / raw) To: Julian Calaby; +Cc: linux-wireless, libertas-dev On Mon, 2008-03-03 at 15:06 +1100, Julian Calaby wrote: > On Mon, Mar 3, 2008 at 11:55 AM, Dan Williams <dcbw@redhat.com> wrote: > > > > On Mon, 2008-03-03 at 09:01 +1100, Julian Calaby wrote: > > > Well, that explains why the "Libertas" parts supported by the current > > > kernel require firmware and why the ndiswrapper driver I'm using > > > doesn't. > > > > The 8335 still requires firmware. Lots of the windows drivers embed the > > firmware into the .sys or .dll files, whereas on Linux embedding > > firmware into the driver is quite frowned upon. > > Yeah, I discovered that the mrv8k driver still requires firmware, > despite there being no actual file in the windows driver that I can > point to as being the firmware image. It's likely embedded into the sys file, try: http://www.saillard.org/linux/mrv8k/files/mrv8k_extract_fw.c to extract the firmware from a supported driver file. At least one versoin of WG311v3 driver seems to be supported there ("NETGEAR WG311v3", "3.1.1.7") for extracting the firmware from. Dan ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Netgear WG311v3 - Marvell 88w8355 "Libertas" 2008-03-03 15:28 ` Dan Williams @ 2008-03-03 21:32 ` Julian Calaby 0 siblings, 0 replies; 7+ messages in thread From: Julian Calaby @ 2008-03-03 21:32 UTC (permalink / raw) To: Dan Williams; +Cc: linux-wireless, libertas-dev On Tue, Mar 4, 2008 at 2:28 AM, Dan Williams <dcbw@redhat.com> wrote: > > On Mon, 2008-03-03 at 15:06 +1100, Julian Calaby wrote: > > On Mon, Mar 3, 2008 at 11:55 AM, Dan Williams <dcbw@redhat.com> wrote: > > > > > > On Mon, 2008-03-03 at 09:01 +1100, Julian Calaby wrote: > > > > Well, that explains why the "Libertas" parts supported by the current > > > > kernel require firmware and why the ndiswrapper driver I'm using > > > > doesn't. > > > > > > The 8335 still requires firmware. Lots of the windows drivers embed the > > > firmware into the .sys or .dll files, whereas on Linux embedding > > > firmware into the driver is quite frowned upon. > > > > Yeah, I discovered that the mrv8k driver still requires firmware, > > despite there being no actual file in the windows driver that I can > > point to as being the firmware image. > > It's likely embedded into the sys file, try: > > http://www.saillard.org/linux/mrv8k/files/mrv8k_extract_fw.c > > to extract the firmware from a supported driver file. At least one > versoin of WG311v3 driver seems to be supported there ("NETGEAR > WG311v3", "3.1.1.7") for extracting the firmware from. Thought as much, I've already downloaded it, and will be trying it out tonight. Thanks, (sorry for the dupe, hit the wrong button) -- Julian Calaby Email: julian.calaby@gmail.com ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2008-03-03 21:32 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2008-03-02 11:19 Netgear WG311v3 - Marvell 88w8355 "Libertas" Julian Calaby 2008-03-02 15:33 ` Dan Williams 2008-03-02 22:01 ` Julian Calaby 2008-03-03 0:55 ` Dan Williams 2008-03-03 4:06 ` Julian Calaby 2008-03-03 15:28 ` Dan Williams 2008-03-03 21:32 ` Julian Calaby
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.