Method for upgrading firmware, electronic device and computer readable medium

By packaging non-system firmware into separate sub-firmware upgrade packages and placing them under the system firmware path, and combining them with the system firmware upgrade packages, the problem of low compatibility in non-system firmware upgrades is solved, and cross-system compatible upgrades are achieved.

CN114895939BActive Publication Date: 2025-11-07FUZHOU ROCKCHIP SEMICON
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210505991.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-10
Publication Date
2025-11-07
Estimated Expiration
2042-05-10

AI Technical Summary

Technical Problem

In existing technologies, there are fundamental differences between the upgrade methods of non-system firmware and system firmware, resulting in low compatibility. Furthermore, they are usually maintained by different teams, making effective upgrades difficult.

Method used

The non-system firmware to be upgraded is stored in a separate sub-firmware upgrade package and placed in the preset path of the system firmware. A main upgrade package containing the system firmware is then created. By determining whether the system where the main upgrade package is located is a dual-partition system, different upgrade methods are used to upgrade, ensuring compatibility.

Benefits of technology

It improves the compatibility of non-system firmware upgrades without requiring additional partitions, and is applicable to different types of system firmware upgrades, including A/B systems and non-A/B systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114895939B_ABST
    Figure CN114895939B_ABST
Patent Text Reader

Abstract

The application discloses a method for upgrading firmware, an electronic device and a computer readable medium. The non-system firmware to be upgraded is stored into an independent sub-firmware upgrade package, the sub-firmware upgrade package is put into a preset path of system firmware, and a main upgrade package containing the system firmware is made; it is judged whether a system where the main upgrade package is located is a dual-partition system, if yes, the main upgrade package is upgraded, and the sub-firmware upgrade package in the main upgrade package is written into an accessible path, and the sub-firmware upgrade package is upgraded. In this way, an additional partition is not needed to store the upgrade package of the non-system firmware, and the upgrading of the system firmware and the non-system firmware can be realized in the main upgrade package, and the compatibility of the non-system firmware upgrading is improved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of embedded technology, in particular to a method for upgrading firmware, an electronic device and a computer readable medium. BACKGROUND

[0002] Generally, firmware before boot and / or recovery firmware in a device startup process is called non-system firmware, including startup firmware and after firmware is called system firmware. Specifically, firmware such as kernel and rootfs of Linux system and boot, recovery, system, vendor, oem, odm of Android system are called system firmware, and firmware such as startup bootloader, trusted operating system, virtual machine and modem is called non-system firmware.

[0003] When upgrading non-system firmware such as startup bootloader, trusted operating system, virtual machine and modem of a device, since the upgrade program client in the system firmware cannot dynamically obtain the version number of the non-system firmware, the existing method is to merge the non-system firmware and the system firmware into the same firmware upgrade package for upgrading, and then use the dynamically obtainable version number in the system firmware as the name or part of the name of the firmware upgrade package. The upgrade client dynamically obtains the version number of the system firmware every interval, sends it to the upgrade server, and the upgrade server determines whether there is an updated version of firmware suitable for the device according to the version number sent by the device. If there is an updated version of firmware, the upgrade server informs the upgrade client that there is a new version of firmware available, and prompts the user whether to obtain the new firmware for upgrading by the upgrade client.

[0004] Different chip platforms and different hardware architectures will result in fundamental differences in non-system firmware, and some non-system firmware and system firmware have fundamental differences in firmware upgrade methods, and need to be upgraded by an upgrade method different from the system firmware. At the same time, in many cases, the system firmware and the non-system firmware are usually maintained by different teams, and the compatibility of the non-system firmware upgrade is low. SUMMARY

[0005] The present application provides a method for upgrading firmware, an electronic device and a computer readable medium, which can improve the compatibility of non-system firmware upgrade.

[0006] In one aspect of the present application, a method for upgrading firmware is provided. The method comprises the steps of: storing non-system firmware to be upgraded into a separate sub-firmware upgrade package, storing the sub-firmware upgrade package under a preset path of system firmware, and making a main upgrade package containing the system firmware; if the system where the main upgrade package is located is a dual-partition system, upgrading the main upgrade package and writing the sub-firmware upgrade package in the main upgrade package into an accessible path to upgrade the sub-firmware upgrade package.

