cancel
Showing results for 
Search instead for 
Did you mean: 

Wi-Fi Bluetooth for Linux

AsAl_4421831
New Contributor II

Hello Everyone,

My company has made a custom board based on imx6ul for EFTPOS applications. We are using 1MW module in our product. Our interface is SDIO based. Schematic is as below.

pastedImage_0.png

pastedImage_1.png

I get the following error after bootup.

root@imx6:~# dmesg | grep brcmfmac

root@imx6ulevk:~# dmesg | grep brcm

[    3.111520] brcmfmac: brcmf_fw_alloc_request: using brcm/brcmfmac43455-sdio for chip BCM4345/6

[    3.197038] brcmfmac mmc1:0001:1: direct-loading brcm/brcmfmac43455-sdio.bin

[    3.250556] brcmfmac mmc1:0001:1: direct-loading brcm/brcmfmac43455-sdio.txt

[    4.289794] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50

[    5.299965] brcmfmac: brcmf_sdio_htclk: HT Avail timeout (1000000): clkctl 0x50

device tree is as follows:

regulators {

compatible = "simple-bus";

#address-cells = <1>;

#size-cells = <0>;

wlreg_on: fixedregulator@100 {

compatible = "regulator-fixed";

regulator-min-microvolt = <3300000>;

regulator-max-microvolt = <3300000>;

regulator-name = "wlreg_on";

gpio = <&pca9535_0 0 GPIO_ACTIVE_HIGH>;

startup-delay-us = <100>;

enable-active-high;

};

};

&usdhc1 {

#address-cells = <1>;

#size-cells = <0>;

pinctrl-names = "default", "state_100mhz", "state_200mhz";

pinctrl-0 = <&pinctrl_wifi>;

pinctrl-1 = <&pinctrl_wifi_100mhz>;

pinctrl-2 = <&pinctrl_wifi_200mhz>;

bus-width = <4>;

non-removable;

vmmc-supply = <&wlreg_on>;

vqmmc-1-8-v;

pm-ignore-notify;

wifi-host;

status = "okay";

brcmf: bcrmf@1 {

          reg = <1>;

          compatible = "brcm,bcm4329-fmac";

            interrupt-parent = <&gpio3>;

            interrupts = ❤️ IRQ_TYPE_LEVEL_LOW>;

          interrupt-names = "host-wake";

     };

};

pinctrl_wifi: wifigrp {

fsl,pins = <

MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17019

MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10029

MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17019

MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17019

MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17019

MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17019

MX6UL_PAD_LCD_RESET__GPIO3_IO04      0x50          //host wake interrupt

>;

};

pinctrl_wifi_100mhz: wifigrp1 {

fsl,pins = <

MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x17059

MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x10069

MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x17059

MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x17059

MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x17059

MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x17059

MX6UL_PAD_LCD_RESET__GPIO3_IO04      0x50

>;

};

pinctrl_wifi_200mhz: wifigrp2 {

fsl,pins = <

MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x170d9

MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x100e9

MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x170d9

MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x170d9

MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x170d9

MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x170d9

MX6UL_PAD_LCD_RESET__GPIO3_IO04           0x50

>;

};

I checked my /lib/firmware/brcm folder as well,

root@imx6:~# ls /lib/firmware/brcm/

brcmfmac4339-sdio.bin  brcmfmac43455-sdio.bin       brcmfmac43455-sdio.txt

brcmfmac4339-sdio.txt  brcmfmac43455-sdio.clm_blob

Binaries are present.

Could someone please help me to understand if anything is missing? Your help is much appreciated.

My bsp:

Linux imx6ulevk 4.19.35-04770-ge5eda1f8cba7-dirty

Regards,

Asma

0 Likes
1 Solution
RaktimR_11
Moderator
Moderator

Could you please mention where have you connected the LPO_IN pin (PIN30 in 1MW module)? Was a formal schematic review done by Murata for the custom board?

View solution in original post

0 Likes
2 Replies
RaktimR_11
Moderator
Moderator

Could you please mention where have you connected the LPO_IN pin (PIN30 in 1MW module)? Was a formal schematic review done by Murata for the custom board?

View solution in original post

0 Likes
AsAl_4421831
New Contributor II

Thank you RaktimR_11​ for reply.

I was hardware issue with crystal which is resolved now and wifi is working.

0 Likes