System upgrading method, display device and server
Patent Information
- Application Number
- CN202211585599.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-09
- Publication Date
- 2026-10-27
- Estimated Expiration
- 2042-12-09
AI Technical Summary
显示设备在进行OTA系统升级时,一般仅更新与操作系统相关的预设分区,无法根据升级需求扩展所需升级的分区类型,也无法针对特定的外设模块进行更新,无法满足设备升级需求和用户对使用性能的要求
[0036]本申请实施例中服务器可以根据显示设备包括的外设模块,并参考对外设模块的升级需求,来设置待升级的目标外设模块,并在生成的升级包中加入用于对目标外设模块进行程序更新的第一升级程序数据。显示设备下载及安装升级包后,可以更新操作系统和第一分区,并将第一升级程序数据安装到第一分区中,这样显示设备重启时,可以加载新版本系统配置的bootloader,bootloader用于从第一分区获取第一升级程序数据后,升级目标外设模块的软件程序,之后启动新版本系统,完成系统的版本更新和切换。服务器可以根据显示设备机型以及对系统和外设模块的升级需求,生成匹配的升级包,实现显示设备在升级系统时,同步升级目标外设模块,扩展更新了第一分区和目标外设模块,使系统升级不再局限于常规的操作系统和预设分区,适应升级需求。
Smart Images