[0007] In another aspect of the present application, an electronic device is provided. The electronic device comprises a memory configured to store a computer program; and a processor configured to execute the computer program to perform the method for upgrading firmware as described above.

[0008] In yet another aspect of the present application, a computer readable medium is provided. The medium stores a computer program, which is executed by a processor to implement the method for upgrading firmware as described above.

[0009] According to the present application, by storing non-system firmware to be upgraded into a separate sub-firmware upgrade package, storing the sub-firmware upgrade package under a preset path of system firmware, and making a main upgrade package containing the system firmware, no additional partition is needed to store the non-system firmware. When the system where the main upgrade package is located is a dual-partition system (A / B system), the main upgrade package is upgraded, and the sub-firmware upgrade package in the main upgrade package is written into an accessible path to upgrade the sub-firmware upgrade package. When the system where the main upgrade package is located is not an A / B system, the main upgrade package is written into an accessible path to upgrade the main upgrade package. In this way, the upgrading of system firmware and non-system firmware can be realized in the main upgrade package, and the compatibility of non-system firmware upgrading is improved. BRIEF DESCRIPTION OF DRAWINGS

[0010] Figure 1 Flow chart of the method for upgrading firmware according to an embodiment of the present application;

[0011] Figure 2 Flow chart of the specific steps of the method for upgrading firmware according to an embodiment of the present application;

[0012] Figure 3 Flow chart of the method for copying the upgrade instruction and path of the sub-firmware upgrade package to an accessible path according to an embodiment of the present application;

[0013] Figure 4 Flow chart of the method for upgrading firmware in a predetermined location of a boot communication partition according to an embodiment of the present application;

[0014] Figure 5 Block diagram of the electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0015] To describe the technical solutions of the present application in detail, the purposes and effects achieved by the present application are explained below in conjunction with the embodiments and the accompanying drawings.

[0016] In the prior art, there is a fundamental difference between the firmware upgrade methods of non-system firmware and system firmware, so the system firmware and the non-system firmware are usually maintained by different teams, and the compatibility of the non-system firmware upgrade is low.

[0017] To solve at least the above technical problems, the present disclosure provides a method for upgrading firmware. According to the present disclosure, the non-system firmware to be upgraded is stored into an independent sub-firmware upgrade package, the sub-firmware upgrade package is put into a preset path of the system firmware, and a main upgrade package containing the system firmware is made; it is judged whether the system where the main upgrade package is located is a dual-partition system (hereinafter can be referred to as A / B system), if yes, the main upgrade package is upgraded, and the sub-firmware upgrade package in the main upgrade package is written into an accessible path, and the sub-firmware upgrade package is upgraded; otherwise, the main upgrade package is written into the accessible path, and the main upgrade package is upgraded. In this way, no additional partition is needed to store the upgrade package of the non-system firmware, and the upgrade of the system firmware and the non-system firmware can be realized in the main upgrade package, improving the compatibility of the non-system firmware upgrade. The scheme of the present disclosure can be applied to the upgrade of some special non-system firmware in non-A / B systems, and can also be applied to the upgrade of some non-A / B system firmware in A / B systems.

[0018] Hereinafter, the technical scheme according to the present disclosure will be described with reference to specific embodiments and in conjunction with the accompanying drawings.

[0019] Figure 1 is a flowchart showing a method 100 for upgrading firmware according to an embodiment of the present disclosure. Referring to Figure 1 , the method 100 includes the following steps 102 to 106.

[0020] In step 102, the non-system firmware to be upgraded is stored into an independent sub-firmware upgrade package. In some embodiments, the sub-firmware upgrade package is named according to a predetermined name. In addition, the sub-firmware upgrade package is signed using a private key.

[0021] In step 104, the sub-firmware upgrade package is put into a preset path of the system firmware, and a main upgrade package containing the system firmware is made. In some embodiments, the signed sub-firmware upgrade package is put into the preset path of the system firmware, the version number of the system firmware is updated, the main upgrade package of the system firmware is made, and the main upgrade package is renamed with the version number of the system firmware. In this way, the sub-firmware upgrade package is encrypted to ensure the security of the non-system firmware upgrade.

