All of lore.kernel.org
 help / color / mirror / Atom feed
* building brcmfmac driver for iMX6 Ultralite platform
@ 2016-06-30 19:24 Michael Eskowitz
  2016-07-01  7:49 ` Arend Van Spriel
  2016-07-01  9:07 ` Rafał Miłecki
  0 siblings, 2 replies; 8+ messages in thread
From: Michael Eskowitz @ 2016-06-30 19:24 UTC (permalink / raw)
  To: linux-wireless

I am trying to bring up the brcmfmac driver on an iMX6 Ultralite board.  I
have both a 43341 and 43362 Wi-Fi SDIO module up and running on this
platform already using the standard bcmdhd.  I am told by some Broadcom
folks that the brcmfmac driver should support concurrent connections which
is something the bcmdhd does not do and that is my primary motivation for
getting the fmac driver up and running.

The brcmfmac driver is included in NXP's kernel git and I have successfully
built it and have it on the Ultralite platform running kernel 3.14.38.  When
I attempt to insert the module using the command

	insmod  brcmfmac.ko
firmware_path=ISM4334X_Wifi_FW_6.10.190.49_P.bin
nvram_path=ISM4334X_NVRAM_C1.txt

I receive the following errors:

	brcmfmac: Unknown symbol brcmu_pktq_mlen (err 0)
	brcmfmac: Unknown symbol brcmu_pkt_buf_free_skb (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_init (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_penq_head (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_pdeq (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_peek_tail (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_flush (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_pdeq_match (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_mdeq (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_penq (err 0)
	brcmfmac: Unknown symbol brcmu_pktq_pdeq_tail (err 0)
	brcmfmac: Unknown symbol brcmu_pkt_buf_get_skb (err 0)
	brcmfmac: Unknown symbol brcmu_d11_attach (err 0)
	insmod: ERROR: could not insert module brcmfmac.ko: Unknown symbol
in module

I'm not sure that the firmware_path and nvram_path should be specified in
this manner, but I doubt that is what is causing these errors.  

The module compiled and built just fine so I am assuming that there are some
dependencies that aren't being met.  Is there another module that I need to
load before attempting to load the fmac driver?

Thanks,
-Mike





^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: building brcmfmac driver for iMX6 Ultralite platform
  2016-06-30 19:24 building brcmfmac driver for iMX6 Ultralite platform Michael Eskowitz
@ 2016-07-01  7:49 ` Arend Van Spriel
  2016-07-12 19:17   ` Michael Eskowitz
  2016-07-01  9:07 ` Rafał Miłecki
  1 sibling, 1 reply; 8+ messages in thread
From: Arend Van Spriel @ 2016-07-01  7:49 UTC (permalink / raw)
  To: Michael Eskowitz, linux-wireless

On 30-6-2016 21:24, Michael Eskowitz wrote:
> I am trying to bring up the brcmfmac driver on an iMX6 Ultralite board.  I
> have both a 43341 and 43362 Wi-Fi SDIO module up and running on this
> platform already using the standard bcmdhd.  I am told by some Broadcom
> folks that the brcmfmac driver should support concurrent connections which
> is something the bcmdhd does not do and that is my primary motivation for
> getting the fmac driver up and running.

bcmdhd is the standard *android* driver as provided in AOSP. So do you
intend to productize your platform with android. The brcmfmac is our
upstream driver so it will not have android specific functionality.

> The brcmfmac driver is included in NXP's kernel git and I have successfully
> built it and have it on the Ultralite platform running kernel 3.14.38.  When
> I attempt to insert the module using the command
> 
> 	insmod  brcmfmac.ko
> firmware_path=ISM4334X_Wifi_FW_6.10.190.49_P.bin
> nvram_path=ISM4334X_NVRAM_C1.txt
> 
> I receive the following errors:
> 
> 	brcmfmac: Unknown symbol brcmu_pktq_mlen (err 0)
> 	brcmfmac: Unknown symbol brcmu_pkt_buf_free_skb (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_init (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_penq_head (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_pdeq (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_peek_tail (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_flush (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_pdeq_match (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_mdeq (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_penq (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_pdeq_tail (err 0)
> 	brcmfmac: Unknown symbol brcmu_pkt_buf_get_skb (err 0)
> 	brcmfmac: Unknown symbol brcmu_d11_attach (err 0)
> 	insmod: ERROR: could not insert module brcmfmac.ko: Unknown symbol
> in module
> 
> I'm not sure that the firmware_path and nvram_path should be specified in
> this manner, but I doubt that is what is causing these errors.  

The brcmfmac driver does not have module parameters firmware_path and
nvram_path. The filenaming is determined by the driver and it must be in
a location that firmware api provider looks for:

drivers/base/firmware_class.c:277:
/* direct firmware loading support */
static char fw_path_para[256];
static const char * const fw_path[] = {
        fw_path_para,
        "/lib/firmware/updates/" UTS_RELEASE,
        "/lib/firmware/updates",
        "/lib/firmware/" UTS_RELEASE,
        "/lib/firmware"
};

/*
 * Typical usage is that passing 'firmware_class.path=$CUSTOMIZED_PATH'
 * from kernel command line because firmware_class is generally built in
 * kernel instead of module.
 */
module_param_string(path, fw_path_para, sizeof(fw_path_para), 0644);
MODULE_PARM_DESC(path, "customized firmware image search path with a
higher priority than default path");

However, this is indeed not the reason for the errors. The brcmfmac
needs functions exported by brcmutil.ko which should be created in the
build you executed.

Regards,
Arend

> The module compiled and built just fine so I am assuming that there are some
> dependencies that aren't being met.  Is there another module that I need to
> load before attempting to load the fmac driver?
> 
> Thanks,
> -Mike

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: building brcmfmac driver for iMX6 Ultralite platform
  2016-06-30 19:24 building brcmfmac driver for iMX6 Ultralite platform Michael Eskowitz
  2016-07-01  7:49 ` Arend Van Spriel
@ 2016-07-01  9:07 ` Rafał Miłecki
  2016-07-01  9:14   ` Arend Van Spriel
  1 sibling, 1 reply; 8+ messages in thread
From: Rafał Miłecki @ 2016-07-01  9:07 UTC (permalink / raw)
  To: Michael Eskowitz; +Cc: linux-wireless

On 30 June 2016 at 21:24, Michael Eskowitz <MichaelE@inventeksys.com> wrote:
>         insmod  brcmfmac.ko
> firmware_path=ISM4334X_Wifi_FW_6.10.190.49_P.bin
> nvram_path=ISM4334X_NVRAM_C1.txt
>
> I receive the following errors:
>
>         brcmfmac: Unknown symbol brcmu_pktq_mlen (err 0)
>         brcmfmac: Unknown symbol brcmu_pkt_buf_free_skb (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_init (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_penq_head (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_pdeq (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_peek_tail (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_flush (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_pdeq_match (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_mdeq (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_penq (err 0)
>         brcmfmac: Unknown symbol brcmu_pktq_pdeq_tail (err 0)
>         brcmfmac: Unknown symbol brcmu_pkt_buf_get_skb (err 0)
>         brcmfmac: Unknown symbol brcmu_d11_attach (err 0)
>         insmod: ERROR: could not insert module brcmfmac.ko: Unknown symbol
> in module
>
> I'm not sure that the firmware_path and nvram_path should be specified in
> this manner, but I doubt that is what is causing these errors.
>
> The module compiled and built just fine so I am assuming that there are some
> dependencies that aren't being met.  Is there another module that I need to
> load before attempting to load the fmac driver?

If you don't know module dependencies, why not use something that
handled this for you? Replace insmod with modprobe.

You can't load brcmfmac.ko without loading brcmutil.ko first.

-- 
Rafał

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: building brcmfmac driver for iMX6 Ultralite platform
  2016-07-01  9:07 ` Rafał Miłecki
@ 2016-07-01  9:14   ` Arend Van Spriel
  0 siblings, 0 replies; 8+ messages in thread
From: Arend Van Spriel @ 2016-07-01  9:14 UTC (permalink / raw)
  To: Rafał Miłecki, Michael Eskowitz; +Cc: linux-wireless

On 1-7-2016 11:07, Rafał Miłecki wrote:
> On 30 June 2016 at 21:24, Michael Eskowitz <MichaelE@inventeksys.com> wrote:
>>         insmod  brcmfmac.ko
>> firmware_path=ISM4334X_Wifi_FW_6.10.190.49_P.bin
>> nvram_path=ISM4334X_NVRAM_C1.txt
>>
>> I receive the following errors:
>>
>>         brcmfmac: Unknown symbol brcmu_pktq_mlen (err 0)
>>         brcmfmac: Unknown symbol brcmu_pkt_buf_free_skb (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_init (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_penq_head (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_pdeq (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_peek_tail (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_flush (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_pdeq_match (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_mdeq (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_penq (err 0)
>>         brcmfmac: Unknown symbol brcmu_pktq_pdeq_tail (err 0)
>>         brcmfmac: Unknown symbol brcmu_pkt_buf_get_skb (err 0)
>>         brcmfmac: Unknown symbol brcmu_d11_attach (err 0)
>>         insmod: ERROR: could not insert module brcmfmac.ko: Unknown symbol
>> in module
>>
>> I'm not sure that the firmware_path and nvram_path should be specified in
>> this manner, but I doubt that is what is causing these errors.
>>
>> The module compiled and built just fine so I am assuming that there are some
>> dependencies that aren't being met.  Is there another module that I need to
>> load before attempting to load the fmac driver?
> 
> If you don't know module dependencies, why not use something that
> handled this for you? Replace insmod with modprobe.

That only works when the modules are in an installed location and depmod
has been used properly, which I doubt is the case in this experiment.

> You can't load brcmfmac.ko without loading brcmutil.ko first.

Indeed.

Regards,
Arend

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: building brcmfmac driver for iMX6 Ultralite platform
  2016-07-01  7:49 ` Arend Van Spriel
@ 2016-07-12 19:17   ` Michael Eskowitz
  2016-07-12 21:10     ` Rafał Miłecki
  0 siblings, 1 reply; 8+ messages in thread
From: Michael Eskowitz @ 2016-07-12 19:17 UTC (permalink / raw)
  To: 'Arend Van Spriel', linux-wireless

Arend,

That is news to me.  I was under the impression that bcmdhd was Broadcom's
proprietary (closed source) Linux driver and brcmfmac was the open source
Linux driver.

Either way, I am now running

	insmod  brcmutil.ko
	insmod  brcmfmac.ko

I receive no errors and no kernel messages.

When I insert the 43341 module into the SDIO slot nothing happens.  I'm
guessing that the version of the brcmfmac driver that I built does not
support that chip.

When I insert the 43362 module into the SDIO slot I receive the following
errors

	mmc0: queuing unknown CIS tuple 0x80 (7 bytes)
	mmc0: new high speed SDIO card at address 0001
	brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Jun  7 2012
18:27:16 version 5.90.225 FWID 01-d8fe14bd
	brcmfmac: brcmf_fil_cmd_data: Failed err=-23
	brcmfmac: brcmf_fil_cmd_data: Failed err=-23
	brcmfmac: brcmf_fil_cmd_data: Failed err=-23
	brcmfmac: brcmf_fil_cmd_data: Failed err=-23
	brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
	brcmfmac: brcmf_add_if: ignore IF event
	brcmfmac: brcmf_fil_cmd_data: Failed err=-23
	brcmfmac: brcmf_construct_reginfo: channel 1: f=2412 bw=0
sb=-1998840228
	brcmfmac: brcmf_construct_reginfo: channel 2: f=2417 bw=0
sb=-1998840228

and suddenly ifconfig shows the interface wlan0.  The interface looks to be
valid as it is displaying a MAC from our address range.  

Although the interface wlan0 is present I am not able to use wl commands to
scan for networks.  wl reports "wl driver adapter not found" for all command
arguments.  If I run the command

	iwlist  wlan0  scan

I'm told that the interface does not support scanning.  If I run wpa_cli and
then the commands scan and scanresults I don't see any networks.

I'm thinking that the interface has not come up successfully.  Are any of
the error messages above meaningful to you?

Thanks,
-Mike




-----Original Message-----
From: Arend Van Spriel [mailto:arend.vanspriel@broadcom.com] 
Sent: Friday, July 1, 2016 3:49 AM
To: Michael Eskowitz <MichaelE@inventeksys.com>;
linux-wireless@vger.kernel.org
Subject: Re: building brcmfmac driver for iMX6 Ultralite platform

On 30-6-2016 21:24, Michael Eskowitz wrote:
> I am trying to bring up the brcmfmac driver on an iMX6 Ultralite 
> board.  I have both a 43341 and 43362 Wi-Fi SDIO module up and running 
> on this platform already using the standard bcmdhd.  I am told by some 
> Broadcom folks that the brcmfmac driver should support concurrent 
> connections which is something the bcmdhd does not do and that is my 
> primary motivation for getting the fmac driver up and running.

bcmdhd is the standard *android* driver as provided in AOSP. So do you
intend to productize your platform with android. The brcmfmac is our
upstream driver so it will not have android specific functionality.

> The brcmfmac driver is included in NXP's kernel git and I have 
> successfully built it and have it on the Ultralite platform running 
> kernel 3.14.38.  When I attempt to insert the module using the command
> 
> 	insmod  brcmfmac.ko
> firmware_path=ISM4334X_Wifi_FW_6.10.190.49_P.bin
> nvram_path=ISM4334X_NVRAM_C1.txt
> 
> I receive the following errors:
> 
> 	brcmfmac: Unknown symbol brcmu_pktq_mlen (err 0)
> 	brcmfmac: Unknown symbol brcmu_pkt_buf_free_skb (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_init (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_penq_head (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_pdeq (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_peek_tail (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_flush (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_pdeq_match (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_mdeq (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_penq (err 0)
> 	brcmfmac: Unknown symbol brcmu_pktq_pdeq_tail (err 0)
> 	brcmfmac: Unknown symbol brcmu_pkt_buf_get_skb (err 0)
> 	brcmfmac: Unknown symbol brcmu_d11_attach (err 0)
> 	insmod: ERROR: could not insert module brcmfmac.ko: Unknown symbol
in 
> module
> 
> I'm not sure that the firmware_path and nvram_path should be specified 
> in this manner, but I doubt that is what is causing these errors.

The brcmfmac driver does not have module parameters firmware_path and
nvram_path. The filenaming is determined by the driver and it must be in a
location that firmware api provider looks for:

drivers/base/firmware_class.c:277:
/* direct firmware loading support */
static char fw_path_para[256];
static const char * const fw_path[] = {
        fw_path_para,
        "/lib/firmware/updates/" UTS_RELEASE,
        "/lib/firmware/updates",
        "/lib/firmware/" UTS_RELEASE,
        "/lib/firmware"
};

/*
 * Typical usage is that passing 'firmware_class.path=$CUSTOMIZED_PATH'
 * from kernel command line because firmware_class is generally built in
 * kernel instead of module.
 */
module_param_string(path, fw_path_para, sizeof(fw_path_para), 0644);
MODULE_PARM_DESC(path, "customized firmware image search path with a higher
priority than default path");

However, this is indeed not the reason for the errors. The brcmfmac needs
functions exported by brcmutil.ko which should be created in the build you
executed.

Regards,
Arend

> The module compiled and built just fine so I am assuming that there 
> are some dependencies that aren't being met.  Is there another module 
> that I need to load before attempting to load the fmac driver?
> 
> Thanks,
> -Mike


^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: building brcmfmac driver for iMX6 Ultralite platform
  2016-07-12 19:17   ` Michael Eskowitz
@ 2016-07-12 21:10     ` Rafał Miłecki
  2016-07-12 21:32       ` Arend Van Spriel
  2016-07-13 14:51       ` Michael Eskowitz
  0 siblings, 2 replies; 8+ messages in thread
From: Rafał Miłecki @ 2016-07-12 21:10 UTC (permalink / raw)
  To: Michael Eskowitz; +Cc: Arend Van Spriel, linux-wireless

On 12 July 2016 at 21:17, Michael Eskowitz <MichaelE@inventeksys.com> wrote:
> Arend,

What about my reply? ;)


> That is news to me.  I was under the impression that bcmdhd was Broadcom's
> proprietary (closed source) Linux driver and brcmfmac was the open source
> Linux driver.

Don't top post. It's hard to say what you're replying to. bcmdhd is
also open source (not sure what license), just not mainline.


> Either way, I am now running
>
>         insmod  brcmutil.ko
>         insmod  brcmfmac.ko
>
> I receive no errors and no kernel messages.
>
> When I insert the 43341 module into the SDIO slot nothing happens.  I'm
> guessing that the version of the brcmfmac driver that I built does not
> support that chip.

Is is detected by the system? If so, what ID does it use?


> When I insert the 43362 module into the SDIO slot I receive the following
> errors
>
>         mmc0: queuing unknown CIS tuple 0x80 (7 bytes)
>         mmc0: new high speed SDIO card at address 0001
>         brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Jun  7 2012
> 18:27:16 version 5.90.225 FWID 01-d8fe14bd
>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>         brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
>         brcmfmac: brcmf_add_if: ignore IF event
>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>         brcmfmac: brcmf_construct_reginfo: channel 1: f=2412 bw=0
> sb=-1998840228
>         brcmfmac: brcmf_construct_reginfo: channel 2: f=2417 bw=0
> sb=-1998840228
>
> and suddenly ifconfig shows the interface wlan0.  The interface looks to be
> valid as it is displaying a MAC from our address range.
>
> Although the interface wlan0 is present I am not able to use wl commands to
> scan for networks.  wl reports "wl driver adapter not found" for all command
> arguments.  If I run the command
>
>         iwlist  wlan0  scan
>
> I'm told that the interface does not support scanning.  If I run wpa_cli and
> then the commands scan and scanresults I don't see any networks.

"wl" user space tool uses wlioctl, proprietary protocol, brcmfmac
doesn't support it.

iwlist uses wext protocol, legacy one.

Please use nl80211 based tools, e.g. "iw".

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: building brcmfmac driver for iMX6 Ultralite platform
  2016-07-12 21:10     ` Rafał Miłecki
@ 2016-07-12 21:32       ` Arend Van Spriel
  2016-07-13 14:51       ` Michael Eskowitz
  1 sibling, 0 replies; 8+ messages in thread
From: Arend Van Spriel @ 2016-07-12 21:32 UTC (permalink / raw)
  To: Rafał Miłecki, Michael Eskowitz; +Cc: linux-wireless



On 12-7-2016 23:10, Rafał Miłecki wrote:
> On 12 July 2016 at 21:17, Michael Eskowitz <MichaelE@inventeksys.com> wrote:
>> Arend,
> 
> What about my reply? ;)
> 
> 
>> That is news to me.  I was under the impression that bcmdhd was Broadcom's
>> proprietary (closed source) Linux driver and brcmfmac was the open source
>> Linux driver.
> 
> Don't top post. It's hard to say what you're replying to. bcmdhd is
> also open source (not sure what license), just not mainline.
> 
> 
>> Either way, I am now running
>>
>>         insmod  brcmutil.ko
>>         insmod  brcmfmac.ko
>>
>> I receive no errors and no kernel messages.
>>
>> When I insert the 43341 module into the SDIO slot nothing happens.  I'm
>> guessing that the version of the brcmfmac driver that I built does not
>> support that chip.
> 
> Is is detected by the system? If so, what ID does it use?
> 
> 
>> When I insert the 43362 module into the SDIO slot I receive the following
>> errors
>>
>>         mmc0: queuing unknown CIS tuple 0x80 (7 bytes)
>>         mmc0: new high speed SDIO card at address 0001
>>         brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Jun  7 2012
>> 18:27:16 version 5.90.225 FWID 01-d8fe14bd
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
>>         brcmfmac: brcmf_add_if: ignore IF event
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_construct_reginfo: channel 1: f=2412 bw=0
>> sb=-1998840228
>>         brcmfmac: brcmf_construct_reginfo: channel 2: f=2417 bw=0
>> sb=-1998840228
>>
>> and suddenly ifconfig shows the interface wlan0.  The interface looks to be
>> valid as it is displaying a MAC from our address range.
>>
>> Although the interface wlan0 is present I am not able to use wl commands to
>> scan for networks.  wl reports "wl driver adapter not found" for all command
>> arguments.  If I run the command
>>
>>         iwlist  wlan0  scan
>>
>> I'm told that the interface does not support scanning.  If I run wpa_cli and
>> then the commands scan and scanresults I don't see any networks.
> 
> "wl" user space tool uses wlioctl, proprietary protocol, brcmfmac
> doesn't support it.

Well, not quite these days. The wl tool can be built to use nl80211
vendor commands to transport wl commands to firmware. However, my bet is
you have the "classic" wl tool using ioctl() api, which we removed from
brcmfmac years ago.

> iwlist uses wext protocol, legacy one.

iwlist is indeed using wext protocol, but cfg80211 should provide
compatibility layer so cfg80211-based drivers like brcmfmac can work
with it. However, there seem to be issues and not everything runs
smoothly. Apparently no one cares enough about wext.

> Please use nl80211 based tools, e.g. "iw".

So indeed use "iw":

$ sudo ifconfig wlan0 up
$ sudo iw wlan0 scan

Regards,
Arend

^ permalink raw reply	[flat|nested] 8+ messages in thread

* RE: building brcmfmac driver for iMX6 Ultralite platform
  2016-07-12 21:10     ` Rafał Miłecki
  2016-07-12 21:32       ` Arend Van Spriel
@ 2016-07-13 14:51       ` Michael Eskowitz
  1 sibling, 0 replies; 8+ messages in thread
From: Michael Eskowitz @ 2016-07-13 14:51 UTC (permalink / raw)
  To: 'Rafał Miłecki'
  Cc: 'Arend Van Spriel', linux-wireless

>> Arend,
>
>What about my reply? ;)

Sorry.  No offense intended.  I clearly need to not treat this as email.  I'll figure out the protocol soon enough.

>
>
>> That is news to me.  I was under the impression that bcmdhd was 
>> Broadcom's proprietary (closed source) Linux driver and brcmfmac was 
>> the open source Linux driver.
>
>Don't top post. It's hard to say what you're replying to. bcmdhd is also open source (not sure what license), just not mainline.
>
>
>> Either way, I am now running
>>
>>         insmod  brcmutil.ko
>>         insmod  brcmfmac.ko
>>
>> I receive no errors and no kernel messages.
>>
>> When I insert the 43341 module into the SDIO slot nothing happens.  
>> I'm guessing that the version of the brcmfmac driver that I built does 
>> not support that chip.
>
>Is is detected by the system? If so, what ID does it use?
>

The system recognizes that an mmc card has been inserted.  The driver doesn't see the module, however.  Looking at the page

	https://wireless.wiki.kernel.org/en/users/drivers/brcm80211

suggests that I simply need to move to a newer Linux kernel as I am using 3.14.38.  NXP recently posted a 4.1.15 install so I will try getting the 43341 module up and running with that.

>
>> When I insert the 43362 module into the SDIO slot I receive the 
>> following errors
>>
>>         mmc0: queuing unknown CIS tuple 0x80 (7 bytes)
>>         mmc0: new high speed SDIO card at address 0001
>>         brcmfmac: brcmf_c_preinit_dcmds: Firmware version = wl0: Jun  
>> 7 2012
>> 18:27:16 version 5.90.225 FWID 01-d8fe14bd
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_add_if: ERROR: netdev:wlan0 already exists
>>         brcmfmac: brcmf_add_if: ignore IF event
>>         brcmfmac: brcmf_fil_cmd_data: Failed err=-23
>>         brcmfmac: brcmf_construct_reginfo: channel 1: f=2412 bw=0
>> sb=-1998840228
>>         brcmfmac: brcmf_construct_reginfo: channel 2: f=2417 bw=0
>> sb=-1998840228
>>
>> and suddenly ifconfig shows the interface wlan0.  The interface looks 
>> to be valid as it is displaying a MAC from our address range.
>>
>> Although the interface wlan0 is present I am not able to use wl 
>> commands to scan for networks.  wl reports "wl driver adapter not 
>> found" for all command arguments.  If I run the command
>>
>>         iwlist  wlan0  scan
>>
>> I'm told that the interface does not support scanning.  If I run 
>> wpa_cli and then the commands scan and scanresults I don't see any networks. 
>
>"wl" user space tool uses wlioctl, proprietary protocol, brcmfmac doesn't support it.
>
>iwlist uses wext protocol, legacy one.
>
>Please use nl80211 based tools, e.g. "iw".

I was able to scan with iw and join a WPA2 protected network using wpa_supplicant.  It would appear that I have the 43362 up and running with the brcmfmac driver.  I will try the other Linux install for the 43341.

Thank you all for all your help.  It is much appreciated.  :-)

-Mike




^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2016-07-13 15:28 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-30 19:24 building brcmfmac driver for iMX6 Ultralite platform Michael Eskowitz
2016-07-01  7:49 ` Arend Van Spriel
2016-07-12 19:17   ` Michael Eskowitz
2016-07-12 21:10     ` Rafał Miłecki
2016-07-12 21:32       ` Arend Van Spriel
2016-07-13 14:51       ` Michael Eskowitz
2016-07-01  9:07 ` Rafał Miłecki
2016-07-01  9:14   ` Arend Van Spriel

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.