linux 4.1.15-2.1.0-ga wifi module ap6335 suspend problem

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

linux 4.1.15-2.1.0-ga wifi module ap6335 suspend problem

1,617 Views
mrleo
Contributor IV

Hi,all

     ap6335 in kernel linux 4.1.15-2.1.0-ga work ok  on my imx6qp board!  wifi module is built in kernel, but system sleep will not ok.

   I test system sleep mode,when I enter below method:

~# echo standby > /sys/power/state
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.001 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Suspending console(s) (use no_console_suspend to debug)
dpm_run_callback(): pm_generic_suspend+0x0/0x30 returns -22
PM: Device mmc2:0001:2 failed to suspend: error -22
PM: Some devices failed to suspend, or early wake event detected
PM: resume of devices complete after 0.078 msecs
PM: resume devices took 0.000 seconds
Restarting tasks ... done.

 

dts configure:

regulators {
        wlreg_on: fixedregulator@100 {
            compatible = "regulator-fixed";
            regulator-min-microvolt = <5000000>;
            regulator-max-microvolt = <5000000>;
            regulator-name = "wlreg_on";
            gpio = <&gpio7 0 0>;
            startup-delay-us = <100>;
            enable-active-high;
        };
        
    };

 

    bcmdhd_wlan_0: bcmdhd_wlan@0 {
        compatible = "android,bcmdhd_wlan";
        //pinctrl-names = "default";
        //pinctrl-0 =<&pinctrl_wifi_ctrl>;
        gpios = <&gpio7 1 0>;
        wlreg_on-supply = <&wlreg_on>;
    };

 

};

 

pinctrl_wifi: wifigrp {
            fsl,pins = <
                MX6QDL_PAD_SD3_CMD__SD3_CMD        0x17071
                MX6QDL_PAD_SD3_CLK__SD3_CLK        0x10071
                MX6QDL_PAD_SD3_DAT0__SD3_DATA0        0x17071
                MX6QDL_PAD_SD3_DAT1__SD3_DATA1        0x17071
                MX6QDL_PAD_SD3_DAT2__SD3_DATA2        0x17071
                MX6QDL_PAD_SD3_DAT3__SD3_DATA3        0x17071
                MX6QDL_PAD_SD3_DAT5__GPIO7_IO00        0x13069  // WL_REG_ON
                MX6QDL_PAD_SD3_DAT4__GPIO7_IO01        0x80000000    // WL_HOST_WAKE
            >;
        };

 

&usdhc3 {
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_wifi>;
    bus-width = <4>;
    no-1-8-v;
    non-removable;
    cd-post;
    pm-ignore-notify;
    wifi-host;
    status = "okay";
};

 

If I  remove the wifi module, system sleep  is ok.

 

Anyone can help me to solve this problem?

Original Attachment has been moved to: kernel.log.zip

0 Kudos
Reply
2 Replies

1,011 Views
mrleo
Contributor IV

Hi Bio_TICFSL,

   Thank you for your answer.

    I modify the dts file,add configure parameter  keep-power-in-suspend,like this:

   &usdhc3 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_wifi>;
bus-width = <4>;
no-1-8-v;
non-removable;
cd-post;
pm-ignore-notify;
keep-power-in-suspend;
wifi-host;
status = "okay";
};

~# echo standby > /sys/power/state
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.003 seconds) done.
Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
Suspending console(s) (use no_console_suspend to debug)
PM: suspend of devices complete after 67.106 msecs
PM: suspend devices took 0.070 seconds
PM: late suspend of devices complete after 0.944 msecs
PM: noirq suspend of devices complete after 0.956 msecs
Disabling non-boot CPUs ...
CPU1: shutdown
CPU2: shutdown
CPU3: shutdown
Enabling non-boot CPUs ...
CPU1 is up
CPU2 is up
CPU3 is up
PM: noirq resume of devices complete after 0.585 msecs
PM: early resume of devices complete after 0.811 msecs
PM: resume of devices complete after 138.359 msecs
PM: resume devices took 0.140 seconds
Restarting tasks ... done.

now have the problem:standby later,resume the system at once.

0 Kudos
Reply

1,011 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

This thread migth be helpful:

https://community.nxp.com/message/472144 

0 Kudos
Reply