[0022] At step 106, if the system where the main upgrade package is located is a dual-partition system (A / B system), the main upgrade package is upgraded, and the sub-firmware upgrade package in the main upgrade package is written into an accessible path to upgrade the sub-firmware upgrade package. In some embodiments, after determining whether there is a partition with a preset character suffix in the partition table, if yes, a mark indicating that the system where the main upgrade package is located is an A / B system is passed to a command line parameter, and the system where the main upgrade package is located is indicated; otherwise, a mark indicating that the system where the main upgrade package is located is not an A / B system is passed to the command line parameter. In this way, the system to be upgraded is marked, and the subsequent upgrade of the sub-firmware upgrade package is facilitated.

[0023] In some embodiments, whether there is a new version of firmware is determined based on the system firmware version number in the main upgrade package, if yes, the main upgrade package is upgraded using an A / B upgrade engine, and when the main upgrade package is successfully upgraded, the sub-firmware upgrade package is marked as not successfully upgraded in a preset storage area, and when the main upgrade package is not successfully upgraded, it is prompted that the main upgrade package fails to be upgraded. In this way, the sub-firmware upgrade package in the preset path can be further upgraded after the main upgrade package is successfully upgraded.

[0024] In some embodiments, after the main upgrade package is upgraded, a mark in a command line parameter is obtained, if the mark indicates that the system where the main upgrade package is located is an A / B system, it is checked whether the system where the main upgrade package is located is successfully upgraded, if not, after sleeping for a predetermined time, a non-system firmware upgrade service exit mark is read, if the exit mark is true, the non-system firmware upgrade service is exited, if the exit mark is false, when the number of re-inquiries does not exceed a predetermined number, it is re-inquired whether the A / B system is successfully upgraded, when the number of re-inquiries exceeds the predetermined number and the A / B system is not successfully upgraded, the non-system firmware upgrade service is exited. In this way, it is ensured that the sub-firmware upgrade package is upgraded after the main upgrade package where the sub-firmware upgrade package is located is successfully upgraded.

[0025] In some embodiments, the sub-firmware upgrade package is verified using a public key corresponding to a private key in the main upgrade package, if the verification is successful, the sub-firmware upgrade package under a preset path is copied to a preset partition accessible to a firmware upgrade mode, the path of the sub-firmware upgrade package is copied to a preset path accessible to the firmware upgrade mode, and the upgrade instruction of the sub-firmware upgrade package and the path of the sub-firmware upgrade package are written in a preset position. In this way, the sub-firmware upgrade package is copied to the path accessible to the firmware upgrade, and the subsequent upgrade of the sub-firmware upgrade package based on the upgrade instruction and the path is facilitated.

[0026] In some embodiments, the public key corresponding to the private key in the main upgrade package is used to verify the sub-firmware upgrade package. If the verification fails, the sub-firmware upgrade package is marked as having failed to upgrade. If the verification succeeds, the sub-firmware upgrade package is used to independently upgrade the non-system firmware. If the upgrade succeeds, the sub-firmware upgrade package is marked as having succeeded; if the upgrade fails, the sub-firmware upgrade package is marked as having failed to upgrade. This method enables the upgrading of sub-firmware upgrade packages and is applicable to the upgrading of any non-system firmware.

[0027] In some embodiments, the method 100 may further include: if the system where the main upgrade package resides is not a dual-partition system, then writing the main upgrade package into an accessible path and upgrading the main upgrade package. In some embodiments, the upgrade command and path of the main upgrade package are written to a preset location, the main upgrade package is upgraded based on the upgrade command, and if the upgrade is successful, the sub-firmware upgrade package is marked as unsuccessful; otherwise, a message indicating that the main upgrade package upgrade failed is displayed, and the sub-firmware upgrade package is upgraded according to information associated with the preset location. In this way, system firmware upgrades for non-A / B systems can be achieved, improving upgrade compatibility.

[0028] The following will describe, through examples, application scenarios of the firmware upgrade method according to embodiments of the present invention.

[0029] Figure 2 This is a flowchart illustrating the specific steps of a method for upgrading firmware according to an embodiment of the present invention, including steps 202 to 214.

[0030] In step 202, the non-system firmware to be upgraded is placed into a separate sub-firmware upgrade package, which is then named according to a predetermined name. The sub-firmware upgrade package is signed using the same private key as the main upgrade package. The signed sub-firmware upgrade package is then placed in the preset path of the system firmware.

