On 11-03-01 02:30 PM, Mathias Kriebel wrote:
> I have find out how to solve one of the problems. To avoid the MMC get
> corrupted with every 'suspend' it is necessary
> to enable CONFIG_MMC_UNSAFE_RESUME in the kernel config.
Ah, that's a trick I wasn't aware of. Glad you found it.
The kernel output looks much cleaner now as well.
> The current consumption is now falling to ~242mA when sleeping.
That still seems awfully high. If you had a cell phone draw that much,
the battery wouldn't last. I'm pretty sure you can get an Atom laptop
down into the 20-50mA range, so there is still a ways to go.
I wonder if there are drivers you didn't build into the kernel that are
turned on. For example, assuming you didn't build wireless, could the
chip be running and completely ignorant of power modes? That sort of thing.
> root@...:/# cat /debug/pm_debug/count
> usbhost_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1
> sgx_pwrdm (OFF),OFF:1,RET:0,INA:0,ON:1
> per_pwrdm (ON),OFF:773,RET:256,INA:0,ON:1030
> dss_pwrdm (ON),OFF:0,RET:4,INA:0,ON:5
> cam_pwrdm (OFF),OFF:2,RET:2,INA:0,ON:1
> core_pwrdm (ON),OFF:0,RET:0,INA:0,ON:1
> neon_pwrdm (ON),OFF:1003,RET:13,INA:89,ON:1106
> mpu_pwrdm (ON),OFF:1003,RET:13,INA:89,ON:1106
> iva2_pwrdm (OFF),OFF:2,RET:2,INA:0,ON:1
> per_clkdm->per_pwrdm (9)
> usbhost_clkdm->usbhost_pwrdm (3)
> cam_clkdm->cam_pwrdm (0)
> dss_clkdm->dss_pwrdm (3)
> core_l4_clkdm->core_pwrdm (15)
> core_l3_clkdm->core_pwrdm (5)
> d2d_clkdm->core_pwrdm (0)
> sgx_clkdm->sgx_pwrdm (0)
> iva2_clkdm->iva2_pwrdm (0)
> neon_clkdm->neon_pwrdm (0)
> mpu_clkdm->mpu_pwrdm (0)
> virt_opp_clkdm->wkup_pwrdm (0)
> prm_clkdm->wkup_pwrdm (10)
> cm_clkdm->core_pwrdm (4)
That's really neat output. Again, I don't see a mention of the
wireless/bluetooth, unless it's under a cryptic name of some sort.
> Somebody has an idea about where else I should look to disable these
> thing on sleep mode?
In theory they should just suspend if they're listed there, I would think.