IP Library Granted Patent US 9,798,378
Granted Patent B2
US 9,798,378 · App. 14/339,861 · Granted Oct 24, 2017

Apparatus and method for awakening a primary processor out of sleep mode

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,798,378
App. No.
14/339,861
Granted
Oct 24, 2017
Kind
B2
Abstract

One disclosed method includes communicating with a kernel running on a primary processor, by a second processor, in response to detection of a state change; performing a hardware operation, in response to the state change, using the kernel without waking user space on the primary processor, where the user space remains suspended; and resuming a sleep mode of the primary processor by suspending the kernel after the hardware operation is completed. One example of a hardware operation is modification of display data on a touchscreen display. The method of operation may perform the hardware operation using the kernel without waking hardware drivers other than a hardware driver related to the hardware operation.

Claims (72)

1. A method comprising:

responsive to detection of a state change by a secondary processor of an electronic device:

sending, by the secondary processor, a wake command to a primary processor of the electronic device to activate a kernel of the primary processor without activating a user space of the primary processor; and

while the user space of the primary processor is suspended, performing, by the secondary processor, a hardware operation, wherein the secondary processor performs the hardware operation at least by accessing the kernel of the primary processor and substituting for the user space of the primary processor; and

after performing the hardware operation, causing the primary processor to resume a sleep mode, such that the kernel of the primary processor is suspended.

2. The method of claim 1 , further comprising:

performing the hardware operation using the kernel without waking hardware drivers other than a hardware driver related to the hardware operation.

3. The method of claim 1 , wherein detection of the state change by the secondary processor comprises:

detecting a user input by the secondary processor.

4. The method of claim 1 , wherein detection of a state change by the secondary processor comprises:

detecting a user input to a touchscreen display, the user input selecting a notification from a plurality of notifications.

5. The method of claim 4 , wherein performing the hardware operation comprises:

modifying display data on the touchscreen display, the display data related to the selected notification.

6. A method comprising:

responsive to detection of a state change by a secondary processor of an electronic device, waking a primary processor of the electronic device from a sleep mode;

while preventing the primary processor from activating a user space of the primary processor, performing a hardware operation on a hardware component peripheral to the primary processor, the secondary processor accessing a kernel of the primary processor and substituting for the user space of the primary processor in performing the hardware operation on the hardware component; and

after performing the hardware operation on the hardware component, causing the primary processor to resume the sleep mode, such that the kernel of the primary processor is suspended.

7. The method of claim 6 , wherein accessing the kernel of the primary processor comprises:

accessing only hardware drivers of the kernel related to the hardware operation while other hardware drivers of the kernel remain inactivated.

8. The method of claim 6 , wherein detection of the state change by the secondary processor comprises:

detecting a user input by the secondary processor.

9. The method of claim 6 , wherein detection of the state change by the secondary processor comprises:

detecting a user input to a touchscreen display, the user input selecting a notification from a plurality of notifications.

10. The method of claim 9 , wherein performing the hardware operation comprises:

modifying display data on the touchscreen display, the display data related to the selected notification.

11. An apparatus comprising:

a primary processor operative to run a kernel and a user space comprising one or more applications, the primary processor having a sleep mode;

a peripheral hardware component operatively coupled to the primary processor;

a secondary processor operatively coupled to the primary processor, the secondary processor being operative to:

responsive to detecting a state change:

send a wake command to the primary processor to activate the kernel of the primary processor without activating the user space of the primary processor; and

while the user space of the primary processor is suspended, perform a hardware operation on the peripheral hardware component, wherein the secondary processor performs the hardware operation on the peripheral hardware component at least by accessing the kernel of the primary processor and substituting for the user space of the primary processor; and

after performing the hardware operation on the peripheral hardware component, cause the primary processor to resume a sleep mode, such that the kernel of the primary processor is suspended.

12. The apparatus of claim 11 , wherein the secondary processor is further operative to:

perform the hardware operation on the peripheral hardware component using the kernel without waking hardware drivers of the kernel other than a hardware driver related to the hardware operation.

13. The apparatus of claim 11 , further comprising:

a user interface, operatively coupled to the primary processor;

wherein the secondary processor is further operative to take control of the peripheral hardware component in response to a user input at the user interface, the user input being the state change.

14. The apparatus of claim 11 , wherein the peripheral hardware is a touchscreen display, and wherein the secondary processor is further operative to modify display data on the touchscreen display, the display data related to a notification.

