Good evening to everyone,
This is my first email here (so I am a bit 'afraid'), I am brand new
to kernel development,
I will try to go to the point and then add some more background.
My principal question -any answer would help-:
* Is it factible to use the brcmfmac driver on a kernel 2.6.35,
specifically one made for Android (CyanogenMod 7) kernel?
That's my only question. Now I will try to give more information that
my help to understand what I want:
For the next 4 following months I will be modifying the bcm4329 driver
for a Nexus S cellphone (aliases: samsung Ccespo, herring),
particularly the scanning algorithm.
So far all the android kernel versions for android use a deprecated
driver called the "bcm4329" -which uses WirelessExtensions-:
* https://github.com/CyanogenMod/cm-kernel/tree/android-msm-2.6.37/drivers/net/wireless/bcm4329
* https://github.com/CyanogenMod/samsung-kernel-crespo/tree/android-samsung-2.6.35/drivers/net/wireless/bcm4329
So as I will spend the next 4 months investigating/experimenting with
a bcm4329 driver,
I think that whatever results -or not- that I will come across after
this time (it's academic research, and will end up in a thesis about
scanning algorithms), It will be better-worthy for all the community,
if that results are achieved on the brcmfmac driver and not on this
'bcm4329' old-only-android driver.
I have found only these attemps of some people trying to do this:
* On this same list: thread "brcmfmac + compat wireless + 2.6.35"
http://thread.gmane.org/gmane.linux.kernel.wireless.general/81301/
* On "freesmartphone" proyect:
http://wiki.freesmartphone.org/index.php/HardwareComparison column
"Nexus S" row "Wifi":
"bcm4329: * we must make brcmfmac work(trough
making a dummy IRQ handler for function 2 of the sdio chip) * Require
a non-free firmware"
On both testimonies seems to conclude that porting "brcmfmac" for
android has not been successful.
Thank you very much for your attention, and I'm glad to have
discovered this nice community.
Greetings,
Renzo Navas
Good Afternoon,
First, Franky thanks for the response it was very helpful to know what
to expect and re-plan my project.
As regards the hardware: basically I don't have many other choices,
the University gave me a Nexus S to develop. I think I can have access
to a Samsung Galaxy S, Galaxy S II and an HTC Dream HD, I have to find
out if some of them has a wifi card which uses a softmac driver. The
idea is going to the wild (to the city which has high density of open
wifi APs) to test the algorithm -so I need some portable device-. I
yet have to find out how much can I accomplish with the bcm4329.
> For ICS we switch to a newer driver bcmdhd which use cfg80211 instead of
> wext. If you want to use cfg80211 instead of wext, this should be a better
> choice.
I'm interested on this "bcmdhd" driver which uses cfg80211,
I have one request: is there an official source with the code of bcmdhd?
Thanks for your attention again, and have a good day
Renzo
On 01/26/2012 08:04 AM, Renzo Navas wrote:
> As regards the hardware: basically I don't have many other choices,
> the University gave me a Nexus S to develop. I think I can have access
> to a Samsung Galaxy S, Galaxy S II and an HTC Dream HD, I have to find
> out if some of them has a wifi card which uses a softmac driver.
Galaxy S is using bcm4329, Galsxy S II is using 4330. Both are fullmac
dongle.
The
> idea is going to the wild (to the city which has high density of open
> wifi APs) to test the algorithm -so I need some portable device-. I
> yet have to find out how much can I accomplish with the bcm4329.
Some laptop products are using Broadcom PCIE NIC(DELL, Macbook Air and
so on). Do you have access to any laptop? We can try to figure out
what's in there.
> I'm interested on this "bcmdhd" driver which uses cfg80211,
> I have one request: is there an official source with the code of bcmdhd?
git clone https://android.googlesource.com/kernel/omap.git
drivers/net/wireless
Any scan request will be wrapped as an iovar and sent to the dongle.
Scan results are sent back to the driver as a dongle event.
Hope this can help.
Franky
>I have found only these attemps of some people trying to do this:
I was involved in it and indeed I didn't succeed with 2.6.35, but I'll retry
soon with the 3.0.
Basically it hanged without producing any interesting logs, maybe I shoud try
to make panic go on serial port(it made the phone not boot when I activated
the console on the serial port on 2.6.35).
Denis.
Hi Renzo,
First of all, is it really a good choice to use a fullmac dongle to do
the scan algorithm investigation? For brcmfmac, all scanning
implementation is in dongle firmware which is not open source. There is
nothing much you can do with it. A softmac pci nic probably can meet you
requirement.
On 01/25/2012 10:03 AM, Renzo Navas wrote:
> * Is it factible to use the brcmfmac driver on a kernel 2.6.35,
> specifically one made for Android (CyanogenMod 7) kernel?
brcmfmac doesn't have any android support for sure(wake lock, bt coex,
WIFI_CONTROL_FUNC and etc.).
> For the next 4 following months I will be modifying the bcm4329 driver
> for a Nexus S cellphone (aliases: samsung Ccespo, herring),
> particularly the scanning algorithm.
>
> So far all the android kernel versions for android use a deprecated
> driver called the "bcm4329" -which uses WirelessExtensions-:
For ICS we switch to a newer driver bcmdhd which use cfg80211 instead of
wext. If you want to use cfg80211 instead of wext, this should be a
better choice.
> On both testimonies seems to conclude that porting "brcmfmac" for
> android has not been successful.
We do have android support on the roadmap but it's not a high priority
task because of several reasons.
Franky