#11964 HIGH 12.1.0: xo-1/1.5: EC "general purpose" wakeups are broken in 12.1.0
Zarro Boogs per Child
bugtracker at laptop.org
Thu Jun 21 14:09:42 EDT 2012
#11964: xo-1/1.5: EC "general purpose" wakeups are broken in 12.1.0
--------------------+-------------------------------------------------------
Reporter: pgf | Owner: pgf
Type: defect | Status: new
Priority: high | Milestone: 12.1.0
Component: kernel | Version: Development source as of this date
Keywords: | Next_action: code
Verified: 0 | Deployment_affected:
Blockedby: | Blocking:
--------------------+-------------------------------------------------------
there's a facility in the EC to allow the kernel to schedule wakeup.
runin uses this facility.
there are two issues:
- runin refers to an old path (/sys/power/ec) rather than the current
correct location (/sys/kernel/debug/olpc-ec/cmd). however, fixing this is
moot, because of the second issue:
- in order for the wakeup to succeed, the EC's wakeup mask must have the
correct bit (0x100) set to enable that wakeup. this bit is not set by
default. in theory, runin could use a second command to set the mask,
except: the kernel driver for the EC normally sets the EC mask to all-
enabled while the system is running, and sets the "current wakeup mask"
when we're suspending. runin can only affect the EC's current all-enabled
mask (which would be a no-op) -- it has no access to the "correct" mask
that the kernel will set at suspend time.
i believe the latter problem doesn't exist in the ARM kernels, because the
driver there has a different history. these drivers need to be merged at
some point. andres has a set of unified EC code that we'd like to commit
soon.
the priority of this might be low, since this should be an optional
facility, but for #11867. we don't always wake with the rtc, so being
able to wake with the EC might be very useful.
--
Ticket URL: <http://dev.laptop.org/ticket/11964>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list