[0031] In some embodiments, the sub-firmware upgrade package is named platorm_pack.zip. After upgrading the sub-firmware upgrade package, it is stored in the system firmware under the path " / vendor / platform_non_system_firmware / ".

[0032] In step 204, the system firmware version number is modified, a main upgrade package containing the system firmware is created, the created main upgrade package is named with the new system firmware version number, and placed on the firmware upgrade server.

[0033] In step 206, the device's bootloader reads the partition table, checks whether there are partitions with the suffixes a / b in the partition table, and marks them.

[0034] In some embodiments, if there is a partition with a / b suffix in the partition table, a flag is passed in the command line parameter to indicate that the current system is an A / B system, and to indicate whether the system used is the A system or the B system, otherwise a flag is passed in the command line parameter to indicate that the current system is not an A / B system.

[0035] In step 208, the boot program is started to guide the device to enter the system, and after entering the system, the firmware upgrade client and the non-system firmware upgrade service (such as non_system_update_service) are started.

[0036] In step 210, when the firmware upgrade client is running, it is queried from the firmware upgrade server according to the current system firmware version number whether there is a new version firmware available. When there is a new version firmware to be upgraded, the firmware upgrade process is triggered.

[0037] In step 2102, the non-system firmware upgrade service is first exited, and a non-system firmware upgrade service exit flag is set to true. It is queried whether the service has been exited. If it has been exited, step 2104 is executed, otherwise it is hibernated and re-queried after waiting for a predetermined time.

[0038] In step 2104, if the current system is an A / B system, A / B firmware upgrade is performed according to the main firmware upgrade package and using an A / B upgrade engine. If the A / B upgrade is successful, a flag indicating whether the sub-firmware upgrade package has been upgraded is set to false, indicating that the sub-firmware upgrade package has not been upgraded. The device is restarted and enters the upgraded system, and the non-system firmware upgrade is completed through the non-system firmware upgrade service. If the A / B upgrade fails, it is prompted that the current main firmware upgrade package upgrade fails. In some embodiments, the flag indicating whether the sub-firmware upgrade package has been upgraded is non_system_update_flag.

[0039] In some embodiments, the flag indicating whether the sub-firmware upgrade package has been upgraded needs to be located in a special storage area that cannot be reset by the factory reset, and can be read and written in the system mode and the firmware upgrade mode, such as vendor_storage.

[0040] In step 2106, if the current system is a non-A / B system, special upgrade instructions for the main firmware upgrade package and the path of the main firmware upgrade package to be upgraded are written in a predetermined position of the boot communication partition of the device. Then the device is restarted and enters the firmware upgrade mode.

[0041] In step 212, in the non-system firmware upgrade service, the upgrade instructions of the sub-firmware upgrade package and the path of the sub-firmware upgrade package are written in a predetermined position in the boot communication partition.

[0042] In step 214, in the firmware upgrade mode, the upgrade instruction and the upgrade package path in the predetermined position of the boot communication partition are read, and the firmware upgrade is performed.

[0043] Figure 3 is a flow chart illustrating a method of copying the upgrade instruction and the path of the sub-firmware upgrade package to an accessible path according to an embodiment of the present application, comprising the following steps 302 to 310.

[0044] In step 302, the non-system firmware upgrade service exit flag is read. If the flag is true, the non-system firmware upgrade service exit flag is deleted, and the non-system firmware upgrade service is exited. Otherwise, step 304 is performed.

[0045] In step 304, the non_system_update_flag in the predetermined position of the storage medium is read. If the flag is true, it indicates that the sub-firmware has been upgraded successfully, and the non-system firmware upgrade service is exited. Otherwise, step 306 is performed.

[0046] In step 306, the A / B system flag in the command line argument is obtained. If the flag indicates that it is an A / B system, it is checked whether the current slot is marked as A / B upgrade successful, i.e. isSlotMarkedSuccessful. If isSlotMarkedSuccessful = 1, it indicates that the A / B upgrade is successful, and step 308 is performed. Otherwise, after sleeping for a predetermined time, the non-system firmware upgrade service exit flag is read. If the flag is true, the non-system firmware upgrade service is exited. Otherwise, if the number of re-inquiries does not exceed a predetermined number, it is re-inquired whether the current slot is marked as A / B upgrade successful. If the inquiry exceeds the predetermined number, and the slot is still marked as unsuccessful, the non-system firmware upgrade service is exited.

