Search Linux Wireless

RE: building brcmfmac driver for iMX6 Ultralite platform

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxxxxx] 
Sent: Friday, July 1, 2016 3:49 AM
To: Michael Eskowitz <MichaelE@xxxxxxxxxxxxxxx>;
linux-wireless@xxxxxxxxxxxxxxx
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

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux