mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2026-01-05 14:31:31 +00:00
349cc5da790266f49bfe3e5e4cadf702d7e65b04
Cr50 on x86 will run normally enter deep sleep and then wake up immediately. When the AP turns off it stops pulling up the i2cs signals. When cr50 enters deep sleep it sees that the i2cs signals are low then wakes up immediately. After resuming cr50 will remain awake for 20 then enter deep sleep. At this point it will remain asleep. This change disables i2cs_sda and scl as wake pins when entering deep sleep. Just like ARM these tpm signals are not in use when the device is off. We have other signals to detect when the system leaves s3 or s5, so we should rely on those. We need this change because we want cr50 to fully enter deep sleep when we run suspend resume tests. Right now the AP does not sleep long enough for cr50 to enter the second deep sleep. BUG=none BRANCH=none TEST=turn off the AP and make sure cr50 doesn't resume from deep sleep immediately. run suspend_stress_test -c 5000 and verify cr50 enters deep sleep and resumes correctly. verify dioa9 and dioa1 are enabled as wake pins on resume Change-Id: Ided8b2b7d5455650bca1e8d781063d092fb74c43 Signed-off-by: Mary Ruthven <mruthven@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/443389
For an overview of the Embedded Controller firmware, refer to http://www.chromium.org/chromium-os/2014-firmware-summit For instructions on building from source, refer to http://www.chromium.org/chromium-os/ec-development/getting-started-building-ec-images-quickly
Description
Languages
C
64.7%
Lasso
20.7%
ASL
3.6%
JavaScript
3.2%
C#
2.9%
Other
4.6%