Search Linux Wireless

Delaying probe of firmwares with builtin drivers?

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

 



Hi,

The brcmfmac driver needs a firmware to work.

With a Samsung Galaxy SIII (GT-I9300) that runs GNU/Linux (and an out of
tree u-boot), when the brcmfmac is builtin the kernel (=y), when
brcmfmac is probed, the root filesystem (that is on a partition of the
internal eMMC) isn't mounted yet.

So the brcmfmac driver fails to find its firmware, even if a firmware
is present at the right location in the root filesystem.

I've tried to set brcmfmac_module_init to late_initcall and
late_initcall_sync but that didn't change much.

I also looked a bit in init/main.c and init/do_mount.c and I didn't find
any generic way that would already be used in drivers/ to wait for the
rootfs to be mounted.

I've attached the dmesg, .config (as config) and defconfig used to
reproduce the bug if needed.

For testing I used the following commit linux/master[1]:
> commit 4b93c544e90e2b28326182d31ee008eb80e02074 (thunderbolt: test:
> split up test cases in tb_test_credit_alloc_all)

What would be the proper way of fixing that? 

References:
-----------
[1]https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git

Denis.

Attachment: defconfig
Description: Binary data

Attachment: config
Description: Binary data

Attachment: dmesg
Description: Binary data

Attachment: pgpSjEvMxWPBB.pgp
Description: OpenPGP digital signature


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

  Powered by Linux