Unable to suspend the system when using AW-CM276NF wi-fi/Bluetooth module

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Unable to suspend the system when using AW-CM276NF wi-fi/Bluetooth module

1,377件の閲覧回数
arka
Contributor III

We are unable to suspend the system (NXP IMX8MP based custom board) using "systemctl suspend" command. We are using AW-CM276NF wifi/bluetooth module through the SDIO/UART interface. When we run the "systemctl suspend" command we get the following error as log

"477.676334] PM: suspend entry (deep)
[  477.680187] Filesystems sync: 0.000 seconds
[  477.686095] Freezing user space processes
[  477.691633] Freezing user space processes completed (elapsed 0.001 seconds)
[  477.698639] OOM killer disabled.
[  477.701884] Freezing remaining freezable tasks
[  477.707610] Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
[  477.715028] printk: Suspending console(s) (use no_console_suspend to debug)
[  477.723162] mmc0:0001:1: cannot remain alive while host is suspended
[  477.723172] wlan_sdio mmc0:0001:1: PM: dpm_run_callback(): pm_generic_suspend+0x0/0x44 returns -38
[  477.723190] wlan_sdio mmc0:0001:1: PM: failed to suspend async: error -38
[  477.723202] PM: Some devices failed to suspend, or early wake event detected
[  477.724203] caam 30900000.crypto: registering rng-caam
[  477.725823] PM: resume devices took 0.004 seconds
[  477.764984] OOM killer enabled.
[  477.768125] Restarting tasks ... done.
[  477.772726] random: crng reseeded on system resumption
[  477.777919] PM: suspend exit
[  477.780952] PM: suspend entry (s2idle)
[  477.784815] Filesystems sync: 0.000 seconds
[  477.789476] Freezing user space processes
[  477.794921] Freezing user space processes completed (elapsed 0.001 seconds)
[  477.801923] OOM killer disabled.
[  477.805163] Freezing remaining freezable tasks
[  477.810877] Freezing remaining freezable tasks completed (elapsed 0.001 seconds)
[  477.818289] printk: Suspending console(s) (use no_console_suspend to debug)
[  477.826467] mmc0:0001:1: cannot remain alive while host is suspended
[  477.826479] wlan_sdio mmc0:0001:1: PM: dpm_run_callback(): pm_generic_suspend+0x0/0x44 returns -38
[  477.826498] wlan_sdio mmc0:0001:1: PM: failed to suspend async: error -38
[  477.826509] PM: Some devices failed to suspend, or early wake event detected
[  477.828234] caam 30900000.crypto: registering rng-caam
[  477.829518] PM: resume devices took 0.004 seconds
[  477.869024] OOM killer enabled.
[  477.872165] Restarting tasks ... done.
[  477.877021] random: crng reseeded on system resumption
[  477.882211] PM: suspend exit". 

So, what can be done to fix this issue?

0 件の賞賛
返信
3 返答(返信)

1,352件の閲覧回数
Chavira
NXP TechSupport
NXP TechSupport

Hi @arka!

Thank you for contacting NXP Support!

 

What BSP version that are you using?

 

I tried in the iMX8MP EVK with the module NXP SDIO 88W8997 (tested with Murata LBEE5XV1YM), the suspend and wake up are woking properly.

 

I tried with iMX8MN EVK with the module NXP 88W8987 (tested with AzureWave AW-CM358SM), the suspend and wake up are woking properly.

 

I recommend to check your device tree and your connections to the wifi module, you can take the iMX8MN and iMX8MP EVKs as a reference.

 

https://www.nxp.com/design/design-center/development-boards-and-designs/i-mx-evaluation-and-developm...

 

https://www.nxp.com/design/design-center/development-boards-and-designs/i-mx-evaluation-and-developm...

 

Best Regards!

Chavira

0 件の賞賛
返信

1,335件の閲覧回数
arka
Contributor III

Hi ,
Below i have added the device tree for wifi .

&usdhc1 {
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_usdhc1>;
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
bus-width = <4>;
non-removable;
status = "okay";
};


and we are using sdhci-esdhc-imx.c as the wifi driver .

is there any changes in my device tree ?

0 件の賞賛
返信

1,319件の閲覧回数
Chavira
NXP TechSupport
NXP TechSupport

Hi @arka!

I recommend to use the next:

 

&usdhc1 {
	pinctrl-names = "default", "state_100mhz", "state_200mhz";
	pinctrl-0 = <&pinctrl_usdhc1>;
	pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
	pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
	keep-power-in-suspend;
	non-removable;
	wakeup-source;
	mmc-pwrseq = <&usdhc1_pwrseq>;
	vmmc-supply = <&reg_usdhc1_vmmc>;
	fsl,sdio-async-interrupt-enabled;
	status = "okay";

	wifi_wake_host {
		compatible = "nxp,wifi-wake-host";
		interrupt-parent = <&gpio2>;
		interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
		interrupt-names = "host-wake";
	};
}

 

You can see the full device tree in the link below:

https://github.com/nxp-imx/linux-imx/blob/lf-6.1.y/arch/arm64/boot/dts/freescale/imx8mp-evk-usdhc1-m...

 

Best Regards!

Chavira

0 件の賞賛
返信