15. An apparatus comprising:

a primary processor operative to run a kernel and a user space comprising one or more applications, the primary processor having a sleep mode;

a peripheral hardware component operatively coupled to the primary processor;

a secondary processor operatively coupled to the primary processor, the secondary processor being operative to:

responsive to detecting a state change, wake the primary processor from a sleep mode;

while preventing the primary processor from activating the user space of the primary processor, perform a hardware operation on the peripheral hardware component, the secondary processor accessing the kernel of the primary processor and substituting for the user space of the primary processor in performing the hardware operation on the peripheral hardware component; and

after performing the hardware operation on the peripheral hardware component, cause the primary processor to resume a sleep mode, such that the kernel of the primary processor is suspended.

16. The apparatus of claim 15 , wherein the secondary processor is further operative to:

access only hardware drivers of the kernel related to the hardware operation while other hardware drivers of the kernel remain inactivated.

17. The apparatus of claim 15 ,

wherein the peripheral hardware component is a touchscreen display; and

wherein the secondary processor is further operative to:

detect a user input to the touchscreen display, the user input selecting an icon associated with a notification; and

modify display data on the touchscreen display, the display data providing information related to the notification in response to the user input.

18. A method comprising:

maintaining a primary processor of an electronic device in a sleep mode;

responsive to a user input received at a touchscreen display, receiving, by the primary processor and from a secondary processor of the electronic device, a wake command;

determining, based on the wake command, to perform a partial resume of the primary processor and activating only a kernel of the primary processor while suppressing activation of a user space of the primary processor;

handing control of the touchscreen display from the primary processor to the secondary processor;

while the user space of the primary processor is suspended, performing, by the secondary processor, a draw operation on the touchscreen display, wherein the secondary processor performs the draw operation at least by accessing the kernel of the primary processor and substituting for the user space of the primary processor, the draw operation displaying information in response to the user input; and

resuming the sleep mode by suspending the kernel on the primary processor after completion of the draw operation.

19. The method of claim 18 , further comprising:

responsive to the user input selecting a notification icon displayed on the touchscreen display, displaying information on the touchscreen display related to a notification in response to the user input being selection of a notification icon displayed on the touchscreen display.

20. An apparatus comprising:

a primary processor operative to run a kernel and a user space comprising one or more applications, the primary processor having a sleep mode;

a touchscreen display operatively coupled to the primary processor;

a secondary processor operatively coupled to the primary processor, the secondary processor being operative to:

responsive to a user input received at the touchscreen display, provide a wake command to the primary processor, the wake command facilitating a partial resume of the kernel of the primary processor while the user space of the primary processor remains suspended;

while the user space of the primary processor is suspended, perform a draw operation on the touchscreen display, wherein the secondary processor performs the draw operation at least by accessing the kernel of the primary processor and substituting for the user space of the primary processor, the draw operation displaying information in response to the user input.

21. The apparatus of claim 20 , wherein the primary processor is operative to:

determine, based on the wake command, to perform the partial resume and activate only the kernel of the primary processor while suppressing activation of the user space of the primary processor;

hand control of the touchscreen display to the secondary processor; and

resume the sleep mode by suspending the kernel of the primary processor after completion of the draw operation.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2026
From: GOOGLE TECHNOLOGY HOLDINGS LLC
To: BLACKBERRY LIMITED
Reel/Frame 075465/0894 →
CORRECTIVE ASSIGNMENT TO CORRECT THE FIRST INVENTOR NAME PREVIOUSLY RECORDED AT REEL: 033384 FRAME: 0613. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Nov 14, 2017
From: FLOWERS, CHRISTIAN L.; DEBATES, SCOTT; CONNELL, NATHAN M; STANDISH, GEORGE B; SUTTLES, JARED S; SWANTEK, JOSEPH H
To: MOTOROLA MOBILITY LLC
Reel/Frame 044707/0180 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2014
From: MOTOROLA MOBILITY LLC
To: GOOGLE TECHNOLOGY HOLDINGS LLC
Reel/Frame 034227/0095 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2014
From: FLOWERS, CHRISTAN L; DEBATES, SCOTT; CONNELL, NATHAN M; STANDISH, GEORGE B; SUTTLES, JARED S; SWANTEK, JOSEPH H
To: MOTOROLA MOBILITY LLC
Reel/Frame 033384/0613 →