[0047] If the flag indicates that it is not an A / B system, step 308 is performed.

[0048] In step 308, the sub-firmware upgrade package under the predetermined path of the system firmware is verified using the public key that is used to verify the main firmware upgrade package in the system firmware.

[0049] If the verification fails, it is prompted that the sub-firmware upgrade package verification is incorrect, and the non-system firmware upgrade service is exited.

[0050] If the verification succeeds, the sub-firmware upgrade package under the predetermined path of the current system firmware is copied to a partition that can be accessed in the firmware upgrade mode, e.g. / cache / platorm_pack.zip, and the path of the sub-firmware upgrade package to be upgraded is set to the copied sub-firmware upgrade package path that can be accessed in the firmware upgrade mode, e.g. / cache / update_loader.zip.

[0051] At step 310, special upgrade instructions for upgrading the sub firmware upgrade package and the path of the sub firmware upgrade package to be upgraded are written at the predetermined location of the boot communication partition of the device. Then the device is restarted and enters the firmware upgrade mode.

[0052] Figure 4 is a flow chart illustrating a method of upgrading firmware in a predetermined location of a boot communication partition according to an embodiment of the present application, comprising the following steps 402 to 406.

[0053] At step 402, if the upgrade instructions are special upgrade instructions for upgrading the main firmware upgrade package, the firmware is upgraded using the main firmware upgrade package under the upgrade package path. After successful upgrade, the flag of whether the sub firmware upgrade package in the predetermined location of the storage medium is upgraded successfully is set to false, indicating that the sub firmware upgrade package has not been upgraded. Otherwise, it is prompted that the main firmware upgrade package fails to upgrade.

[0054] At step 404, if the upgrade instructions are special upgrade instructions for upgrading the sub firmware upgrade package, the sub firmware upgrade package is first verified using the public key same as that of the main firmware upgrade package.

[0055] If the verification fails, the flag of whether the sub firmware upgrade package in the predetermined location of the storage medium is upgraded successfully is set to false, indicating that the upgrade fails.

[0056] If the verification succeeds, the non-system firmware is independently upgraded using the sub firmware upgrade package under the upgrade package path. If the upgrade succeeds, the flag of whether the sub firmware upgrade package in the predetermined location of the storage medium is upgraded successfully is set to true. Otherwise, the flag of whether the sub firmware upgrade package in the predetermined location of the storage medium is upgraded successfully is set to false, indicating that the upgrade fails.

[0057] At step 406, after the upgrade is completed, the upgrade instructions and the upgrade package path in the predetermined location of the boot communication partition are cleared, the device is restarted, and the system after the upgrade is entered.

[0058] According to another aspect of the present application, Figure 5 is a schematic diagram illustrating an electronic device 500 according to an embodiment of the present application. Referring to Figure 5 The electronic device 500 comprises a memory 502, a processor 504, and a computer program stored on the memory and executable on the processor, and the processor implements each step of the method of upgrading firmware as described above when executing the computer program.

[0059] According to still another aspect of the present application, a computer readable medium is provided. The computer readable medium has a computer program stored thereon, and the computer program is executable by a processor to implement the method of upgrading firmware as described above.

[0060] To sum up, in the method for upgrading firmware, the electronic device and the computer readable medium provided by the application, the non-system firmware upgrade package does not need an additional partition for storage, the non-system firmware is independently packaged into a sub-firmware upgrade package and placed in a preset path of the system firmware, so that the upgrading of the content of the sub-firmware upgrade package is completed when the main firmware upgrade package of the system firmware is upgraded, and after the upgrading of the main firmware upgrade package is completed, the special upgrading instruction is used to upgrade the independent sub-firmware upgrade package of the non-system firmware contained in the preset path of the system firmware. It can be applied to the upgrading of some special non-system firmware in the non-AB system and the upgrading of some non-AB system firmware in the AB system.

