SWRU576 January 2021 WL1801MOD , WL1805MOD , WL1807MOD , WL1831MOD , WL1835MOD , WL1837MOD
First, load the wlcore module, start the station and connect to an AP with the following commands:
cd /usr/share/wl18xx
./load_wlcore.sh
./sta_start.sh
./sta_connect-ex.sh OpenSSID
To verify if the EVM is connected use the following command, which will output the AP settings and RSSI:
iw wlan0 link
The "Suspend" mode can be entered by evoking:
echo mem > /sys/power/state
The expected results are as shown below and the EVM screen turning off:
[ 344.900146] PM: Syncing filesystems ... done.
[ 347.304138] Freezing user space processes ... (elapsed 0.01 seconds) done.
[ 347.324859] Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
[ 347.344879] Suspending console(s) (use no_console_suspend to debug)
[ 347.359039] wl12xx: down
[ 347.492248] PM: suspend of devices complete after 139.892 msecs
[ 347.494049] PM: late suspend of devices complete after 1.708 msecs
[ 354.081787] GFX domain entered low power state
[ 354.081848] Successfully transitioned all domains to low power state
[ 1599.585723] PM: Syncing filesystems ... done.
[ 1602.515808] Freezing user space processes ... (elapsed 0.01 seconds) done.
[ 1602.539642] Freezing remaining freezable tasks ... (elapsed 0.01 seconds) done.
[ 1602.559600] Suspending console(s) (use no_console_suspend to debug)
[ 1602.567535] wl12xx: down
[ 1602.706909] PM: suspend of devices complete after 139.770 msecs
[ 1602.708557] PM: late suspend of devices complete after 1.556 msecs
[ 1634.825073] GFX domain entered low power state
After hitting the terminal console - in order to resume from suspend mode, the EVM screen will be active again, following the logs below:
[ 354.290771] PM: early resume of devices complete after 208.465 msecs
[ 354.606018] net eth0: CPSW phy found : id is : 0x4dd074
[ 354.610931] wl12xx: state: 0
[ 355.069427] wl12xx: PHY firmware version: Rev 8.2.0.0.245
[ 355.069488] wl12xx: firmware booted (Rev 8.9.0.0.86)
[ 355.130493] wl12xx: Association completed.
[ 355.153411] PM: resume of devices complete after 861.928 msecs
[ 355.216430] Restarting tasks ... done.
After a suspend or after some idle time, use the power domain transition stats to check that transitions to off-mode are actually happening:
root@am335x-evm:~# cat /tmp/pm_debug/count
[ 611.886413] pwrdm state mismatch(cefuse_pwrdm) 3 != 0
cefuse_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1,RET-LOGIC-OFF:0
mpu_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0,RET-MEMBANK2-OFF:0,RET-MEMBANK3-OFF:0
per_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1,RET-LOGIC-OFF:7,RET-MEMBANK1-OFF:0,RET-MEMBANK2-OFF:0,RET-MEMBANK3-OFF:0
rtc_pwrdm (OFF),OFF:1,RET:0,INA:0,ON:0,RET-LOGIC-OFF:0
gfx_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1,RET-LOGIC-OFF:0,RET-MEMBANK1-OFF:0
l4_cefuse_clkdm->cefuse_pwrdm (0)
gfx_l4ls_gfx_clkdm->gfx_pwrdm (0)
gfx_l3_clkdm->gfx_pwrdm (1)
l4_rtc_clkdm->rtc_pwrdm (1)
mpu_clkdm->mpu_pwrdm (1)
l4_wkup_aon_clkdm->wkup_pwrdm (3)
l3_aon_clkdm->wkup_pwrdm (1)
l4_wkup_clkdm->wkup_pwrdm (5)
clk_24mhz_clkdm->per_pwrdm (1)
lcdc_clkdm->per_pwrdm (1)
cpsw_125mhz_clkdm->per_pwrdm (2)
pruss_ocp_clkdm->per_pwrdm (0)
ocpwp_l3_clkdm->per_pwrdm (0)
l4hs_clkdm->per_pwrdm (1)
l3_clkdm->per_pwrdm (10)
l4fw_clkdm->per_pwrdm (2)
l3s_clkdm->per_pwrdm (4)
l4ls_clkdm->per_pwrdm (19)
The counter that will advance each suspend resume cycle is: per_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1,RET-LOGIC-OFF:7,RET-MEMBANK1-OFF:0,RET-MEMBANK2-OFF:0,RET-MEMBANK3-OFF:0.