[Letux-kernel] MIPS: CI20: DTS: Add IW8103 Wifi + bluetooth

H. Nikolaus Schaller hns at goldelico.com
Sun Dec 15 13:39:42 CET 2019


Hi Alexandre,

> Am 15.12.2019 um 09:53 schrieb Alexandre GRIVEAUX <agriveaux at deutnet.info>:
> 
> On Tue, Dec 10, 2019 at 12:28:01PM +0100, H. Nikolaus Schaller wrote:
>> Hi Alexandre,
> Hi Nikolaus,
> 
>> I have seen your patch in v5.5-rc1 and now I am
>> trying to make it work.
>> 
>> I have added
>> 
>> CONFIG_BT_HCIUART_SERDEV=y
>> CONFIG_BT_HCIUART_BCM=y
>> CONFIG_SERIAL_DEV_BUS=m
>> 
>> to my defconfig and the driver for serdev and bluetooth
>> seems to be loaded:
>> 
>> root at letux:~# lsmod
>> Module                  Size  Used by
>> hci_uart               32259  3
>> btbcm                   8796  1 hci_uart
>> serdev                 10315  1 hci_uart
>> bluetooth             366991  11 hci_uart,btbcm
>> ecdh_generic            3419  1 bluetooth
>> ecc                    20886  1 ecdh_generic
>> g_ether                 5373  0
>> usb_f_rndis            17648  1 g_ether
>> u_ether                14794  2 g_ether,usb_f_rndis
>> libcomposite           48158  2 g_ether,usb_f_rndis
>> configfs               33740  3 usb_f_rndis,libcomposite
>> drm_kms_helper        190773  0
>> cfbfillrect             3316  1 drm_kms_helper
>> syscopyarea             2754  1 drm_kms_helper
>> cfbimgblt               2140  1 drm_kms_helper
>> sysfillrect             3338  1 drm_kms_helper
>> sysimgblt               2140  1 drm_kms_helper
>> fb_sys_fops             1803  1 drm_kms_helper
>> cfbcopyarea             2786  1 drm_kms_helper
>> drm                   481117  1 drm_kms_helper
>> drm_panel_orientation_quirks      942  1 drm
>> gpio_ir_recv            2798  0
>> dm9000                 19193  0
>> mii                     7162  1 dm9000
>> ipv6                  399467  16
>> autofs4                28427  9
>> root at letux:~#
>> 
>> But there is no activity (not even a warning
>> that firmware download fails) from Bluetooth.
>> 
>> brcmfmac for WiFi is not automatically loaded.
>> Maybe because the SDIO device is not found.
>> 
>> What should I do to make both working?
> 
> At this time I have some difficulties with the WiFi/Bt module power
> supply, that why it's no enabled on ci20_defconfig because it's wont work.

Ah, I see. So this means the chip is not powered up?

What do you think is the reason? A problem in the device tree or in the regulator driver? Or the wrong GPIO?

WiFi_VBAT seems to be controlled by a WLAN_PW_EN GPIO.
WL_REG_ON, BT_REG_ON, BT_RST_N are three more GPIOs to control power (likely inside the module).

And it needs a 32kHz clock. It appears as if there are some test points to look at with oscilloscope, but I seem not to have a placement plan.

So I think to power up WLAN it needs to:
* activate WLAN_PW_EN (DMIC_IN/PB19) and WL_REG_ON (PF7)?
* BT needs to activate WLAN_PW_EN (DMIC_IN/PB19) and BT_REG_ON (PF4) and deactivate BT_RST_N (PG8)?

How does the 3.18 kernel do it in device tree?

> 
>> BR and thanks,
>> Nikolaus
>> 
>> 
>> PS: I have a strange error during boot which
>> may also be the reason of failure (no interrupt = no
>> working interface):
>> 
>> [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
>> [    0.000000] NR_IRQS: 222
>> [    0.000000] irq: :interrupt-controller at 10001000 didn't like hwirq-0x0 to VIRQ8 mapping (rc=-19)
>> [    0.000000] irq: :interrupt-controller at 10001000 didn't like hwirq-0x1 to VIRQ9 mapping (rc=-19)
>> [    0.000000] irq: :interrupt-controller at 10001000 didn't like hwirq-0x2 to VIRQ10 mapping (rc=-19)
>> [    0.000000] irq: :interrupt-controller at 10001000 didn't like hwirq-0x3 to VIRQ11 mapping (rc=-19)
>> ...
> Seem more related to I2C, but I doesn't have this problem at this
> time,
> I need more details.

I have to run another test with v5.5-rc2. Maybe it disappears :)

Then I can help testing and finding issues.

BR and thanks,
Nikolaus



More information about the Letux-kernel mailing list