IP Library › Granted Patent US 11,176,254
Granted Patent B2
US 11,176,254 · App. 16/502,461 · Granted Nov 16, 2021

Automatic firmware rollback

Inventors: Stefan Singer (Vaterstetten, DE); Osvaldo Israel Romero Cortez (Munich, DE); Guillaume Perret (Boulogne-Billancourt, FR)
Assignee: NXP USA, Inc.
G06F21/572G06F9/4451G06F9/5061G06F11/0757G06F11/1433G06F8/64G06F8/654G06F8/71G06F11/0739G06F11/1417G06F21/72G06F21/74
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 11,176,254
App. No.
16/502,461
Granted
Nov 16, 2021
Kind
B2
Abstract

Disclosed are various embodiments for implementing automatic firmware rollbacks after a configured number of attempts to execute the latest firmware update associated with an electronic computing unit have occurred. In a computing device, such as an electronic computing unit, a watchdog automatically generates a system reset in response to a software fault. A reset counter is configured to count a number of system resets generated by the watchdog. In response to the occurrence of the watchdog, a configurable threshold value associated with a threshold data record is compared with the value associated with the reset counter. In response to a determination that the threshold value associated with the threshold data record is greater than or equal to the value associated with the reset counter, a rollback application is executed such that the rollback application performs a swap of a first version of a firmware with a second version of the firmware.

Claims (44)

1. A method for managing firmware at a device having an electronic control unit, comprising:

receiving a user input indicating a value of a threshold, the threshold corresponding to a number of watchdog reset operations;

generating, by a watchdog reset, a system reset associated with the electronic control unit based on a software fault; and

executing a rollback application, based on a watchdog reset counter satisfying the threshold, by swapping a first version of a firmware with a second version of the firmware and disabling access to the first version of the firmware.

2. The method of claim 1 , further comprising:

tracking a number of system resets associated with the electronic control unit using the watchdog reset counter, each system reset issued by a watchdog reset operation.

3. The method of claim 1 , further comprising:

adjusting a value of the watchdog reset counter based on the watchdog reset operation.

4. The method of claim 1 , further comprising:

storing a value associated with the watchdog reset counter in a local memory associated with the device.

5. The method of claim 1 , further comprising:

refraining from adjusting the watchdog reset counter based on an absence of a watchdog reset operation.

6. The method of claim 1 , wherein executing the rollback application further comprises:

sending an over-the-air request for the second version of the firmware; and obtaining the second version of the firmware from a repository of valid previous versions of the firmware, wherein the repository is external to the electronic control unit.

7. The method of claim 1 , wherein executing the rollback application further comprises:

performing a partition swap between a first partition associated with the first version of the firmware and a second partition associated with the second version of the firmware.

8. The method of claim 7 , further comprising:

generating a notification including an indication of an occurrence of the partition swap.

9. An apparatus for managing firmware, comprising:

an electronic control unit; and

memory coupled with the electronic control unit, the electronic control unit configured to:

receive a user input indicating a value of a threshold, the threshold corresponding to a number of watchdog reset operations;

generate, by a watchdog reset, a system reset associated with the electronic control unit based on a software fault; and

perform a partition swap of a first version of a firmware with a second version of the firmware and disable access to the first version of the firmware based on a watchdog reset counter satisfying the threshold.

10. The apparatus of claim 9 , wherein the electronic control unit is further configured to:

track a number of system resets associated with the electronic control unit using the watchdog reset counter, each system reset issued by a watchdog reset operation.

11. The apparatus of claim 9 , wherein the electronic control unit is further configured to:

adjust a value of the watchdog reset counter based on a watchdog reset operation.

12. The apparatus of claim 9 , wherein the electronic control unit is further configured to:

generate a notification in response to an occurrence of the partition swap.

13. The apparatus of claim 12 , wherein the notification comprises an indication of the occurrence of the partition swap.

14. The apparatus of claim 13 , wherein the electronic control unit is further configured to:

store a value associated with the watchdog reset counter in a local memory associated with the apparatus.

15. A device comprising:

an electronic control unit; and

memory coupled with the electronic control unit, the electronic control unit configured to:

receive a user input indicating a value of a threshold for executing a rollback application, the threshold corresponding to a number of watchdog reset operations;

generate, by a watchdog reset, a system reset associated with the electronic control unit of the device in response to a software fault and a watchdog reset counter;

retrieve from a remote database a second version of the firmware based on determining that the second version of the firmware is unavailable at the device; and

execute the rollback application to swap between a first version of a firmware and the second version of the firmware and disable access to the first version of the firmware.

16. The device of claim 15 , wherein the electronic control unit is further configured to:

adjust a value of threshold based on a watchdog reset operation.

17. The device of claim 15 , wherein the electronic control unit is further configured to:

erase an indicator pointing to an active block of memory; and configure the indicator to point to a passive block of memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 3, 2019
From: SINGER, STEFAN; ROMERO CORTEZ, OSVALDO ISRAEL; PERRET, GUILLAUME
To: NXP USA, INC.
Reel/Frame 049663/0547 →
Priority Claims (1)
EP 19305650 · May 23, 2019 · regional
Continuity (1)
Related Publication 20200372157A1 · Nov 26, 2020