Figure CN116166291B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of software technology, and in particular to a system upgrade method, a display device, and a server. Background Technology
[0002] To improve system performance, display devices can undergo system upgrades using OTA (Over-The-Air) technology. The upgrade package is downloaded and installed from a backend server via the network. After installation, the device is restarted, completing the overall software system update. Users can choose whether to perform an OTA system upgrade based on their needs after receiving the upgrade notification.
[0003] In addition to the main chip, display devices may also include peripheral modules that can run software processing programs. These peripheral modules include, but are not limited to, FRC modules, TCON modules, BLU modules, and the optical engine of laser TVs. When performing OTA system upgrades, display devices generally only update the preset partitions related to the operating system. They cannot expand the types of partitions to be upgraded according to upgrade requirements, nor can they update specific peripheral modules, thus failing to meet device upgrade needs and user performance requirements. Summary of the Invention
[0004] This application provides a system upgrade method, a display device, and a server, which can expand and update partitions and peripheral modules according to the display device model and upgrade requirements.
[0005] In a first aspect, embodiments of this application provide a display device, including:
[0006] A communicator used for communication connections with the server;
[0007] At least one peripheral module, the peripheral module being used to execute a configured software program;
[0008] The controller is used to perform:
[0009] When a system upgrade message is received from the server, the system queries the server for the target peripheral module to be upgraded.
[0010] Download and install the upgrade package, obtain the first upgrade program data of the target peripheral module from the upgrade package, and install the first upgrade program data to the updated first partition;
[0011] When the display device restarts, the bootloader of the new version system configuration is loaded so that the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module;
[0012] After the target peripheral module upgrade is completed, the new version of the system is started.
[0013] In some implementations, after acquiring the target peripheral module, the controller is further configured to: access a power-off memory storage area, the power-off memory storage area storing an upgrade flag corresponding to each peripheral module; set the first upgrade flag corresponding to the target peripheral module to a first state value; the first state value is used to instruct the bootloader to acquire the first upgrade program data from the first partition and upgrade the target peripheral module when the display device restarts.
[0014] In some implementations, after the target peripheral module is upgraded, the controller is further configured to: set the first upgrade flag corresponding to the target peripheral module to a second state value, the second state value being used to indicate that the target peripheral module is not upgraded.
[0015] In some implementations, the controller is also configured to: when the display device restarts, if it is detected that the upgrade flag bits corresponding to each peripheral module stored in the power-off memory storage area are all of the second state value, not upgrade any peripheral module; and start the new version of the system.
[0016] In some implementations, the controller queries the server for the target peripheral module to be upgraded, including: obtaining an upgrade policy from the server, wherein the upgrade policy records an upgrade switch identifier corresponding to each peripheral module, the upgrade switch identifier including an upgradeable identifier and a non-upgradeable identifier; and obtaining the target peripheral module with the upgradeable identifier set.
[0017] In some implementations, the display device further includes a display; the controller is further configured to perform: after setting the first upgrade flag corresponding to the target peripheral module to a first state value, controlling the display to display a first prompt page; the first prompt page is configured to prompt that the software program of the target peripheral module needs to be updated during the system upgrade process, and the power should not be cut off before the upgrade is completed; and / or, after installing the first upgrade program data to the first partition, controlling the display to display a second prompt page, the second prompt page including a second confirmation button; the second prompt page is configured to prompt that the upgrade package has been successfully installed, and the software program of the target peripheral module needs to be updated when the new version system restarts, and the power should not be cut off before the upgrade is completed; and / or, in response to the user clicking the second confirmation button, controlling the display to display a third prompt page, the third prompt page including a third confirmation button; the third prompt page is configured to prompt that the device is about to restart, and the software program of the target peripheral module needs to be updated during the restart, and the power should not be cut off before the upgrade is completed; in response to the user clicking the third confirmation button, calling the Reboot interface to restart the display device.
[0018] In some implementations, the controller includes: an active first slot and an inactive second slot, with the current legacy system running in the first slot, the first slot being configured to: after downloading the upgrade package, install the upgrade package in the second slot; and after the display device restarts, switch the currently active slot to the second slot and load the bootloader configured for the new version of the system from the second slot.
[0019] Secondly, embodiments of this application also provide a server, including:
[0020] A communicator used for communication connections with display devices;
[0021] The controller is used to perform:
[0022] Based on the peripheral modules included in the display device, the target peripheral module to be upgraded is set;
[0023] During the compilation phase, an upgrade package is generated, which includes first upgrade program data for updating the target peripheral module.
[0024] An upgrade strategy is formulated, and the upgrade switch identifier corresponding to each peripheral module is recorded in the upgrade strategy. The upgrade switch identifier includes an upgradeable identifier and a non-upgradeable identifier, and the upgrade switch identifier corresponding to the target peripheral module is the upgradeable identifier.
[0025] A system upgrade message is pushed to the display device.
[0026] Thirdly, embodiments of this application also provide a system upgrade method, including:
[0027] When the display device receives a system upgrade message pushed by the server, it queries the server for the target peripheral module to be upgraded.
[0028] The display device downloads and installs an upgrade package, obtains the first upgrade program data of the target peripheral module from the upgrade package, and installs the first upgrade program data into the updated first partition;
[0029] When the display device restarts, it loads the bootloader configured with the new version of the system, so that the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module.
[0030] After the target peripheral module upgrade is completed, the display device starts the new version of the system.
[0031] Fourthly, embodiments of this application also provide a system upgrade method, including:
[0032] The server sets the target peripheral modules to be upgraded based on the peripheral modules included in the display device;
[0033] The server generates an upgrade package during the compilation phase, the upgrade package including first upgrade program data for updating the target peripheral module;
[0034] The server formulates an upgrade strategy, which records the upgrade switch identifier corresponding to each peripheral module. The upgrade switch identifier includes an upgradeable identifier and a non-upgradeable identifier. The upgrade switch identifier corresponding to the target peripheral module is the upgradeable identifier.
[0035] The server pushes a system upgrade message to the display device.
[0036] In this embodiment, the server can set the target peripheral module to be upgraded based on the peripheral modules included in the display device and with reference to the upgrade requirements of the peripheral modules. The server also adds first upgrade program data for updating the target peripheral module to the generated upgrade package. After the display device downloads and installs the upgrade package, it can update the operating system and the first partition, and install the first upgrade program data into the first partition. When the display device restarts, it can load the bootloader configured for the new system version. The bootloader retrieves the first upgrade program data from the first partition, upgrades the software program of the target peripheral module, and then starts the new system version, completing the system version update and switch. The server can generate a matching upgrade package based on the display device model and the upgrade requirements for the system and peripheral modules. This allows the display device to simultaneously upgrade the target peripheral module when upgrading the system, extending the update of the first partition and the target peripheral module, thus making system upgrades no longer limited to the conventional operating system and preset partitions, and adapting to upgrade requirements. Attached Figure Description
[0037] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0038] Figure 1 This application provides an example of an operational scenario between a display device and a control device 100.
[0039] Figure 2 A hardware configuration block diagram of the control device 100 provided in the embodiments of this application;
[0040] Figure 3 A hardware configuration block diagram of a display device 200 provided in an embodiment of this application;
[0041] Figure 4 This is a software configuration diagram of the display device 200 provided in the embodiments of this application;
[0042] Figure 5 A schematic diagram of a system upgrade prompt page provided in an embodiment of this application;
[0043] Figure 6 This application provides a server-side maintenance peripheral upgrade management list for embodiments of the present application;
[0044] Figure 7 A first flowchart of a system upgrade method performed by a display device provided in an embodiment of this application;
[0045] Figure 8 A second flowchart illustrating the system upgrade method performed by the display device provided in this application embodiment;
[0046] Figure 9 A schematic diagram illustrating the display of a first prompt page on a display device provided in an embodiment of this application;
[0047] Figure 10 A schematic diagram illustrating the display of a second prompt page on a display device provided in an embodiment of this application;
[0048] Figure 11 A schematic diagram of the display device providing the embodiments of this application displaying a third prompt page. Figure 1 ;
[0049] Figure 12 A schematic diagram of the display device providing the embodiments of this application displaying a third prompt page. Figure 2 . Detailed Implementation
[0050] To make the objectives, technical solutions, and advantages of the exemplary embodiments of this application clearer, the technical solutions in the exemplary embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described exemplary embodiments are only some embodiments of this application, and not all embodiments.
[0051] Based on the exemplary embodiments shown in this application, all other embodiments obtained by those skilled in the art without inventive effort are within the scope of protection of this application. Furthermore, although the disclosures in this application are presented by way of one or more exemplary examples, it should be understood that each aspect of these disclosures can constitute a complete technical solution on its own.
[0052] It should be understood that the terms "first," "second," "third," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such use of data can be interchanged where appropriate, for example, to allow implementation in orders other than those given in the embodiments illustrated or described in this application.
[0053] Furthermore, the terms “comprising” and “having”, and any variations thereof, are intended to cover but not exclusively include, for example, a product or device that includes a series of components is not necessarily limited to those that are explicitly listed, but may include other components that are not explicitly listed or that are inherent to such product or device.
[0054] The display device provided in this application embodiment can have various implementation forms, such as a television, a smart television, a laser projection device, a monitor, an electronic bulletin board, an electronic table, etc. Figure 1 and Figure 2 This is one specific embodiment of the display device of this application.
[0055] Figure 1 This is a schematic diagram illustrating an operational scenario between a display device and a control device provided in an embodiment of this application. Figure 1 As shown, the user can operate the display device 200 through the smart device 300 or the control device 100.
[0056] In some implementations, the control device 100 can be a remote control. Communication between the remote control and the display device includes infrared or Bluetooth communication, as well as other short-range communication methods, to control the display device 200 wirelessly or via wired means. Users can control the display device 200 by inputting user commands through buttons on the remote control, voice input, or control panel input.
[0057] In some implementations, a smart device 300 (such as a mobile terminal, tablet computer, computer, laptop computer, etc.) can also be used to control the display device 200. For example, an application running on the smart device can be used to control the display device 200.
[0058] In some implementations, the display device may not receive instructions using the aforementioned smart devices or control devices, but instead receive user control through touch or gestures.
[0059] In some implementations, the display device 200 can also be controlled in ways other than the control device 100 and the smart device 300. For example, it can be controlled by receiving user voice commands directly through a module configured inside the display device 200 for acquiring voice commands, or it can be controlled by receiving user voice commands through a voice control device set outside the display device 200.
[0060] In some implementations, the display device 200 also communicates with the server 400. The display device 200 may communicate via a local area network (LAN), wireless local area network (WLAN), and other networks. The server 400 can provide various content and interactive features to the display device 200. The server 400 can be a cluster or multiple clusters, and may include one or more types of servers.
[0061] Figure 2 This is a configuration block diagram of the control device 100 provided in an embodiment of this application. (See diagram below.) Figure 2 As shown, the control device 100 includes a controller 110, a communication interface 130, a user input / output interface 140, a memory, and a power supply. The control device 100 can receive user input operation commands and convert the operation commands into commands that the display device 200 can recognize and respond to, thus acting as an intermediary for interaction between the user and the display device 200.
[0062] Figure 3 This is a hardware configuration block diagram of a display device 200 provided in an embodiment of this application. For example... Figure 3 As shown, the display device 200 includes at least one of the following: a tuner 210, a communicator 220, a detector 230, an external device interface 240, a controller 250, a display 260, an audio output interface 270, a memory, a power supply, and a user interface.
[0063] In some implementations, the controller includes a processor, a video processor, an audio processor, a graphics processor, RAM, ROM, and a first to an nth interface for input / output.
[0064] The display 260 includes a display screen assembly for presenting images, a driving assembly for driving image display, a component for receiving image signals from the controller output, and a user control UI interface for displaying video content, image content, menu control interface, and user control UI interface.
[0065] The display 260 can be an LCD display, an OLED display, or a projection display, and can also be a projection device and a projection screen.
[0066] The communicator 220 is a component used to communicate with external devices or servers according to various communication protocol types. For example, the communicator may include at least one of the following: a Wi-Fi module, a Bluetooth module, a wired Ethernet module, other network communication protocol chips or near-field communication protocol chips, and an infrared receiver. The display device 200 can establish the transmission and reception of control signals and data signals with the control device 100 or the server 400 through the communicator 220.
[0067] The user interface can be used to receive control signals from the control device 100 (such as an infrared remote control).
[0068] Detector 230 is used to collect signals from the external environment or to interact with the external environment. For example, detector 230 includes a light receiver, a sensor for collecting ambient light intensity; or, detector 230 includes an image acquisition device, such as a camera, which can be used to collect external environmental scenes, user attributes, or user interaction gestures; or, detector 230 includes a sound acquisition device, such as a microphone, for receiving external sounds.
[0069] The external device interface 240 may include, but is not limited to, one or more of the following: High Definition Multimedia Interface (HDMI), analog or high-definition component input interface (component), composite video input interface (CVBS), USB input interface (USB), RGB port, etc. It may also be a composite input / output interface formed by multiple interfaces mentioned above.
[0070] The tuner / demodulator 210 receives broadcast television signals via wired or wireless means, and demodulates audio and video signals, such as EPG data signals, from multiple wireless or wired broadcast television signals.
[0071] In some implementations, the controller 250 and the tuner 210 can be located in different separate devices, that is, the tuner 210 can also be located in an external device of the main device where the controller 250 is located, such as an external set-top box.
[0072] The controller 250 controls the operation of the display device and responds to user operations through various software control programs stored in the memory. The controller 250 controls the overall operation of the display device 200. For example, in response to receiving a user command to select a UI object to display on the monitor 260, the controller 250 can execute operations related to the object selected by the user command.
[0073] In some implementations, the controller includes at least one of a central processing unit (CPU), a video processor, an audio processor, a graphics processing unit (GPU), RAM (random access memory), ROM (read-only memory), a first to nth interface for input / output, a communication bus, etc.
[0074] Users can input commands through a graphical user interface (GUI) displayed on the monitor 260, and the user input interface receives the user input commands through the GUI. Alternatively, users can input commands by entering specific sounds or gestures, and the user input interface receives the user input commands by recognizing the sounds or gestures through sensors.
[0075] A "user interface" is the medium through which an application or operating system interacts and exchanges information with the user. It converts information from its internal form to a form that the user can accept. A common form of user interface is the graphical user interface (GUI), which refers to a user interface related to computer operation displayed graphically. It can be an icon, window, control, or other interface element displayed on the screen of an electronic device. Controls can include visual interface elements such as icons, buttons, menus, tabs, text boxes, dialog boxes, status bars, navigation bars, and widgets.
[0076] Figure 4 This is a software configuration diagram of the display device 200 provided in an embodiment of this application. For example... Figure 4 As shown, in some implementations, the system is divided into four layers, from top to bottom: the Applications layer (referred to as the "Application Layer"), the Application Framework layer (referred to as the "Framework Layer"), the Android runtime and system library layer (referred to as the "System Runtime Library Layer"), and the kernel layer.
[0077] In some implementations, at least one application runs in the application layer. These applications can be Windows programs included with the operating system, system settings programs, or clock programs, or they can be applications developed by third-party developers. In practice, the application packages in the application layer are not limited to the examples above.
[0078] The framework layer provides application programming interfaces (APIs) and a programming framework for applications. The application framework layer includes predefined functions. It acts as a central processing unit, determining the actions taken by applications within the application layer. Through the API, applications can access system resources and obtain system services during execution.
[0079] like Figure 4As shown, the application framework layer in this embodiment includes managers, content providers, etc., wherein the managers include at least one of the following modules: ActivityManager, which interacts with all activities running in the system; LocationManager, which provides access to system location services for system services or applications; PackageManager, which retrieves various information related to application packages currently installed on the device; NotificationManager, which controls the display and clearing of notification messages; and WindowManager, which manages icons, windows, toolbars, wallpapers, and desktop widgets on the user interface.
[0080] In some implementations, the activity manager is used to manage the lifecycle of individual applications and common navigation and back functions, such as controlling application exit, opening, and navigating back. The window manager is used to manage all window programs, such as obtaining the screen size, determining whether there is a status bar, locking the screen, capturing the screen, and controlling display window changes (e.g., shrinking the display window, shaking the display, distorting the display, etc.).
[0081] In some implementations, the system runtime library layer provides support for the upper layer, namely the framework layer. When the framework layer is used, the Android operating system runs the C / C++ libraries contained in the system runtime library layer to implement the functions that the framework layer needs to perform.
[0082] In some implementations, the kernel layer acts as an intermediary between the hardware and software. For example... Figure 4 As shown, the kernel layer includes at least one of the following drivers: audio driver, display driver, Bluetooth driver, camera driver, WIFI driver, USB driver, HDMI driver, sensor driver (such as fingerprint sensor, temperature sensor, pressure sensor, etc.), and power driver.
[0083] In some application scenarios, to improve the system performance of display device 200, server 400 can periodically upgrade the system of display device 200. When server 400 detects that the system of display device 200 has been configured with a new version, it can push a system upgrade message to display device 200. Display device 200 can be set to automatic upgrade mode or prompt upgrade mode. Automatic upgrade mode means that when display device 200 receives a system upgrade message, it automatically downloads, verifies, and installs the upgrade package applicable to the entire device model from the server via OTA, and restarts the display device after the upgrade package is installed, thereby completing the version update of the entire software system and enabling related functions by running the new version of the system.
[0084] When the display device 200 receives a system upgrade message, it can also implement an upgrade request mode, that is, ask the user whether they agree to upgrade the system. Figure 5 This is a schematic diagram of a system upgrade prompt page provided in an embodiment of this application. Figure 5 As shown, the display device 200 can control the monitor to display a system upgrade prompt page 50. The system upgrade prompt page 50 may include system upgrade prompt information 51, an "Upgrade Now" button 52, an "Upgrade Later" button 53, and a "Cancel Upgrade" button 54. The system upgrade prompt information 51 can be used to display the current system's first version number, the latest available system's second version number, and a description of the latest system's performance improvements (e.g., prompting for an upgrade of the target peripheral module), and can also be used to ask the user whether to upgrade the system.
[0085] In response to the user clicking the "Upgrade Now" button 52, the display device 200 can control the display to close the system upgrade prompt page 50 and immediately start executing the system upgrade task.
[0086] In response to the user clicking the "Upgrade Later" button 53, the display device 200 can control the display to close the system upgrade prompt page 50, temporarily suspend the system upgrade task, and control the display to re-display the system upgrade prompt page 50 after a preset interval (e.g., 24 hours).
[0087] In response to the user clicking the Cancel Upgrade button 54, the display device 200 can control the display to close the system upgrade prompt page 50, and then prevent the system upgrade prompt page 50 from popping up again and from actively performing the system upgrade task.
[0088] The system upgrade architecture provided in this application includes, but is not limited to: recovery upgrade architecture and A / B seamless upgrade architecture.
[0089] Android systems can implement a recovery upgrade architecture, where the download, verification, and installation of the upgrade package are all performed within the system's recovery (flashing) mode. During this process, the user cannot use the display device normally and must wait for the upgrade package to complete in recovery mode. The user then needs to reboot the display device to switch to the new system version, thus completing the system upgrade. Afterward, the user can return to normal user mode. However, if abnormal situations such as power outages or device malfunctions occur during system upgrades based on recovery mode, the display device may become "bricked," meaning it cannot boot the Android system and all system functions will be unusable.
[0090] Considering the shortcomings of the recovery upgrade architecture, some implementations use an A / B seamless upgrade architecture in the Android system. This architecture can set up two sets of slots: Slot A and Slot B. Only one of the two slots is active at any given time. The currently running system runs in the active slot (hereinafter referred to as the active slot) and will not access the inactive slot (hereinafter referred to as the inactive slot).
[0091] Assuming the current system is running in the first slot, upon receiving a system upgrade message from the server, the first slot initiates the system upgrade task, downloading and verifying the upgrade package, and then installing it in the second slot. While the first slot is performing the system upgrade task in the background and the second slot is installing the upgrade package for the new system version, the foreground operation of the first slot remains unaffected. Users can continue to use the device normally using the current system in the first slot, such as watching videos and using apps. After the upgrade package is installed in the second slot, a single device reboot is sufficient to launch the newly installed system version in the second slot, making the new version effective. The system version update is then complete, and the system upgrade is successful. If the new system version fails to launch when accessing the second slot after a reboot, it can automatically roll back to the first slot and launch the older, yet-to-be-updated, system version in the first slot.
[0092] The advantages of the A / B seamless upgrade architecture are: shortened system upgrade time, with the download and installation of upgrade packages executed in the background by the first slot, automatic switching to the new system version upon device restart without time consumption, and a seamless process. Even if the system upgrade fails, the display device will not become "bricked" because a usable old system version is retained, ensuring that users can use system functions normally, and no temporary storage space is needed for caching upgrade packages. In addition, when the display device receives a system upgrade message pushed by the server, there is no need to schedule the system upgrade task (e.g., schedule it during a time when the user is not using the display device), and the system upgrade task can be started immediately based on the A / B seamless upgrade architecture.
[0093] The A / B seamless upgrade architecture also includes a background `update_engine` process. The first slot can call `update_engine` to download and verify the upgrade package from the server, and then install the successfully verified upgrade package into the second slot. `update_engine` can obtain the system upgrade result, such as whether the upgrade was successful or failed, and can also report the upgrade result to the server. If the upgrade is successful, `update_engine` will instruct the bootloader to start the new version of the system when the device restarts. If the new version of the system upgrade fails or fails to start, the bootloader can start the old version of the system to ensure that the display device can function normally.
[0094] In some implementations, if the system upgrade fails, the OTA process can determine whether to retry, when to retry, and the number of retries based on the detailed error code.
[0095] To facilitate dual-slot management, both the first and second slots can include three attributes: active, bootable, and successful. "Active" identifies the active slot; this is an exclusive attribute, meaning only one slot can have the "active" attribute set. When the display device powers on, the bootloader starts the slot with the "active" attribute set, making it the active slot, and its system is set to the current system. "Bootable" identifies a bootable slot; a slot with the "bootable" attribute contains a complete, bootable system. "Successful" indicates that the slot is running successfully. If a slot has the "successful" attribute set, it means that the system installed in that slot ran correctly during the previous boot or the current boot.
[0096] In some implementations, when the display device powers on or restarts, the bootloader reads and parses the slot metadata stored in boot_control. The slot metadata can include dual-slot attributes so that the bootloader can determine which slot to start the system from.
[0097] In some implementations, the system checks if there are any bootable slots in the slot metadata that are set to the bootable attribute. If no bootable slots are found, the system enters recovery mode. If at least one bootable slot exists, the target slot with the highest priority is started, for example, the slot currently set to the active attribute. The retry count of the target slot is then queried, representing the number of times the target slot is allowed to attempt to start. If the target slot starts successfully, its successful attribute is set. If the target slot fails to start, but the retry count is not zero, it can continue to retry. If the target slot still fails to start when the retry count decreases to zero, it is marked as unbootable, indicating that the target slot is currently unbootable.
[0098] In some implementations, `update_engine` can set the `bootable` attribute for the second slot after the upgrade package is installed, and record that the second slot has a higher priority than the first slot. This way, when the device reboots, the bootloader will prioritize starting the new version of the system in the second slot. When the new version boots successfully, the `successful` attribute is set for the second slot. At this point, the second slot simultaneously possesses both the `active` and `successful` attributes, the new version of the system takes effect, and the system upgrade is successful. Afterwards, the first slot can update its system version by reading the system data from the second slot. If the new version fails to boot, it can try booting the old version installed in the first slot, and retry the system upgrade after the old version boots successfully.
[0099] For ease of distinction, in the following embodiments of this application, if the A / B dual-slot seamless upgrade architecture is involved, the active slot in which the current system is running will be referred to as the first slot, and the inactive slot will be referred to as the second slot. The description of first / second does not constitute a limitation on the slot type.
[0100] like Figure 3 As shown, the display device 200 may include a controller 250. The controller 250 can be regarded as a main chip, or a system-on-chip (SOC), which includes the complete system and all the embedded software. OTA system upgrades are mainly for the SOC, updating the version of the software system installed on the SOC.
[0101] The display device 200 may also include at least one peripheral module (also known as a peripheral device or external device, or simply a peripheral). A peripheral module is hardware configured with software programs to perform specific functions. Peripheral modules include, but are not limited to: FRC (Frame Rate Conversion) module, TCON (Timing Controller, also known as a logic board or screen driver board), BLU (Back Light Unit) module, and laser optical engine of laser TV.
[0102] Based on their function and installation location, peripheral modules can be divided into on-chip peripherals and off-chip peripherals. On-chip peripherals, also known as internal peripherals, are installed on the controller and include, but are not limited to, GPIO, I2C, and FRC modules. Off-chip peripherals, also known as external peripherals, are installed inside the display device and outside the controller, and include, but are not limited to, TCON, BLU modules, laser optical engines, and image acquisition devices. The types of peripheral modules included in a display device are not limited and can be determined based on the model of the display device.
[0103] When display devices undergo OTA system upgrades, they generally only update the system-related partitions that were pre-configured at the factory. They cannot expand the types of partitions that need to be upgraded, nor can they update specific peripheral modules, thus failing to meet device upgrade requirements and user performance requirements.
[0104] To address this issue and expand the range of partition types and peripheral modules for upgrades, in this embodiment of the application, when configuring a new version of the system, the server can obtain information such as the display device model based on the communication connection with the display device. Based on the device model, it can then determine the peripheral modules included in the display device, which include on-chip peripherals and off-chip peripherals. The server can then determine whether to upgrade the peripherals and the types of peripherals to be upgraded based on market demand for peripheral upgrades and usage.
[0105] In some implementations, if a target peripheral module to be upgraded is available, during the compilation phase, the server generates an upgrade package to upgrade the display device to the new system version, as well as program data for software upgrades of the target peripheral module (hereinafter referred to as: first upgrade program data). The first upgrade program data can be saved to a specified location within the upgrade package. The first upgrade program data may include parameters and other data required for the upgrade software functionality adapted to the display device model and the target peripheral module.
[0106] In some implementations, the server can upload the relevant program files and information for peripheral upgrades to the data separation partition (also known as the Hidsdata partition) directory of the code tree. During the compilation phase, the build_Hidsdata.sh script can automatically package the first upgrade program data corresponding to the target peripheral module and store it in the Hidsdata partition of the upgrade package, based on the peripheral type. In this way, the upgrade package includes both system upgrade program data and the first upgrade program data used to upgrade the target peripheral module.
[0107] In some implementations, after generating the upgrade package, the server can also formulate an OTA upgrade strategy, which may include relevant configuration information for guiding the display device to upgrade the system. In this embodiment, the OTA upgrade strategy can also record and update the upgrade switch identifier corresponding to each target peripheral module, including an upgradeable identifier and a non-upgradeable identifier.
[0108] Figure 6 The peripheral upgrade management list maintained on the server side is provided in this embodiment of the application. The server 400 can set and update the peripheral upgrade management list according to the upgrade requirements of the peripheral modules. For example... Figure 6As shown, the peripheral upgrade management list 60 includes: peripheral identifiers 61 of the peripheral modules included in the display device 200, and upgrade switches 62 corresponding to each peripheral identifier 61. The server 400 can configure the mapped upgrade switch identifier for each peripheral module by setting the on / off state of the upgrade switch 62 corresponding to each peripheral identifier 61. For example, when it is necessary to instruct the display device to upgrade TCON, the upgrade switch 62 corresponding to TCON is set to the ON state, so the upgrade switch identifier mapped to TCON is an upgradeable identifier. As another example, when it is not necessary to upgrade BLU, the upgrade switch 62 corresponding to BLU is set to the OFF state, so the upgrade switch identifier mapped to BLU is a non-upgradeable identifier. Thus, when the display device obtains the OTA upgrade policy from the server, it can query the target peripheral modules mapped with upgradeable identifiers and update the software program of the target peripheral modules during system upgrade.
[0109] Since the server 400 may communicate with multiple display devices simultaneously, the peripheral upgrade management list 60 can also record the device information of the display devices (e.g., device model, etc.) so that the server 400 can accurately find the peripheral upgrade management list corresponding to the specified display device. Figure 6 The device models shown are merely examples, and the maintenance of peripheral upgrade management on the server side is not limited to a list format.
[0110] Figure 7 This is a first flowchart of a system upgrade method performed by a display device provided in an embodiment of this application. Figure 7 As shown, this method can be executed by controller 250 and includes the following steps:
[0111] Step S71: When a system upgrade message is received from the server, query the server for the target peripheral module to be upgraded.
[0112] In some implementations, after generating the upgrade package and defining the OTA upgrade strategy, the server can send a system upgrade message to the display device. Upon receiving the system upgrade message, the display device requests the OTA upgrade strategy from the server. After obtaining the OTA upgrade strategy, it queries the peripheral modules mapped with upgradeable identifiers; these are the target peripheral modules to be upgraded. If none of the peripheral modules included in the display device are mapped with upgradeable identifiers (i.e., no target peripheral module is detected), then only a system upgrade is performed, and no peripheral upgrade is performed.
[0113] Step S72: Download and install the upgrade package, obtain the first upgrade program data of the target peripheral module from the upgrade package, and install the first upgrade program data to the updated first partition.
[0114] The first partition is an extended partition type used for upgrading peripherals. It is used to install the first upgrade program data for the target peripheral module. The first partition can be the Hidsdata partition in the display device. After the display device downloads the upgrade package from the server, it updates the first partition during the system upgrade process and obtains the first upgrade program data for the target peripheral module from the upgrade package. The first upgrade program data is then installed in the first partition so that when the display device restarts, the bootloader reads the first upgrade program data from the first partition to complete the upgrade of the target peripheral module.
[0115] Step S73: When the display device restarts, load the bootloader configured for the new version of the system so that the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module.
[0116] After the upgrade package is installed, the display device needs to perform a reboot to update the system version and target peripheral modules. Therefore, the display device can call the reboot interface to control the device restart, loading the bootloader configured for the new system version before starting the system kernel. This new bootloader not only initializes hardware devices such as the SOC and circuit board, and establishes a memory space mapping to prepare for the final kernel call, but also updates the software programs of the target peripheral modules. This allows the bootloader to access the first partition, obtain the first upgrade program data, and use that data to complete the upgrade of the target peripheral modules.
[0117] Step S74: After the target peripheral module upgrade is completed, start the new version of the system to complete the system upgrade.
[0118] After the bootloader upgrades the target peripheral module, the new version of the system can be started according to the Android system's boot process, thus completing the system version update.
[0119] In this embodiment, the server can set the target peripheral module to be upgraded based on the peripheral modules included in the display device and the upgrade requirements of the peripheral modules. The server also adds first upgrade program data for updating the target peripheral module to the generated upgrade package. After the display device downloads and installs the upgrade package, it can update the operating system's preset partition and the first partition, and install the first upgrade program data into the first partition. When the display device restarts, it can load the bootloader configured for the new system version, enabling the bootloader to upgrade the software program of the target peripheral module. Then, the new system version is launched, completing the system version update. The server can generate a matching upgrade package based on the display device model and the upgrade requirements for the system and peripheral modules. This allows the display device to simultaneously upgrade the target peripheral module when upgrading the system. The display device only needs to restart once to extend the update of the first partition and the target peripheral module, making system upgrades no longer limited to the conventional operating system and preset partition, and adapting to upgrade requirements in more application scenarios.
[0120] Figure 8 This is a second flowchart illustrating a system upgrade method performed by a display device provided in an embodiment of this application. Figure 8 As shown, this method can be executed by controller 250 and includes the following steps:
[0121] Step S81: When a system upgrade message is received from the server, query the server for the target peripheral module to be upgraded.
[0122] Step S82: Determine whether the target peripheral module has been found.
[0123] If the display device detects that the upgrade switch identifiers mapped to the peripheral modules included in the display device are all non-upgrade identifiers according to the OTA upgrade policy, that is, no target peripheral module is found, then step S83 is executed; if at least one peripheral module is detected to have an upgrade switch identifier that is upgradeable, that is, a target peripheral module is found, then step S84 is executed.
[0124] Step S83: Perform the standard system upgrade process.
[0125] The standard system upgrade process is as follows: the display device downloads, verifies, and installs the upgrade package. After the upgrade package is installed, the display device is restarted and the new version of the system is launched, thereby updating the system version and completing the system upgrade.
[0126] Step S84: Access the power-off memory storage area, set the first upgrade flag corresponding to the target peripheral module to the first status value, and control the display to show the first prompt page.
[0127] The power-off memory storage area stores upgrade flags for each peripheral module included in the display device. For example, the upgrade flag for TCON can be exemplified as upgrade_TCON_flag, and the upgrade flag for FRC as upgrade_FRC_flag. The values of the upgrade flags can be used to indicate the upgrade on / off status of the peripheral module.
[0128] In some implementations, the upgrade flag value may include a first state value and a second state value. The first state value is associated with an upgradeable flag and is used to instruct the bootloader to retrieve the first upgrade program data from the first partition and upgrade the target peripheral module when the display device restarts. The second state value is associated with a no-upgrade flag and is used to indicate that the peripheral module will not be upgraded. The first and second state values are not limited; for example, the first state value can be set to 1 and the second state value can be set to 0.
[0129] Therefore, when the display device detects the target peripheral module, it locates the first upgrade flag corresponding to the target peripheral module in the power-off memory area and changes the value of the first upgrade flag to the first state value, while other non-first upgrade flags remain unchanged at the second state value. In this way, when the display device restarts, the bootloader only upgrades the target peripheral module and does not upgrade non-target peripheral modules.
[0130] In some implementations, there may be some safety risks when upgrading peripherals. For example, if the display device is suddenly powered off before the peripheral upgrade is completed, the peripheral module is usually single-channel, and the power outage will cause the peripheral upgrade to fail, which will in turn cause the peripheral to be unable to work properly and run programs. Therefore, when upgrading the system and peripherals, users can be prompted not to switch the power supply, so as to ensure the normal operation and safety of the display device.
[0131] Figure 9 This is a schematic diagram illustrating the display of a first prompt page on a display device provided in this embodiment. After setting the first upgrade flag corresponding to the target peripheral module to a first state value, as shown... Figure 9 As shown, the display can be controlled to show a first prompt page 90, which includes a first prompt message 91 and a first confirmation button 92. The first prompt message 91 indicates that the target peripheral module needs to be updated during the system upgrade process. Figure 9 For the software program (e.g., TCON), do not disconnect the power before the upgrade is complete. After viewing the first prompt message 91, the user can click the first confirmation button 92 through the control device 100. In response to the user clicking the first confirmation button 92, the display device can control the display to close the first prompt page 90 and continue to execute the following steps S85.
[0132] Step S85: Download, verify and install the upgrade package, obtain the first upgrade program data of the target peripheral module from the upgrade package, and install the first upgrade program data to the updated first partition.
[0133] Step S86: Control the display to show the second prompt page.
[0134] Figure 10 This is a schematic diagram illustrating the display device showing a second prompt page according to an embodiment of this application. After the display device installs the first upgrade program data to the updated first partition, as shown... Figure 10 As shown, the display can be controlled to show a second prompt page 101, which includes a second prompt message 101a and a second confirmation button 101b. The second prompt message 101a indicates that the upgrade package has been successfully installed, and that the target peripheral module's software needs to be updated upon system restart. Power should not be disconnected until the upgrade is complete. After viewing the second prompt message 101a, the user can click the second confirmation button 101b via the control device 100. In response to the user clicking the second confirmation button 101b, the display device can continue to execute the following step S87.
[0135] In step S87, in response to the user clicking the second confirmation button on the second prompt page, the display is controlled to close the second prompt page and display the third prompt page.
[0136] Figure 11 A schematic diagram of the display device providing the embodiments of this application displaying a third prompt page. Figure 1 In some implementations, such as Figure 11 As shown, the third prompt page 111 may include a third prompt message 111a and a third confirmation button 111b. The third prompt message 111a indicates that the device is about to restart, and that the target peripheral module's software needs to be updated during the restart; the power should not be disconnected until the upgrade is complete. For example, Figure 11 The third prompt message 111a reads, "The TV is about to restart. An upgrade to the TCON is required during the restart. Please wait patiently and do not disconnect the power." After viewing the third prompt message 111a, the user can click the third confirmation button 111b via the control device 100. In response to the user clicking the third confirmation button 111b, the display device can control the monitor to close the third prompt page 111 and continue executing the following steps S88. In this implementation, clicking the third confirmation button 111b signifies the user's default agreement to immediately restart the device.
[0137] Figure 12 A schematic diagram of the display device providing the embodiments of this application displaying a third prompt page. Figure 2 In some implementations, such as Figure 12 As shown, the third prompt page 111 may include a fourth prompt message 111c, an "Immediate Restart" button 111d, and a "Restart Later" button 111e. The fourth prompt message 111c prompts that the target peripheral module's software needs to be updated during device restart, and that power should not be cut off until the upgrade is complete, asking whether to restart immediately. After viewing the fourth prompt message 111c, the user can click the "Immediate Restart" button 111d or the "Restart Later" button 111e via the control device 100. In this implementation, when the third prompt page 111 is displayed, the user can decide whether to restart the device immediately or later based on the current usage scenario or source. For example, if the user is currently watching a live broadcast or making a video call, they can click the "Restart Later" button 111e and restart the display device later at a convenient time.
[0138] In response to the user clicking the "Restart Later" button 111e, the display device controls the monitor to close the third prompt page 111, and can control the monitor to re-display the third prompt page 111 after a preset interval (e.g., 1 hour). In response to the user clicking the "Restart Now" button 111d, the display device can control the monitor to close the third prompt page 111 and continue to execute the following steps S88.
[0139] Step S88: Control the display device to restart, load and run the bootloader of the new version of the system configuration.
[0140] In step S89, the bootloader determines whether the value of the first upgrade flag is the first state value.
[0141] In some implementations, when the system reboots, the Linux underlying system loads the bootloader of the new version of the system, enabling the bootloader to run. This allows the bootloader to access the power-off memory area and check if the current value of the first upgrade flag is the first state value. If the first upgrade flag is the first state value, then step S810 is executed. If the first upgrade flag is the second state value, meaning that the upgrade flags for each peripheral module stored in the power-off memory area are all at the second state value, then no peripheral module is upgraded, and step S812 is executed.
[0142] In step S810, the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module.
[0143] Step S811: Set the first upgrade flag corresponding to the target peripheral module to the second state value.
[0144] Since the bootloader has already upgraded the target peripheral module when the device restarts, after the target peripheral is successfully upgraded, the value of the first upgrade flag can be changed to the second status value. This way, the bootloader will not trigger the upgrade task for the target peripheral module when the display device restarts next time.
[0145] Step S812: Start the new version of the system and complete the system upgrade.
[0146] This application embodiment can manage the upgrade of peripheral modules through an upgrade flag. By displaying prompt pages at different time points, it can remind users not to disconnect the power, thereby avoiding peripheral upgrade failure and safety risks caused by power outages and ensuring the safe and stable operation of the display device. On the other hand, it can also indicate the system upgrade progress.
[0147] In some implementations, for a seamless A / B upgrade architecture, before the system upgrade, assuming the current system is running on the first slot, the system upgrade method before the display device restarts is executed by the first slot. After the display device restarts, the current active slot can be switched to the second slot, and based on the index of the active slot, the latest bootloader is loaded from the second slot, i.e., the bootloader configured for the new version of the system is loaded, thereby enabling the bootloader to upgrade the target peripheral module.
[0148] In some implementations, system upgrades and target peripheral module upgrades can be performed simultaneously according to the above embodiments. Alternatively, the system and target peripheral modules can be upgraded independently. For example, the system upgrade can be completed first, enabling the display device to update the first partition, and the bootloader configured in the new version of the system to read the upgrade flag bits corresponding to each peripheral module in the first partition and the power-off memory storage area, thereby supporting peripheral upgrades. Subsequently, the display device can query the target peripheral module from the server, obtain the first upgrade program data for the target peripheral module, install the first upgrade program data in the updated first partition, and prompt the user not to power off. When the display device restarts again, it can load and run the current system's bootloader to complete the upgrade of the target peripheral module. Those skilled in the art can formulate adapted upgrade strategies and upgrade processing logic according to the upgrade requirements of the system and peripherals, and according to the application scenario, and are not limited to the embodiments of this application. The UI drawings provided in the embodiments of this application are merely exemplary.
[0149] In some implementations, embodiments of this application also provide a server, which includes, but is not limited to, a communicator and a controller. The communicator in the server is used to establish a communication connection between the server and the display device. The controller in the server can be used to perform the following: setting the target peripheral module to be upgraded based on the peripheral modules included in the display device; generating an upgrade package during the compilation phase, the upgrade package including first upgrade program data for updating the target peripheral module; formulating an upgrade strategy, recording an upgrade switch identifier corresponding to each peripheral module in the upgrade strategy, the upgrade switch identifier including an upgradeable identifier and a non-upgradeable identifier, the upgrade switch identifier corresponding to the target peripheral module being an upgradeable identifier; and pushing a system upgrade message to the display device. After sending a system upgrade message to the display device, if the server receives a query request from the display device, it can send the formulated upgrade strategy to the display device; if the server receives a download request from the display device, it can send the upgrade package to the display device.
[0150] In some implementations, embodiments of this application also provide a computer storage medium that can store a program. When the computer storage medium is configured in the display device 200, the program, when executed, can include program steps of a system upgrade method configured for the controller 250. The computer storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.
[0151] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some or all of the technical features therein. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
[0152] For ease of explanation, the above description has been provided in conjunction with specific embodiments. However, the foregoing exemplary discussion is not intended to be exhaustive or to limit the embodiments to the specific forms disclosed above. Various modifications and variations can be made based on the foregoing teachings. The selection and description of the above embodiments are for the purpose of better explaining the contents of this disclosure, thereby enabling those skilled in the art to better utilize the described embodiments.
Claims
1. A display device, characterized in that, include: A communicator used for communication connections with the server; At least one peripheral module is installed on the controller, or installed inside the display device and outside the controller, the peripheral module being used to execute a configured software program; The controller is used to perform: When a system upgrade message is received from the server, the system queries the server for the target peripheral module to be upgraded. Download and install the upgrade package, and obtain the first upgrade program data of the target peripheral module from the upgrade package. The upgrade package includes system upgrade program data and the first upgrade program data. The first upgrade program data is installed in the updated first partition. The first partition is the partition type that the display device has expanded and updated for upgrading peripherals, and is used to install the first upgrade program data. When the display device restarts, the bootloader of the new version system configuration is loaded so that the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module; After the target peripheral module upgrade is completed, the new version of the system is started.
2. The display device according to claim 1, characterized in that, After acquiring the target peripheral module, the controller is also configured to perform: Access the power-off memory storage area, which stores the upgrade flag bit corresponding to each peripheral module; Set the first upgrade flag corresponding to the target peripheral module to a first status value; the first status value is used to instruct the bootloader to obtain the first upgrade program data from the first partition and upgrade the target peripheral module when the display device restarts.
3. The display device according to claim 2, characterized in that, After the target peripheral module upgrade is completed, the controller is also used to perform: Set the first upgrade flag corresponding to the target peripheral module to the second state value, which indicates that the target peripheral module is not upgraded.
4. The display device according to claim 3, characterized in that, The controller is also used to perform: When the display device restarts, if it is detected that the upgrade flag bit corresponding to each peripheral module stored in the power failure memory storage area is the second state value, no peripheral module will be upgraded. Start the new version of the system.
5. The display device according to claim 1, characterized in that, The controller queries the server for the target peripheral module to be upgraded, including: The upgrade policy is obtained from the server. The upgrade policy records the upgrade switch identifier corresponding to each peripheral module. The upgrade switch identifier includes an upgradeable identifier and a non-upgradeable identifier. Obtain the target peripheral module that has the upgradeable identifier set.
6. The display device according to claim 2, characterized in that, The display device further includes a display; the controller is also configured to perform: After setting the first upgrade flag corresponding to the target peripheral module to the first state value, the display is controlled to show the first prompt page; the first prompt page is used to prompt that the software program of the target peripheral module needs to be updated during the system upgrade process, and the power should not be cut off before the upgrade is completed. And / or, after the first upgrade program data is installed to the first partition, the display is controlled to show a second prompt page, the second prompt page including a second confirmation button; the second prompt page is used to indicate that the upgrade package has been successfully installed, and that the software program of the target peripheral module needs to be updated when the new version system restarts, and the power should not be cut off before the upgrade is completed; And / or, in response to the user clicking the second confirmation button, control the display to show a third prompt page, the third prompt page including a third confirmation button; the third prompt page is used to indicate that the device is about to restart, and the software program of the target peripheral module needs to be updated during the restart, and the power should not be cut off before the upgrade is completed; In response to the user clicking the third confirmation button, the Reboot interface is invoked to restart the display device.
7. The display device according to claim 1, characterized in that, The controller includes: an active first slot and an inactive second slot, in which the current legacy system runs, and the first slot is configured to execute: After downloading the upgrade package, install the upgrade package in the second slot; After the display device restarts, the currently active slot is switched to the second slot, and the bootloader of the new version of the system configuration is loaded from the second slot.
8. A server, characterized in that, include: A communicator for communicating with a display device, the display device including a peripheral module for executing a configured software program, the peripheral module being mounted on a controller, or mounted inside the display device and outside the controller; The controller is used to perform: Based on the peripheral modules included in the display device, the target peripheral module to be upgraded is set; During the compilation phase, an upgrade package is generated, which includes first upgrade program data for updating the target peripheral module and system upgrade program data for the display device. An upgrade strategy is formulated, and the upgrade switch identifier corresponding to each peripheral module is recorded in the upgrade strategy. The upgrade switch identifier includes an upgradeable identifier and a non-upgradeable identifier. The upgrade switch identifier corresponding to the target peripheral module is the upgradeable identifier. The system upgrade message is pushed to the display device so that the display device queries the server for the target peripheral module to be upgraded; Download and install the upgrade package, obtain the first upgrade program data of the target peripheral module from the upgrade package, wherein the first upgrade program data is installed in the updated first partition, the first partition being an extended and updated partition type of the display device for upgrading peripherals, used to install the first upgrade program data; when the display device restarts, load the bootloader configured in the new version system, so that the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module; after the target peripheral module upgrade is completed, start the new version system.
9. A system upgrade method, characterized in that, For a display device, the display device including at least one peripheral module mounted on a controller, or mounted inside the display device and outside the controller, the peripheral module being used to execute a configured software program, the method comprising: When the display device receives a system upgrade message pushed by the server, it queries the server for the target peripheral module to be upgraded. The display device downloads and installs an upgrade package, and obtains the first upgrade program data of the target peripheral module from the upgrade package. The upgrade package includes system upgrade program data and the first upgrade program data. The first upgrade program data is installed in the updated first partition. The first partition is a partition type that the display device has expanded and updated for upgrading peripherals, and is used to install the first upgrade program data. When the display device restarts, it loads the bootloader configured with the new version of the system, so that the bootloader obtains the first upgrade program data from the first partition and uses the first upgrade program data to upgrade the target peripheral module. After the target peripheral module is upgraded, the display device starts the new version of the system.
10. A system upgrade method, characterized in that, For use on servers, including: The server configures the target peripheral module to be upgraded in the display device according to the peripheral modules included in the display device. The display device includes at least one peripheral module, which is installed on the controller or installed inside the display device and outside the controller. The peripheral module is used to execute the configured software program. During the compilation phase, the server generates an upgrade package, which includes first upgrade program data for updating the target peripheral module and system upgrade program data for the display device. The server formulates an upgrade strategy, and records the upgrade switch identifier corresponding to each peripheral module in the upgrade strategy. The upgrade switch identifier includes an upgradeable identifier and a non-upgradeable identifier. The upgrade switch identifier corresponding to the target peripheral module is the upgradeable identifier. The server pushes a system upgrade message to the display device, enabling the display device to query the server for the target peripheral module to be upgraded; downloads and installs the upgrade package, and obtains the first upgrade program data of the target peripheral module from the upgrade package, wherein the first upgrade program data is installed in the updated first partition, which is an extended partition type of the display device updated for peripheral upgrades, used to install the first upgrade program data; when the display device restarts, it loads the bootloader configured in the new version of the system, enabling the bootloader to obtain the first upgrade program data from the first partition and use the first upgrade program data to upgrade the target peripheral module; after the target peripheral module upgrade is completed, the new version of the system is started.
Citation Information
Patent Citations
OTA upgrading method and device, electronic equipment and storage medium
CN113076117A
Compatible execution method for system upgrading task and video recording task and display equipment
CN114173179A
Remote online firmware upgrading method and system for embedded device in one-master multi-slave mode
CN114866525A