This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux/WL1837MOD: Device tree entry for WL1837 on Linux 4.9

Part Number: WL1837MOD
Other Parts Discussed in Thread: WL1837

Tool/software: Linux

Hello,
When I use fixed regulator for WL_EN in device tree, for Linux 4.9 on Zynq Ultrascale, I get interrupt timeout error and driver cannot toggle WL_EN. However SDIO powerseq works fine. The only concern I have is when I want to disable wlan0 from linux, I see narrow high pulses on WL_EN, but everything works as expected. (no errors, I can get IP and transfer files ...)
Is this configuration correct or expected on Linux 4.9 (to use powerseq to toggle WL_EN) or is this related to SDIO drivers/IP in our MP SOC not linux? 
Thanks
  • Hi,

    Can you share the device tree file for the board you are using?
    I mainly want to see how the wlcore section is set with respect to the interrupt pin.

    BR,
    Eyal
  • Hi Eyal, thanks for quick reply.

    &sdhci1 {
    status = "okay";
    bus-width = <0x4>;
    ti,non-removable;
    disable-wp;
    cap-power-off-card;
    broken-cd;
    keep-power-in-suspend;
    mmc-pwrseq = <&sdio_pwrseq>;
    vqmmc-supply = <&wlan_en_reg>;
    #address-cells = <1>;
    #size-cells = <0>;
    // wilink module configuration
    wlcore: wlcore@0 {
    compatible = "ti,wl1837";
    reg = <2>;
    interrupt-parent = <&gpio>;
    interrupts = <44 1>;
    ref-clock-frequency = <38400000>;
    };
    };

  • Hi,

    What is the error you are getting when trying the following sequence?:

    cat /proc/interrupts | grep wl18xx
    ifconfig wlan0 up
    iw wlan0 scan
    ifconfig wlan0 down
    ifconfig wlan0 up

    Please paste the relevant console log showing this.
    Can you please also attach the full .dts file that includes also the fixed regulator settings (wlan_en_reg)?

    Best Regards,
    Eyal