[0061] The above description is only an embodiment of the application, and does not limit the patent scope of the application, and any equivalent transformation or direct or indirect application in the related technical field by using the content of the specification and drawings is also included in the patent protection scope of the application.

Claims

1. A method of upgrading firmware, characterized by, The method comprises: putting the non-system firmware to be upgraded into a separate sub-firmware upgrade package; putting the sub-firmware upgrade package into a preset path of the system firmware, and making a main upgrade package containing the system firmware, which comprises: signing the sub-firmware upgrade package using a private key, putting the signed sub-firmware upgrade package into the preset path of the system firmware; updating the version number of the system firmware, making the main upgrade package of the system firmware, and renaming the main upgrade package using the version number of the system firmware; and if the system where the main upgrade package is located is a dual-partition system, upgrading the main upgrade package, and writing the sub-firmware upgrade package in the main upgrade package into an accessible path to upgrade the sub-firmware upgrade package, wherein writing the sub-firmware upgrade package in the main upgrade package into an accessible path comprises: verifying the sub-firmware upgrade package using a public key corresponding to the private key in the main upgrade package; if the verification is successful, copying the sub-firmware upgrade package in the preset path to a preset partition accessible to a firmware upgrade mode, and copying the path of the sub-firmware upgrade package to a preset path accessible to the firmware upgrade mode; and writing the upgrade instruction of the sub-firmware upgrade package and the path of the sub-firmware upgrade package into a preset location.

2. The method of claim 1, wherein, upgrading the main upgrade package if the system where the main upgrade package is located is a dual-partition system comprises: based on the version number of the system firmware in the main upgrade package, if there is a new version of firmware, using a dual-partition upgrade engine to upgrade the main upgrade package; if the main upgrade package is upgraded successfully, marking the sub-firmware upgrade package as not upgraded successfully in a preset storage area; and if the main upgrade package is not upgraded successfully, prompting that the main upgrade package fails to be upgraded.

3. The method of claim 1, wherein, upgrading the sub-firmware upgrade package comprises: verifying the sub-firmware upgrade package using a public key corresponding to the private key in the main upgrade package; if the verification fails, setting the sub-firmware upgrade package as not upgraded successfully; and if the verification is successful, independently upgrading the non-system firmware using the sub-firmware upgrade package, if the upgrade is successful, setting the sub-firmware upgrade package as upgraded successfully, and if the upgrade fails, setting the sub-firmware upgrade package as not upgraded successfully.

4. The method of claim 1, wherein, Further comprising: if the system where the main upgrade package is located is a non-dual-partition system, writing the main upgrade package into an accessible path to upgrade the main upgrade package.

5. The method of claim 4, wherein, writing the main upgrade package into an accessible path comprises: writing the upgrade instruction of the main upgrade package and the path of the main upgrade package into a preset location.

6. The method of claim 5, wherein, upgrading the main upgrade package comprises: based on the upgrade instruction, upgrading the main upgrade package, if the upgrade is successful, setting the sub-firmware upgrade package as not upgraded successfully, otherwise, prompting that the main upgrade package fails to be upgraded.

7. The method of claim 6, wherein, Further comprising: upgrading the sub-firmware upgrade package according to information associated with the preset location.

8. The method of claim 1, wherein, Further comprising: The method further comprises: determining whether the system where the main upgrade package is located is a dual-partition system, including: reading a partition table, determining whether a partition with a preset character suffix exists in the partition table, if yes, passing a mark indicating that the system where the main upgrade package is located is a dual-partition system to a command line parameter, and indicating the system where the main upgrade package is located, otherwise, passing a mark indicating that the system where the main upgrade package is located is not a dual-partition system to the command line parameter.

9. The method of claim 8, wherein, After the main upgrade package is upgraded, the method further comprises: After the main upgrade package is upgraded, the method further comprises: 10.An electronic device, comprising: a memory configured to store a computer program; and a processor configured to execute the computer program to perform the method according to any one of claims 1 to 9.

11. A computer readable medium having stored thereon a computer program, characterized in that The computer program is executed by the processor to implement the method according to any one of claims 1 to 9. The computer program is executed by the processor to implement the method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Kexec based firmware updating method and kexec based firmware updating device

    CN104461645A

  • FOTA firmware upgrading method and device based on Android system

    CN113238771A