[go: up one dir, main page]

US20220374312A1 - Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof - Google Patents

Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof Download PDF

Info

Publication number
US20220374312A1
US20220374312A1 US17/581,015 US202217581015A US2022374312A1 US 20220374312 A1 US20220374312 A1 US 20220374312A1 US 202217581015 A US202217581015 A US 202217581015A US 2022374312 A1 US2022374312 A1 US 2022374312A1
Authority
US
United States
Prior art keywords
bootloader
internal path
recovery
electronic device
mobile electronic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US17/581,015
Inventor
Daeman KO
Sanguk Park
Sunghyun NA
Wooseok OH
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Assigned to SAMSUNG ELECTRONICS CO., LTD. reassignment SAMSUNG ELECTRONICS CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KO, DAEMAN, NA, SUNGHYUN, OH, WOOSEOK, PARK, Sanguk
Publication of US20220374312A1 publication Critical patent/US20220374312A1/en
Priority to US18/452,181 priority Critical patent/US12189481B2/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error
    • G06F11/1423Reconfiguring to eliminate the error by reconfiguration of paths
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency

Definitions

  • Example embodiments relate generally to semiconductor integrated circuits, and more particularly to a method of recovering a bootloader in a mobile electronic device and a bootloader recovery system performing the method of recovering the bootloader.
  • a bootloader included in an embedded system such as a mobile electronic device is a program for loading a kernel, checking and initializing various hardware and starting an operating system (OS). Accordingly, the bootloader may check and initialize processors, memories and/or networks included in the mobile electronic device, and when an error occurs in the OS, the bootloader performs a recovery operation on the OS such that the electronic device can self-recovering the OS.
  • OS operating system
  • the mobile electronic device cannot recover the bootloader by itself.
  • a user of the mobile electronic device disassembles the mobile electronic device, changes a boot mode of the electronic device, and re-installs an original bootloader.
  • Some example embodiments may provide a method and a system for a mobile electronic device, capable of recovering a bootloader and improving an efficiency of a development process.
  • a bootloader recovery signal is transmitted from a bridge board to the mobile electronic device.
  • the bridge board includes a first internal path and a second internal path.
  • the mobile electronic device includes a third internal path and a fourth internal path.
  • the bootloader recovery request signal is transmitted based on the first internal path and the third internal path.
  • a boot mode of the mobile electronic device is changed based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal.
  • Bootloader recovery data is transmitted from a host device to the bridge board based on the changed boot mode.
  • the bootloader recovery data is transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path.
  • a bootloader recovery system includes a bridge board, a mobile electronic device and a host device.
  • the bridge board includes a first processor, first and second internal paths and a first internal path selector.
  • the first internal path selector selects one of the first and second internal paths under a control of the first processor.
  • the mobile electronic device electrically connected to the bridge board, and includes a second processor, third and fourth internal paths and a second internal path selector.
  • the second internal path selector selects one of the third and fourth internal paths under a control of the second processor.
  • the host device electrically connected to the mobile electronic device.
  • the bridge board transmits a bootloader recovery request signal to the mobile electronic device based on the first internal path and the third internal path.
  • the mobile electronic device changes a boot mode based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal.
  • the host device transmits bootloader recovery data to the bridge board based on the changed boot mode.
  • the bridge board transmits the bootloader recovery data to the mobile electronic device based on the second internal path and the third internal path.
  • a bootloader recovery signal is transmitted from a bridge board to the mobile electronic device.
  • the bridge board includes a first internal path and a second internal path.
  • the mobile electronic device includes a third internal path and a fourth internal path.
  • the bootloader recovery request signal is transmitted based on the first internal path and the third internal path.
  • a boot mode of the mobile electronic device is changed based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal.
  • Bootloader recovery data is transmitted from a host device to the bridge board based on the changed boot mode.
  • the bootloader recovery data is transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path.
  • the bootloader is recovered based on the bootloader recovery data.
  • the bridge board includes a first connector
  • the mobile electronic device includes a second connector
  • the bridge board and the mobile electronic device are connected to each other through the first connector and the second connector.
  • Each of the first connector and the second connector includes a first pin and a second pin.
  • the bootloader recovery request signal is generated by setting a voltage level of the first pin and the second pin to a logic high level.
  • FIG. 1 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • FIG. 2 is a diagram illustrating a bootloader recovery system according to example embodiments.
  • FIG. 3 is a block diagram illustrating example embodiments of the bootloader recovery system of FIG. 2 .
  • FIG. 4 is a block diagram illustrating example embodiments of the first and second connectors and the first and second internal path selectors in FIG. 3 .
  • FIG. 5 is a diagram for describing a process of transmitting the bootloader recovery request signal in FIG. 1 .
  • FIG. 6 is a diagram for describing a bootloader recovery request signal in FIG. 1 .
  • FIG. 7 is a flowchart illustrating example embodiments of changing the boot mode of the mobile electronic device in FIG. 1 .
  • FIG. 8 is a flowchart illustrating example embodiments of transmitting the first recovery ready signal in FIG. 7 .
  • FIG. 9 is a diagram for describing a process of transmitting the first recovery ready signal in FIG. 7 .
  • FIG. 10 is a flowchart illustrating example embodiments of transmitting the second recovery ready signal in FIG. 7 .
  • FIG. 11 is a diagram for describing a process of transmitting the second recovery ready signal in FIG. 7 .
  • FIG. 12 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7 .
  • FIG. 13 is a diagram for describing a process of transmitting the bootloader recovery execution signal in FIG. 7 .
  • FIG. 14 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7 .
  • FIG. 15 is a diagram for describing a process of transmitting the bootloader recovery data in FIG. 1 .
  • FIG. 16 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • FIG. 17 is a block diagram illustrating example embodiments of the mobile electronic device in the bootloader recovery system of FIG. 2 .
  • FIG. 1 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • a method of recovering a bootloader in a mobile electronic device may be performed by a bootloader recovery system in which a bridge board is electrically connected between the mobile electronic device and a host device.
  • the mobile electronic device When the mobile electronic device is powered on by a user, the mobile electronic device may perform a booting process of executing a series of operations starting with a kernel initialization.
  • the booting process may be performed by the bootloader.
  • the bootloader may load an operating system (OS) and data stored in a storage device into an internal memory, and call an ‘initialization process’.
  • the initialization process may initialize the mobile electronic device and execute various daemons, a context manager, a media server and Zygote, and the like required for operations of frameworks.
  • the bootloader may be recovered by targeting the mobile electronic device in which the booting process is not normally performed due to an error in the bootloader. Detailed components included in the bootloader recovery system will be described later with reference to FIGS. 2 and 3 .
  • the bridge board may include a first internal path and a second internal path
  • the mobile electronic device may include a third internal path and a fourth internal path
  • a bootloader recovery request signal may be transmitted from the bridge board to the mobile electronic device based on the first internal path and the third internal path (S 100 ).
  • the first internal path and the fourth internal path may operate based on a first communication scheme
  • the second internal path and the third internal path may operate based on a second communication scheme different from the first communication scheme
  • the first communication scheme may be based on an universal asynchronous receiver transmitter (UART) communication standard
  • the second communication scheme may be based on an universal serial bus (USB) communication standard.
  • UART universal asynchronous receiver transmitter
  • USB universal serial bus
  • the bootloader recovery request signal may be a signal requesting to change an order of devices used during a default booting.
  • the default booting may represent a process of loading the bootloader from devices included in the mobile electronic device according to a predetermined or alternatively, desired order when the mobile electronic device is powered on.
  • the default booting may be configured to search for the bootloader from the storage device, and then to search for the bootloader from a USB device when the bootloader is not searched from the storage device. When the bootloader is searched, the bootloader may be loaded from the searched device.
  • a boot mode of the mobile electronic device may be changed based on the first internal path and the fourth internal path (S 200 ).
  • the order of devices referenced according to the default booting may be changed.
  • the bootloader may be searched directly from the USB device without searching the storage device.
  • Bootloader recovery data may be transmitted from the host device to the bridge board based on the changed boot mode (S 300 ).
  • the bootloader recovery data may be transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path (S 400 ).
  • the host device may store a bootloader that does not have an error.
  • the host device may transmit the bootloader as the bootloader recovery data to the bridge board.
  • the mobile electronic device may receive the bootloader recovery data based on the third internal path (S 500 ).
  • the bootloader of the mobile electronic device may be recovered based on the bootloader recovery data (S 600 ).
  • the bootloader with the error stored in the mobile electronic device may be replaced with the bootloader recovery data, and the bootloader recovery data may operate as a new bootloader.
  • waterproof and/or dustproof capabilities of the mobile electronic device may be considered important, once the mobile electronic device is disassembled, it may not be guaranteed whether the waterproof and/or dustproof capabilities of the mobile electronic device may be maintained even when the mobile electronic device is reassembled.
  • the mobile electronic device is disassembled whenever debugging is required due to an error in the bootloader during a development process of the mobile electronic device, a redundant or unnecessary process is repeated several times, which may reduce efficiency of the development process.
  • the bootloader having an error may be recovered without disassembling the mobile electronic device. Accordingly, when the method of recovering the bootloader is executed, the efficiency of the development process may be improved without deteriorating the waterproof and/or dustproof capabilities of the mobile electronic device.
  • FIG. 2 is a diagram illustrating a bootloader recovery system according to example embodiments.
  • FIG. 3 is a block diagram illustrating example embodiments of the bootloader recovery system of FIG. 2 .
  • a bootloader recovery system 10 may include a mobile electronic device 100 , a bridge board 300 and a host device 500 .
  • the bridge board 300 may be electrically connected between the mobile electronic device 100 and the host device 500 .
  • the bridge board 300 and the mobile electronic device 100 may communicate with each other based on a first communication scheme and a second communication scheme, and the bridge board 300 and the host device 500 may communicate with each other based on the second communication scheme.
  • the first communication scheme may be based on the UART communication standard
  • the second communication scheme may be based on the USB communication standard
  • a bootloader having an error may be stored in the mobile electronic device 100
  • a bootloader not having an error e.g., an original bootloader may be stored in the host device 500 .
  • the bridge board 300 may include a first processor 311 , a first internal path selector 313 , a first connector 350 and/or a third connector 370 .
  • the first internal path selector 313 may include a first interface circuit 315 .
  • the first processor 311 may control overall operations of the components 313 , 315 , 350 and 370 included in the bridge board 300 .
  • the first processor 311 may include a micro controller unit (MCU), may generate a first control signal PCTL 1 and may transmit the first control signal PCTL 1 to the first internal path selector 313 .
  • the first processor 311 may control the first internal path selector 313 based on the first control signal PCTL 1 .
  • the first processor 311 may control the first internal path selector 313 such that the first connector 350 and the first processor 311 are connected by the first internal path IP 1 or the first connector 350 and the third connector 370 are connected by the second internal path IP 2 .
  • the first processor 311 may generate the bootloader recovery request signal described above with reference to FIG. 1 , and the bootloader recovery request signal may be transmitted from the bridge board 300 to the mobile electronic device 100 when the first connector 350 and the first processor 311 are connected through the first internal path IP 1 .
  • the host device 500 may store bootloader recovery data 590 , and the bootloader recovery data 590 may be transmitted from the host device 500 to the mobile electronic device 100 when the first connector 350 and the third connector 370 are connected through the second internal path IP 2 .
  • the mobile electronic device 100 may include an application processor (AP) 110 , a storage device 130 and/or a second connector 150 .
  • the application processor 110 may include a second processor 111 and/or a second internal path selector 113 .
  • the second internal path selector 113 may include a second interface circuit 115 .
  • the second processor 111 may control overall operations of the components 113 , 115 , 130 and 150 included in the mobile electronic device 100 .
  • the second processor 111 may include a central processing unit (CPU), and the second processor 111 may generate a second control signal PCTL 2 and may transmit the second control signal PCTL 2 to the second internal path selector 113 .
  • the second processor 111 may control the second internal path selector 113 based on the second control signal PCTL 2 .
  • the second processor 111 may control the second internal path selector 113 such that the second connector 150 and the second processor 111 are connected by the third internal path IP 3 or the second connector 150 and the second processor 111 are connected by the fourth internal path IP 4 .
  • the second processor 111 may receive the bootloader recovery request signal described above with reference to FIG. 1 , and the bootloader recovery request signal may be received by the mobile electronic device 100 when the second connector 150 and the second processor 111 are connected through the third internal path IP 3 .
  • the second processor 111 may change the boot mode described above with reference to FIG. 1 , and the boot mode may be changed when the second connector 150 and the second processor are connected through the fourth internal path IP 4 .
  • the second processor 111 may receive the bootloader recovery data 590 , and the bootloader recovery data 590 is received by the mobile electronic device 100 when the second connector 150 and the second processor are connected through the third internal path IP 3 .
  • the storage device 130 may store the damaged bootloader, and when the original bootloader stored in the host device 500 is transmitted to the mobile electronic device 100 as bootloader recovery data 590 , the storage device 130 may replace the damaged bootloader with the bootloader recovery data 590 to store the bootloader recovery data 590 .
  • the host device 500 may include a fourth connector 550 .
  • the mobile electronic device 100 and the bridge board 300 may connected through the first connector 350 and the second connector 150 , and the bridge board 300 and the host device 500 may connected through the third connector 370 and the fourth connector 550 .
  • the first connector 350 , the second connector 150 , the third connector 370 and the fourth connector 550 may be connectors for basically performing the second communication scheme.
  • each of the first to fourth connectors 150 , 350 , 370 and 550 may be a USB connector.
  • interface circuits for performing the first communication scheme may be connected to data pins among a plurality of pins included in each of the first and second connectors 150 and 350 , and thus the first and second connectors 150 and 350 may be diverted to perform the first communication scheme other than the second communication scheme.
  • FIG. 4 is a block diagram illustrating example embodiments of the first and second connectors and the first and second internal path selectors in FIG. 3 .
  • the first internal path selector 313 may include the first interface circuit 315
  • the second internal path selector 113 may include the second interface circuit 115 .
  • the first interface circuit 315 may include a first communication interface circuit 315 a, a second communication interface circuit 315 b and a first path selection circuit 315 c.
  • the second interface circuit 115 may include a third communication interface circuit 115 a, a fourth communication interface circuit 115 b and a second path selection circuit 115 c.
  • Each of the first connector 350 and the second connector 150 may include a plurality of pins.
  • the first connector 350 may include first to fourth pins 351 , 352 , 353 and 354
  • the second connector 150 may include fifth to eighth pins 151 , 152 , 153 and 154 .
  • the first to fourth pins 351 , 352 , 353 and 354 and the fifth to eighth pins 151 , 152 , 153 and 154 may be electrically connected to each other.
  • the first pin 351 and the fifth pin 151 may be connected to each other.
  • the second pin 352 and the sixth pin 152 may be connected to each other.
  • the third pin 353 and the seventh pin 153 may be connected to each other.
  • the fourth pin 354 and the eighth pin 154 may be connected to each other.
  • each of the second pin 352 , the third pin 353 , the sixth pin 152 and the seventh pin 153 may be a data pin.
  • data including arbitrary information may be transmitted in a form of a differential signal from the second and third pins 352 and 353 to the sixth and seventh pins 152 and 153 or in the opposite direction.
  • the second and third pins 352 and 353 may be connected to one of the first communication interface circuit 315 a and the second communication interface circuit 315 b, and the sixth and seventh pins 152 and 153 may be connected to one of the third communication interface circuit 115 a and the fourth communication interface circuit 115 b.
  • the first path selection circuit 315 c may receive the first control signal PCTL 1 and may connect the second and third pins 352 and 353 with one of the first communication interface circuit 315 a and the second communication interface circuit 315 b, based on the first control signal PCTL 1 .
  • the second path selection circuit 115 c may receive the second control signal PCTL 2 and may connect the sixth and seventh pins 152 and 153 with one of the third communication interface circuit 115 a and the fourth communication interface circuit 115 b, based on the second control signal PCTL 2 .
  • the first communication interface circuit 315 a may be disposed between the first internal path IP 1 and the second and third pins 352 and 353
  • the second communication interface circuit 315 b may be disposed between the second internal path IP 2 and the second and third pins 352 and 353
  • the third communication interface circuit 115 a may be disposed between the third internal path IP 3 and the sixth and seventh pins 152 and 153
  • the fourth communication interface circuit 115 b may be disposed between the fourth internal path IP 4 and the sixth and seventh pins 152 and 153 .
  • first and fifth pins 351 and 151 may be connected to a power supply voltage VDD, and the fourth and eighth pins 354 and 154 may be connected to a ground voltage GND.
  • signals and/or data may be exchanged between the first processor 311 and the second processor 111 illustrated in FIG. 3 , and may also be exchanged between the mobile electronic device 100 , the bridge board 300 and the host device 500 .
  • the first communication scheme described above with reference to FIG. 1 may be performed by the first communication interface circuit 315 a and the fourth communication interface circuit 115 b.
  • the second communication scheme described above with reference to FIG. 1 may be performed by the second communication interface circuit 315 b and the third communication interface circuit 115 a.
  • the first communication interface circuit 315 a may correspond to the first internal path IP 1
  • the second communication interface circuit 315 b may correspond to the second internal path IP 2
  • the third communication interface circuit 115 a may correspond to the third internal path IP 3
  • the fourth communication interface circuit 115 b may correspond to the fourth internal path IP 4 .
  • the first communication scheme may be performed by the first internal path IP 1 and the fourth internal path IP 4
  • the second communication scheme may be performed by the second internal path IP 2 and the third internal path IP 3 .
  • FIG. 5 is a diagram for describing a process of transmitting the bootloader recovery request signal in FIG. 1 .
  • a bootloader recovery request signal BR_SIG may correspond to a signal initially transmitted between the mobile electronic device 100 , the bridge board 300 and the host device 500 included in the bootloader recovery system 10 . That is, the method of recovering the bootloader according to example embodiments may be started by the bootloader recovery request signal BR_SIG.
  • the bridge board 300 may generate the bootloader recovery request signal BR_SIG and transmit the bootloader recovery request signal BR_SIG to the mobile electronic device 100 or the first processor 311 .
  • the bridge board 300 may set a voltage level of each of the second and third pins 352 and 353 to a predetermined or alternatively, desired voltage level to generate the bootloader recovery request signal BR_SIG.
  • the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the third communication interface circuit 115 a.
  • the bootloader recovery request signal BR_SIG may be transmitted from the bridge board 300 to the mobile electronic device 100 through the first internal path IP 1 , the first communication interface circuit 315 a, the third communication interface circuit 115 a and the third internal path IP 3 sequentially.
  • the bootloader recovery request signal BR_SIG since the bootloader recovery request signal BR_SIG is transmitted through the third communication interface circuit 115 a included in the mobile electronic device 100 , the bootloader recovery request signal BR_SIG may be interpreted according to the second communication scheme performed by the third communication interface circuit 115 a. As described above with reference to FIGS. 2 and 3 , the second communication scheme may be based on the USB communication standard. Hereinafter, the bootloader recovery request signal BR_SIG will be described.
  • FIG. 6 is a diagram for describing a bootloader recovery request signal in FIG. 5 .
  • the bootloader recovery request signal BR_SIG may be generated based on one of a plurality of bus states according to the second communication scheme, e.g., USB communication.
  • the plurality of bus states may include first to fourth bus states D 1 , D 0 , SE 0 and SE 1 .
  • the first bus state D 1 may set a voltage level of a first data signal DP to a logic high level and a voltage level of a second data signal DM to a logic low level to represent a digital differential signal ‘ 1 ’.
  • the second bus state DO may set the voltage level of the first data signal DP to the logic low level and the voltage level of the second data signal DM to the logic high level to represent a digital differential signal ‘ 0 ’.
  • the third bus state SE 0 (single-ended zero) may set the voltage levels of the first data signal DP and the second data signal DM to be equal to or less than a first threshold voltage level for more than a predetermined or alternatively, desired time to represent a disconnected state.
  • the fourth bus state SE 1 (single-ended one) may set the voltage levels of the first data signal DP and the second data signal DM to be equal to or higher than a second threshold voltage level different from the first threshold voltage level to represent an illegal state.
  • the fourth bus state SE 1 may be a bus state that is not used for data communication between devices when the second communication scheme is used for a general purpose. Accordingly, the fourth bus state SE 1 may be used as the bootloader recovery request signal BR_SIG representing the start of the method of recovering the bootloader in the mobile electronic device according to example embodiments.
  • the first data signal DP may correspond to the second pin 352 of the first connector 350
  • the second data signal DM may correspond to the third pin 353 of the first connector 350
  • the bridge board 300 may set voltage levels of the second and third pins 352 and 353 to the logic high levels to generate the bootloader recovery request signal BR_SIG.
  • FIG. 7 is a flowchart illustrating example embodiments of changing the boot mode of the mobile electronic device in FIG. 1 .
  • a first recovery ready signal may be transmitted from the mobile electronic device to the bridge board based on a first internal path and a fourth internal path (S 210 ).
  • a second recovery ready signal may be transmitted from the bridge board to the mobile electronic device based on the first internal path and the fourth internal path (S 250 ).
  • a bootloader recovery execution signal may be transmitted from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path (S 290 ).
  • the first communication scheme described above with reference to FIG. 1 may be performed by the first internal path and the fourth internal path. Accordingly, the first recovery ready signal, the second recovery ready signal and the bootloader recovery execution signal may be transmitted based on the first communication scheme.
  • the first recovery ready signal may include a string “se 1 d ” as payload data
  • the second recovery ready signal may include a string “se 1 r ” as the payload data
  • the bootloader recovery execution signal may include a string “go” as the payload data.
  • the mobile electronic device and the bridge board may transmit and receive the first recovery ready signal, the second recovery ready signal and the bootloader recovery execution signal based on the UART communication.
  • FIG. 8 is a flowchart illustrating example embodiments of transmitting the first recovery ready signal in FIG. 7 .
  • the operation of transmitting the first recovery ready signal may be performed by the mobile electronic device 100 .
  • the mobile electronic device 100 may determine whether the bootloader recovery request signal is received based on the voltage level of each of the sixth and seventh pins 152 and 153 included in the second connector 150 . For example, when the voltage level of each of the sixth pin 152 connected to the second pin 352 of the first connector 350 and the seventh pin 153 connected to the third pin 353 of the first connector 350 correspond to the logic high level, it may be determined that the bootloader recovery request signal is received.
  • the fourth internal path IP 4 of the mobile electronic device 100 may be enabled to communicate with the bridge board 300 based on the first communication scheme (S 213 ).
  • the third internal path IP 3 of the mobile electronic device 100 may be disabled (S 217 ).
  • the first recovery ready signal may be transmitted from the mobile electronic device 100 to the bridge board 300 based on the first internal path IP 1 and the fourth internal path IP 4 (S 217 ).
  • the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 to the fourth communication interface circuit 115 b based on the second control signal PCTL 2 to enable the fourth internal path IP 4 and disable the third internal path IP 3 .
  • FIG. 9 is a diagram for describing a process of transmitting the first recovery ready signal in FIG. 7 .
  • the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the fourth communication interface circuit 115 b.
  • the first recovery ready signal 1ST_RR_SIG may be transmitted from the mobile electronic device 100 to the bridge board 300 through the fourth internal path IP 4 , the fourth communication interface circuit 115 b, the first communication interface circuit 315 a and the first internal path IP 1 sequentially.
  • the first recovery ready signal 1ST_RR_SIG since the first recovery ready signal 1ST_RR_SIG is transmitted through the first communication interface circuit 315 a, the first recovery ready signal 1ST_RR_SIG may be interpreted according to the first communication scheme performed by the first communication interface circuit 315 a. As described above with reference to FIGS. 2 and 3 , the first communication scheme may be based on the UART communication standard.
  • FIG. 10 is a flowchart illustrating example embodiments of transmitting the second recovery ready signal in FIG. 7 .
  • transmitting the second recovery ready signal may be performed by the bridge board 300 .
  • the transmitting the second recovery ready signal it may be determined whether the first recovery ready signal is received (S 251 ).
  • the bridge board 300 may interpret payload data included in signal received from the mobile electronic device 100 to determine whether the first recovery ready signal is received. For example, when the received signal includes the string “se 1 d ”, the first processor 311 may determine that the first recovery ready signal is received.
  • the second recovery ready signal may be transmitted based on the first internal path IP 1 and the fourth internal path IP 4 (S 253 ).
  • FIG. 11 is a diagram for describing a process of transmitting the second recovery ready signal in FIG. 7 .
  • the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the fourth communication interface circuit 115 b.
  • the second recovery ready signal 2ND_RR_SIG may be transmitted from the bridge board 300 to the mobile electronic device 100 through the first internal path IP 1 , the first communication interface circuit 315 a, the fourth communication interface circuit 115 b and the fourth internal path IP 4 sequentially.
  • the second recovery ready signal 2ND_RR_SIG since the second recovery ready signal 2ND_RR_SIG is transmitted through the fourth communication interface circuit 115 b, the second recovery ready signal 2ND_RR_SIG may be interpreted according to the first communication scheme performed by the fourth communication interface circuit 115 b. As described above with reference to FIGS. 2 and 3 , the first communication scheme may be based on the UART communication standard.
  • FIG. 12 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7 .
  • transmitting the bootloader recovery execution signal may be performed by the mobile electronic device 100 .
  • the mobile electronic device 100 may interpret payload data included in signal received from the bridge board 300 to determine whether the second recovery ready signal is received. For example, when the received signal includes the string “se 1 r ”, the second processor 111 may determine that the second recovery ready signal is received.
  • the bootloader recovery execution signal may be transmitted based on the first internal path IP 1 and the fourth internal path IP 4 (S 293 ).
  • FIG. 13 is a diagram for describing a process of transmitting the bootloader recovery execution signal in FIG. 7 .
  • the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the fourth communication interface circuit 115 b.
  • the bootloader recovery execution signal BR_PG_SIG may be transmitted from the mobile electronic device 100 to the bridge board 300 through the fourth internal path IP 4 , the fourth communication interface circuit 115 b, the first communication interface circuit 315 a and the first internal path IP 1 sequentially.
  • the bootloader recovery execution signal BR_PG_SIG since the bootloader recovery execution signal BR_PG_SIG is transmitted through the first communication interface circuit 315 a, the bootloader recovery execution signal BR_PG_SIG may be interpreted according to the first communication scheme performed by the first communication interface circuit 315 a. As described above with reference to FIGS. 2 and 3 , the first communication scheme may be based on the UART communication standard.
  • FIG. 14 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7 .
  • the third internal path IP 3 of the mobile electronic device 100 may be enabled (S 295 ).
  • the enabling the third internal path IP 3 may be performed by the mobile electronic device 100 .
  • the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 to the third communication interface circuit 115 a based on the second control signal PCTL 2 to enable the third internal path IP 3 and disable the fourth internal path IP 4 .
  • the second internal path IP 2 of the bridge board 300 may be enabled (S 297 ).
  • the enabling the second internal path IP 2 may be performed by the bridge board 300 .
  • the first path selection circuit 315 c may connect the second and third pins 352 and 353 to the second communication interface 315 b based on the first control signal PCTL 1 to enable the second internal path IP 2 and disable the first internal path IP 1 .
  • FIG. 15 is a diagram for describing a process of transmitting the bootloader recovery data in FIG. 1 .
  • the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the second communication interface circuit 315 b, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the third communication interface circuit 115 a.
  • the bootloader recovery data BR_DAT may be transmitted to the bridge board 300 through the second internal path IP 2 , the second communication interface circuit 315 b, the third communication interface circuit 115 a and the third internal path IP 3 sequentially.
  • the bootloader recovery data BR_DAT since the bootloader recovery data BR_DAT is transmitted through the third communication interface circuit 115 a, the bootloader recovery data BR_DAT may be interpreted according to the second communication scheme performed by the third communication interface circuit 115 a. As described above with reference to FIGS. 2 and 3 , the second communication scheme may be based on the USB communication standard.
  • FIG. 16 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • a method of recovering a bootloader in a mobile electronic device may be performed by a bootloader recovery system in which a bridge board is electrically connected between the mobile electronic device and a host device.
  • a bridge board is electrically connected between the mobile electronic device and a host device.
  • the mobile electronic device may determine whether the bootloader recovery request signal is received (S 110 ).
  • the transmitting the bootloader recovery request signal from the bridge board to the mobile electronic device described above with reference to FIG. 1 may be performed before S 110 .
  • a first recovery ready signal may be transmitted from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path (S 210 ).
  • the bridge board may transmit a second recovery ready signal to the mobile electronic device based on the first internal path and the fourth internal path.
  • the mobile electronic device may transmit bootloader recovery data to the bridge board based on the first internal path and the fourth internal path (S 290 ).
  • the host device may transmit the bootloader recovery data to the bridge board, the bridge board may transmit the bootloader recovery data to the mobile electronic device based on the second internal path and the third internal path, and the mobile electronic device may receive the bootloader recovery data (S 300 ).
  • the mobile electronic device may determine whether a predetermined or alternatively, desired time interval is elapsed from a first time point.
  • the first time point may represent a time point at which the first recovery ready signal is transmitted from the mobile electronic device to the bridge board.
  • the mobile electronic device may transmit a bootloader recovery execution cancellation signal from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path (S 273 ).
  • the mobile electronic device may perform a default booting (S 700 ).
  • the bootloader recovery execution cancellation signal may include a “to” string as payload data.
  • the predetermined or alternatively, desired time internal in S 270 may be ‘100 ms’.
  • the mobile electronic device may re-determine whether the second recovery ready signal is received (S 270 ) within the predetermined or alternatively, desired time interval from the first time point (S 271 : NO).
  • FIG. 17 is a block diagram illustrating example embodiments of the mobile electronic device in the bootloader recovery system of FIG. 2 .
  • a mobile electronic device 1000 may include a SOC 2000 , a memory device 1200 , a storage device 1300 , a plurality of functional modules 1400 , 1500 , 1600 and 1700 , and/or a power management integrated circuit (PMIC) 1800 .
  • PMIC power management integrated circuit
  • the SOC 2000 controls overall operations of the mobile electronic device 1000 .
  • the SOC 2000 may control the memory device 1200 , the storage device 1300 and the plurality of functional modules 1400 , 1500 , 1600 and 1700 .
  • the SOC 2000 may be an application processor (AP).
  • AP application processor
  • the SOC 2000 may include a system bus 2100 , a host processor (CPU) 600 and a communication interface circuit (CIFC) 800 .
  • CPU host processor
  • CIFC communication interface circuit
  • the communication interface circuit 800 may correspond to the second connector 150 and the second internal path selector 113 or the second connector 150 and the second interface circuit 115 described above with reference to FIG. 3 . Accordingly, the communication interface circuit 800 may communicate with an external device and/or a bridge board. For example, the communication interface circuit 800 may perform the method of recovering the bootloader in the mobile electronic device according to example embodiments.
  • the host processor 600 may be electrically connected to the system bus 2100 and may control overall operations of the SOC 2000 .
  • the host processor 600 may include a central processing unit (CPU) or at least one of various processors.
  • the memory device 1200 and the storage device 1300 may store the bootloader, instructions, data, etc. necessary for operations of the mobile electronic device 1000 .
  • the memory device 1200 may include a volatile memory device, such as a dynamic random access memory (DRAM), a static random access memory (SRAM), a mobile DRAM, etc.
  • DRAM dynamic random access memory
  • SRAM static random access memory
  • mobile DRAM etc.
  • the storage device 1300 may include a nonvolatile memory device, such as an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a phase change random access memory (PRAM), a resistance random access memory (RRAM), a nano floating gate memory (NFGM), a polymer random access memory (PoRAM), a magnetic random access memory (MRAM), a ferroelectric random access memory (FRAM), etc.
  • the storage device 1300 may further include an embedded multimedia card (eMMC), a universal flash storage (UFS), a solid state drive (SSD), a hard disk drive (HDD), a CD-ROM, etc.
  • eMMC embedded multimedia card
  • UFS universal flash storage
  • SSD solid state drive
  • HDD hard disk drive
  • CD-ROM compact disc-ROM
  • the functional modules 1400 , 1500 , 1600 and 1700 may perform various functions of the mobile electronic device 1000 .
  • the mobile electronic device 1000 may include a communication module 1400 that performs a communication function (e.g., a code division multiple access (CDMA) module, a long term evolution (LTE) module, a radio frequency (RF) module, an ultra-wideband (UWB) module, a wireless local area network (WLAN) module, a worldwide interoperability for a microwave access (WIMAX) module, etc.), a camera module 1500 that performs a camera function, an input-output (I/O) module 1600 including a display module that performs a display function and a touch panel module that performs a touch sensing function, and an audio module 1700 including a microphone (MIC) module, a speaker module, etc.
  • a communication function e.g., a code division multiple access (CDMA) module, a long term evolution (LTE) module, a radio frequency (RF) module, an ultra-
  • the mobile electronic device 1000 may further include a global positioning system (GPS) module, a gyroscope module, etc.
  • GPS global positioning system
  • the functional modules 1400 , 1500 , 1600 and 1700 in the mobile electronic device 1000 are not limited thereto.
  • the PMIC 1800 may provide an operating voltage to the SOC 2000 , the memory device 1200 , the storage device 1300 and the functional modules 1400 , 1500 , 1600 and 1700 .
  • the mobile electronic device 1000 may be a device, such as a desktop computer, a laptop computer, a cellular phone, a smart phone, an MP3 player, a personal digital assistant (PDA), a portable multimedia player (PMP), a digital television, a digital camera, a server computer, a workstation, a set-top box, a portable game console, a navigation system, a wearable device, an internet of things (IoT) device, an internet of everything (IoE) device, an e-book, a virtual reality (VR) device, an augmented reality (AR) device, a drone, etc.
  • the mobile electronic device 1000 may typically be operated in response to direct user input, but may also be used to communicate with other devices via the Internet or other network systems.
  • the bootloader having an error may be recovered without disassembling the mobile electronic device. Accordingly, the efficiency of the development process may be easily improved without impairing the waterproof and/or dustproof capabilities of the mobile electronic device by executing the method of recovering the bootloader.
  • One or more of the elements disclosed above may include or be implemented in one or more processing circuitries such as hardware including logic circuits; a hardware/software combination such as a processor executing software; or a combination thereof.
  • the processing circuitries more specifically may include, but is not limited to, a central processing unit (CPU), an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a System-on-Chip (SoC), a programmable logic unit, a microprocessor, application-specific integrated circuit (ASIC), etc.
  • CPU central processing unit
  • ALU arithmetic logic unit
  • FPGA field programmable gate array
  • SoC System-on-Chip
  • ASIC application-specific integrated circuit
  • the example embodiments may be usefully used in the mobile electronic device in which a booting process is performed by the bootloader.
  • the foregoing is illustrative of example embodiments and is not to be construed as limiting thereof.
  • some example embodiments have been described, those skilled in the art will readily appreciate that many modifications are possible in the example embodiments without materially departing from the novel teachings and advantages of the example embodiments. Accordingly, all such modifications are intended to be included within the scope of the example embodiments as defined in the claims.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Telephone Function (AREA)

Abstract

In a method of recovering a bootloader in a mobile electronic device, a bootloader recovery signal is transmitted from a bridge board to the mobile electronic device. The bridge board includes a first internal path and a second internal path. The mobile electronic device includes a third internal path and a fourth internal path. The bootloader recovery request signal is transmitted based on the first internal path and the third internal path. a boot mode of the mobile electronic device is changed based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal. Bootloader recovery data is transmitted from a host device to the bridge board based on the changed boot mode. The bootloader recovery data is transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path.

Description

    CROSS-REFERENCE TO RELATED APPLICATION
  • This U.S. non-provisional application claims priority under 35 USC § 119 to Korean Patent Application No. 10-2021-0063802, filed on May 18, 2021, in the Korean Intellectual Property Office (KIPO), the disclosure of which is incorporated by reference herein in its entirety.
  • BACKGROUND 1. Technical Field
  • Example embodiments relate generally to semiconductor integrated circuits, and more particularly to a method of recovering a bootloader in a mobile electronic device and a bootloader recovery system performing the method of recovering the bootloader.
  • 2. Discussion of the Related Art
  • A bootloader included in an embedded system such as a mobile electronic device is a program for loading a kernel, checking and initializing various hardware and starting an operating system (OS). Accordingly, the bootloader may check and initialize processors, memories and/or networks included in the mobile electronic device, and when an error occurs in the OS, the bootloader performs a recovery operation on the OS such that the electronic device can self-recovering the OS.
  • When an error occurs in the bootloader, the mobile electronic device cannot recover the bootloader by itself. In general, a user of the mobile electronic device disassembles the mobile electronic device, changes a boot mode of the electronic device, and re-installs an original bootloader.
  • SUMMARY
  • Some example embodiments may provide a method and a system for a mobile electronic device, capable of recovering a bootloader and improving an efficiency of a development process.
  • According to example embodiments, in a method of recovering a bootloader in a mobile electronic device, a bootloader recovery signal is transmitted from a bridge board to the mobile electronic device. The bridge board includes a first internal path and a second internal path. The mobile electronic device includes a third internal path and a fourth internal path. The bootloader recovery request signal is transmitted based on the first internal path and the third internal path. A boot mode of the mobile electronic device is changed based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal. Bootloader recovery data is transmitted from a host device to the bridge board based on the changed boot mode. The bootloader recovery data is transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path.
  • According to example embodiments, a bootloader recovery system includes a bridge board, a mobile electronic device and a host device. The bridge board includes a first processor, first and second internal paths and a first internal path selector. The first internal path selector selects one of the first and second internal paths under a control of the first processor. The mobile electronic device electrically connected to the bridge board, and includes a second processor, third and fourth internal paths and a second internal path selector. The second internal path selector selects one of the third and fourth internal paths under a control of the second processor. The host device electrically connected to the mobile electronic device. The bridge board transmits a bootloader recovery request signal to the mobile electronic device based on the first internal path and the third internal path. The mobile electronic device changes a boot mode based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal. The host device transmits bootloader recovery data to the bridge board based on the changed boot mode. The bridge board transmits the bootloader recovery data to the mobile electronic device based on the second internal path and the third internal path.
  • According to example embodiments, in a method of recovering a bootloader in a mobile electronic device, a bootloader recovery signal is transmitted from a bridge board to the mobile electronic device. The bridge board includes a first internal path and a second internal path. The mobile electronic device includes a third internal path and a fourth internal path. The bootloader recovery request signal is transmitted based on the first internal path and the third internal path. A boot mode of the mobile electronic device is changed based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal. Bootloader recovery data is transmitted from a host device to the bridge board based on the changed boot mode. The bootloader recovery data is transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path. The bootloader is recovered based on the bootloader recovery data. The bridge board includes a first connector, the mobile electronic device includes a second connector, and the bridge board and the mobile electronic device are connected to each other through the first connector and the second connector. Each of the first connector and the second connector includes a first pin and a second pin. The bootloader recovery request signal is generated by setting a voltage level of the first pin and the second pin to a logic high level.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Example embodiments of the present disclosure will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings.
  • FIG. 1 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • FIG. 2 is a diagram illustrating a bootloader recovery system according to example embodiments.
  • FIG. 3 is a block diagram illustrating example embodiments of the bootloader recovery system of FIG. 2.
  • FIG. 4 is a block diagram illustrating example embodiments of the first and second connectors and the first and second internal path selectors in FIG. 3.
  • FIG. 5 is a diagram for describing a process of transmitting the bootloader recovery request signal in FIG. 1.
  • FIG. 6 is a diagram for describing a bootloader recovery request signal in FIG. 1.
  • FIG. 7 is a flowchart illustrating example embodiments of changing the boot mode of the mobile electronic device in FIG. 1.
  • FIG. 8 is a flowchart illustrating example embodiments of transmitting the first recovery ready signal in FIG. 7.
  • FIG. 9 is a diagram for describing a process of transmitting the first recovery ready signal in FIG. 7.
  • FIG. 10 is a flowchart illustrating example embodiments of transmitting the second recovery ready signal in FIG. 7.
  • FIG. 11 is a diagram for describing a process of transmitting the second recovery ready signal in FIG. 7.
  • FIG. 12 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7.
  • FIG. 13 is a diagram for describing a process of transmitting the bootloader recovery execution signal in FIG. 7.
  • FIG. 14 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7.
  • FIG. 15 is a diagram for describing a process of transmitting the bootloader recovery data in FIG. 1.
  • FIG. 16 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • FIG. 17 is a block diagram illustrating example embodiments of the mobile electronic device in the bootloader recovery system of FIG. 2.
  • DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS
  • Various example embodiments will be described more fully hereinafter with reference to the accompanying drawings, in which some example embodiments are shown. In the drawings, like numerals refer to like elements throughout. The repeated descriptions may be omitted.
  • FIG. 1 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • Referring to FIG. 1, a method of recovering a bootloader in a mobile electronic device according to example embodiments may be performed by a bootloader recovery system in which a bridge board is electrically connected between the mobile electronic device and a host device.
  • When the mobile electronic device is powered on by a user, the mobile electronic device may perform a booting process of executing a series of operations starting with a kernel initialization.
  • The booting process may be performed by the bootloader. The bootloader may load an operating system (OS) and data stored in a storage device into an internal memory, and call an ‘initialization process’. The initialization process may initialize the mobile electronic device and execute various daemons, a context manager, a media server and Zygote, and the like required for operations of frameworks.
  • However, when an error occurs in the bootloader, the booting process cannot be performed normally. Accordingly, in the method of recovering the bootloader in the mobile electronic device, the bootloader may be recovered by targeting the mobile electronic device in which the booting process is not normally performed due to an error in the bootloader. Detailed components included in the bootloader recovery system will be described later with reference to FIGS. 2 and 3.
  • In the method of recovering the bootloader in the mobile electronic device, the bridge board may include a first internal path and a second internal path, the mobile electronic device may include a third internal path and a fourth internal path, and a bootloader recovery request signal may be transmitted from the bridge board to the mobile electronic device based on the first internal path and the third internal path (S100).
  • In some example embodiments, the first internal path and the fourth internal path may operate based on a first communication scheme, and the second internal path and the third internal path may operate based on a second communication scheme different from the first communication scheme.
  • In some example embodiments, the first communication scheme may be based on an universal asynchronous receiver transmitter (UART) communication standard, and the second communication scheme may be based on an universal serial bus (USB) communication standard.
  • In some example embodiments, the bootloader recovery request signal may be a signal requesting to change an order of devices used during a default booting. The default booting may represent a process of loading the bootloader from devices included in the mobile electronic device according to a predetermined or alternatively, desired order when the mobile electronic device is powered on. For example, the default booting may be configured to search for the bootloader from the storage device, and then to search for the bootloader from a USB device when the bootloader is not searched from the storage device. When the bootloader is searched, the bootloader may be loaded from the searched device.
  • In response to receiving the bootloader recovery request signal, e.g., when the bootloader recovery request signal is received, a boot mode of the mobile electronic device may be changed based on the first internal path and the fourth internal path (S200).
  • In some example embodiments, when the boot mode is changed, the order of devices referenced according to the default booting may be changed. For example, when the boot mode is changed, the bootloader may be searched directly from the USB device without searching the storage device.
  • Bootloader recovery data may be transmitted from the host device to the bridge board based on the changed boot mode (S300). The bootloader recovery data may be transmitted from the bridge board to the mobile electronic device based on the second internal path and the third internal path (S400).
  • In some example embodiments, the host device may store a bootloader that does not have an error. The host device may transmit the bootloader as the bootloader recovery data to the bridge board.
  • The mobile electronic device may receive the bootloader recovery data based on the third internal path (S500). The bootloader of the mobile electronic device may be recovered based on the bootloader recovery data (S600).
  • In some example embodiments, the bootloader with the error stored in the mobile electronic device may be replaced with the bootloader recovery data, and the bootloader recovery data may operate as a new bootloader.
  • Recently, since waterproof and/or dustproof capabilities of the mobile electronic device may be considered important, once the mobile electronic device is disassembled, it may not be guaranteed whether the waterproof and/or dustproof capabilities of the mobile electronic device may be maintained even when the mobile electronic device is reassembled. When the mobile electronic device is disassembled whenever debugging is required due to an error in the bootloader during a development process of the mobile electronic device, a redundant or unnecessary process is repeated several times, which may reduce efficiency of the development process.
  • As described above, in the method of recovering the bootloader in the mobile electronic device according to example embodiments, the bootloader having an error may be recovered without disassembling the mobile electronic device. Accordingly, when the method of recovering the bootloader is executed, the efficiency of the development process may be improved without deteriorating the waterproof and/or dustproof capabilities of the mobile electronic device.
  • FIG. 2 is a diagram illustrating a bootloader recovery system according to example embodiments. FIG. 3 is a block diagram illustrating example embodiments of the bootloader recovery system of FIG. 2.
  • Referring to FIGS. 2 and 3, a bootloader recovery system 10 may include a mobile electronic device 100, a bridge board 300 and a host device 500. The bridge board 300 may be electrically connected between the mobile electronic device 100 and the host device 500.
  • In some example embodiments, the bridge board 300 and the mobile electronic device 100 may communicate with each other based on a first communication scheme and a second communication scheme, and the bridge board 300 and the host device 500 may communicate with each other based on the second communication scheme.
  • As described above with reference to FIG. 1, the first communication scheme may be based on the UART communication standard, and the second communication scheme may be based on the USB communication standard.
  • A bootloader having an error, e.g., a damaged bootloader, may be stored in the mobile electronic device 100, and a bootloader not having an error, e.g., an original bootloader may be stored in the host device 500.
  • The bridge board 300 may include a first processor 311, a first internal path selector 313, a first connector 350 and/or a third connector 370. The first internal path selector 313 may include a first interface circuit 315. The first processor 311 may control overall operations of the components 313, 315, 350 and 370 included in the bridge board 300.
  • In some example embodiments, the first processor 311 may include a micro controller unit (MCU), may generate a first control signal PCTL1 and may transmit the first control signal PCTL1 to the first internal path selector 313. The first processor 311 may control the first internal path selector 313 based on the first control signal PCTL1.
  • In some example embodiments, the first processor 311 may control the first internal path selector 313 such that the first connector 350 and the first processor 311 are connected by the first internal path IP1 or the first connector 350 and the third connector 370 are connected by the second internal path IP2. For example, the first processor 311 may generate the bootloader recovery request signal described above with reference to FIG. 1, and the bootloader recovery request signal may be transmitted from the bridge board 300 to the mobile electronic device 100 when the first connector 350 and the first processor 311 are connected through the first internal path IP1. For example, the host device 500 may store bootloader recovery data 590, and the bootloader recovery data 590 may be transmitted from the host device 500 to the mobile electronic device 100 when the first connector 350 and the third connector 370 are connected through the second internal path IP2.
  • The mobile electronic device 100 may include an application processor (AP) 110, a storage device 130 and/or a second connector 150. The application processor 110 may include a second processor 111 and/or a second internal path selector 113. The second internal path selector 113 may include a second interface circuit 115. The second processor 111 may control overall operations of the components 113, 115, 130 and 150 included in the mobile electronic device 100.
  • In some example embodiments, the second processor 111 may include a central processing unit (CPU), and the second processor 111 may generate a second control signal PCTL2 and may transmit the second control signal PCTL2 to the second internal path selector 113. The second processor 111 may control the second internal path selector 113 based on the second control signal PCTL2.
  • In some example embodiments, the second processor 111 may control the second internal path selector 113 such that the second connector 150 and the second processor 111 are connected by the third internal path IP3 or the second connector 150 and the second processor 111 are connected by the fourth internal path IP4. For example, the second processor 111 may receive the bootloader recovery request signal described above with reference to FIG. 1, and the bootloader recovery request signal may be received by the mobile electronic device 100 when the second connector 150 and the second processor 111 are connected through the third internal path IP3. For example, the second processor 111 may change the boot mode described above with reference to FIG. 1, and the boot mode may be changed when the second connector 150 and the second processor are connected through the fourth internal path IP4. For example, the second processor 111 may receive the bootloader recovery data 590, and the bootloader recovery data 590 is received by the mobile electronic device 100 when the second connector 150 and the second processor are connected through the third internal path IP3.
  • The storage device 130 may store the damaged bootloader, and when the original bootloader stored in the host device 500 is transmitted to the mobile electronic device 100 as bootloader recovery data 590, the storage device 130 may replace the damaged bootloader with the bootloader recovery data 590 to store the bootloader recovery data 590.
  • The host device 500 may include a fourth connector 550.
  • In some example embodiments, the mobile electronic device 100 and the bridge board 300 may connected through the first connector 350 and the second connector 150, and the bridge board 300 and the host device 500 may connected through the third connector 370 and the fourth connector 550.
  • In some example embodiments, the first connector 350, the second connector 150, the third connector 370 and the fourth connector 550 may be connectors for basically performing the second communication scheme. For example, each of the first to fourth connectors 150, 350, 370 and 550 may be a USB connector. However, as will be described later, interface circuits for performing the first communication scheme may be connected to data pins among a plurality of pins included in each of the first and second connectors 150 and 350, and thus the first and second connectors 150 and 350 may be diverted to perform the first communication scheme other than the second communication scheme.
  • FIG. 4 is a block diagram illustrating example embodiments of the first and second connectors and the first and second internal path selectors in FIG. 3.
  • Referring to FIGS. 3 and 4, the first internal path selector 313 may include the first interface circuit 315, and the second internal path selector 113 may include the second interface circuit 115. The first interface circuit 315 may include a first communication interface circuit 315 a, a second communication interface circuit 315 b and a first path selection circuit 315 c. The second interface circuit 115 may include a third communication interface circuit 115 a, a fourth communication interface circuit 115 b and a second path selection circuit 115 c. Each of the first connector 350 and the second connector 150 may include a plurality of pins.
  • In some example embodiments, the first connector 350 may include first to fourth pins 351, 352, 353 and 354, and the second connector 150 may include fifth to eighth pins 151, 152, 153 and 154.
  • In some example embodiments, the first to fourth pins 351, 352, 353 and 354 and the fifth to eighth pins 151, 152, 153 and 154 may be electrically connected to each other. For example, the first pin 351 and the fifth pin 151 may be connected to each other. The second pin 352 and the sixth pin 152 may be connected to each other. The third pin 353 and the seventh pin 153 may be connected to each other. The fourth pin 354 and the eighth pin 154 may be connected to each other.
  • In some example embodiments, each of the second pin 352, the third pin 353, the sixth pin 152 and the seventh pin 153 may be a data pin. For example, data including arbitrary information may be transmitted in a form of a differential signal from the second and third pins 352 and 353 to the sixth and seventh pins 152 and 153 or in the opposite direction.
  • In some example embodiments, the second and third pins 352 and 353 may be connected to one of the first communication interface circuit 315 a and the second communication interface circuit 315 b, and the sixth and seventh pins 152 and 153 may be connected to one of the third communication interface circuit 115 a and the fourth communication interface circuit 115 b.
  • In some example embodiments, the first path selection circuit 315 c may receive the first control signal PCTL1 and may connect the second and third pins 352 and 353 with one of the first communication interface circuit 315 a and the second communication interface circuit 315 b, based on the first control signal PCTL1. The second path selection circuit 115 c may receive the second control signal PCTL2 and may connect the sixth and seventh pins 152 and 153 with one of the third communication interface circuit 115 a and the fourth communication interface circuit 115 b, based on the second control signal PCTL2.
  • In some example embodiments, the first communication interface circuit 315 a may be disposed between the first internal path IP1 and the second and third pins 352 and 353, and the second communication interface circuit 315 b may be disposed between the second internal path IP2 and the second and third pins 352 and 353. The third communication interface circuit 115 a may be disposed between the third internal path IP3 and the sixth and seventh pins 152 and 153. The fourth communication interface circuit 115 b may be disposed between the fourth internal path IP4 and the sixth and seventh pins 152 and 153.
  • Although not illustrated in detail, the first and fifth pins 351 and 151 may be connected to a power supply voltage VDD, and the fourth and eighth pins 354 and 154 may be connected to a ground voltage GND.
  • Based on the configuration illustrated in FIG. 4, signals and/or data may be exchanged between the first processor 311 and the second processor 111 illustrated in FIG. 3, and may also be exchanged between the mobile electronic device 100, the bridge board 300 and the host device 500.
  • In some example embodiments, the first communication scheme described above with reference to FIG. 1 may be performed by the first communication interface circuit 315 a and the fourth communication interface circuit 115 b. The second communication scheme described above with reference to FIG. 1 may be performed by the second communication interface circuit 315 b and the third communication interface circuit 115 a.
  • In some example embodiments, the first communication interface circuit 315 a may correspond to the first internal path IP1, the second communication interface circuit 315 b may correspond to the second internal path IP2, the third communication interface circuit 115 a may correspond to the third internal path IP3 and the fourth communication interface circuit 115 b may correspond to the fourth internal path IP4. Accordingly, the first communication scheme may be performed by the first internal path IP1 and the fourth internal path IP4. The second communication scheme may be performed by the second internal path IP2 and the third internal path IP3.
  • FIG. 5 is a diagram for describing a process of transmitting the bootloader recovery request signal in FIG. 1.
  • Referring to FIGS. 1, 2, 3 and 5, when the method of recovering the bootloader according to example embodiments is performed by the bootloader recovery system 10, a bootloader recovery request signal BR_SIG may correspond to a signal initially transmitted between the mobile electronic device 100, the bridge board 300 and the host device 500 included in the bootloader recovery system 10. That is, the method of recovering the bootloader according to example embodiments may be started by the bootloader recovery request signal BR_SIG.
  • In some example embodiments, when the mobile electronic device 100 and the bridge board 300 are electrically connected to each other, the bridge board 300 may generate the bootloader recovery request signal BR_SIG and transmit the bootloader recovery request signal BR_SIG to the mobile electronic device 100 or the first processor 311.
  • In some example embodiments, the bridge board 300 may set a voltage level of each of the second and third pins 352 and 353 to a predetermined or alternatively, desired voltage level to generate the bootloader recovery request signal BR_SIG.
  • In some example embodiments, in a process of transmitting the bootloader recovery request signal BR_SIG, the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the third communication interface circuit 115 a. Accordingly, the bootloader recovery request signal BR_SIG may be transmitted from the bridge board 300 to the mobile electronic device 100 through the first internal path IP1, the first communication interface circuit 315 a, the third communication interface circuit 115 a and the third internal path IP3 sequentially.
  • In some example embodiments, since the bootloader recovery request signal BR_SIG is transmitted through the third communication interface circuit 115 a included in the mobile electronic device 100, the bootloader recovery request signal BR_SIG may be interpreted according to the second communication scheme performed by the third communication interface circuit 115 a. As described above with reference to FIGS. 2 and 3, the second communication scheme may be based on the USB communication standard. Hereinafter, the bootloader recovery request signal BR_SIG will be described.
  • FIG. 6 is a diagram for describing a bootloader recovery request signal in FIG. 5.
  • Referring to FIGS. 5 and 6, the bootloader recovery request signal BR_SIG may be generated based on one of a plurality of bus states according to the second communication scheme, e.g., USB communication.
  • In some example embodiments, the plurality of bus states may include first to fourth bus states D1, D0, SE0 and SE1. The first bus state D1 may set a voltage level of a first data signal DP to a logic high level and a voltage level of a second data signal DM to a logic low level to represent a digital differential signal ‘1’. The second bus state DO may set the voltage level of the first data signal DP to the logic low level and the voltage level of the second data signal DM to the logic high level to represent a digital differential signal ‘0’. The third bus state SE0 (single-ended zero) may set the voltage levels of the first data signal DP and the second data signal DM to be equal to or less than a first threshold voltage level for more than a predetermined or alternatively, desired time to represent a disconnected state. The fourth bus state SE1(single-ended one) may set the voltage levels of the first data signal DP and the second data signal DM to be equal to or higher than a second threshold voltage level different from the first threshold voltage level to represent an illegal state.
  • In some example embodiments, the fourth bus state SE1 may be a bus state that is not used for data communication between devices when the second communication scheme is used for a general purpose. Accordingly, the fourth bus state SE1 may be used as the bootloader recovery request signal BR_SIG representing the start of the method of recovering the bootloader in the mobile electronic device according to example embodiments.
  • In some example embodiments, the first data signal DP may correspond to the second pin 352 of the first connector 350, and the second data signal DM may correspond to the third pin 353 of the first connector 350. Accordingly, the bridge board 300 may set voltage levels of the second and third pins 352 and 353 to the logic high levels to generate the bootloader recovery request signal BR_SIG.
  • FIG. 7 is a flowchart illustrating example embodiments of changing the boot mode of the mobile electronic device in FIG. 1.
  • Referring to FIGS. 1 and 7, when changing the boot mode of the mobile electronic device (S200), a first recovery ready signal may be transmitted from the mobile electronic device to the bridge board based on a first internal path and a fourth internal path (S210).
  • A second recovery ready signal may be transmitted from the bridge board to the mobile electronic device based on the first internal path and the fourth internal path (S250).
  • A bootloader recovery execution signal may be transmitted from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path (S290).
  • In some example embodiments, as described above with reference to FIG. 4, the first communication scheme described above with reference to FIG. 1 may be performed by the first internal path and the fourth internal path. Accordingly, the first recovery ready signal, the second recovery ready signal and the bootloader recovery execution signal may be transmitted based on the first communication scheme.
  • In some example embodiments, the first recovery ready signal may include a string “se1 d” as payload data, the second recovery ready signal may include a string “se1 r” as the payload data, and the bootloader recovery execution signal may include a string “go” as the payload data.
  • In some example embodiments, when the first communication scheme corresponds to the UART communication, the mobile electronic device and the bridge board may transmit and receive the first recovery ready signal, the second recovery ready signal and the bootloader recovery execution signal based on the UART communication.
  • FIG. 8 is a flowchart illustrating example embodiments of transmitting the first recovery ready signal in FIG. 7.
  • Referring to FIGS. 1, 2, 3, 7 and 8, the operation of transmitting the first recovery ready signal may be performed by the mobile electronic device 100.
  • When transmitting the first recovery ready signal (S210), it may be determined whether the bootloader recovery request signal is received (S211).
  • In some example embodiments, the mobile electronic device 100 may determine whether the bootloader recovery request signal is received based on the voltage level of each of the sixth and seventh pins 152 and 153 included in the second connector 150. For example, when the voltage level of each of the sixth pin 152 connected to the second pin 352 of the first connector 350 and the seventh pin 153 connected to the third pin 353 of the first connector 350 correspond to the logic high level, it may be determined that the bootloader recovery request signal is received.
  • In response to receiving the bootloader recovery request signal, e.g., when the bootloader recovery request signal is received, the fourth internal path IP4 of the mobile electronic device 100 may be enabled to communicate with the bridge board 300 based on the first communication scheme (S213). In response to receiving the bootloader recovery request signal, e.g., the bootloader recovery request signal is received, the third internal path IP3 of the mobile electronic device 100 may be disabled (S217).
  • The first recovery ready signal may be transmitted from the mobile electronic device 100 to the bridge board 300 based on the first internal path IP1 and the fourth internal path IP4 (S217).
  • In some example embodiments, the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 to the fourth communication interface circuit 115 b based on the second control signal PCTL2 to enable the fourth internal path IP4 and disable the third internal path IP3.
  • FIG. 9 is a diagram for describing a process of transmitting the first recovery ready signal in FIG. 7.
  • Referring to FIGS. 1, 2, 3, 7 and 9, in transmitting the first recovery ready signal 1ST_RR_SIG, the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the fourth communication interface circuit 115 b.
  • Accordingly, the first recovery ready signal 1ST_RR_SIG may be transmitted from the mobile electronic device 100 to the bridge board 300 through the fourth internal path IP4, the fourth communication interface circuit 115 b, the first communication interface circuit 315 a and the first internal path IP1 sequentially.
  • In some example embodiments, since the first recovery ready signal 1ST_RR_SIG is transmitted through the first communication interface circuit 315 a, the first recovery ready signal 1ST_RR_SIG may be interpreted according to the first communication scheme performed by the first communication interface circuit 315 a. As described above with reference to FIGS. 2 and 3, the first communication scheme may be based on the UART communication standard.
  • FIG. 10 is a flowchart illustrating example embodiments of transmitting the second recovery ready signal in FIG. 7.
  • Referring to FIGS. 1, 2, 3, 7 and 10, transmitting the second recovery ready signal may be performed by the bridge board 300.
  • In the transmitting the second recovery ready signal, it may be determined whether the first recovery ready signal is received (S251).
  • In some example embodiments, the bridge board 300 may interpret payload data included in signal received from the mobile electronic device 100 to determine whether the first recovery ready signal is received. For example, when the received signal includes the string “se1 d”, the first processor 311 may determine that the first recovery ready signal is received.
  • In response to receiving the first recovery ready signal, e.g., the first recovery ready signal is received, the second recovery ready signal may be transmitted based on the first internal path IP1 and the fourth internal path IP4 (S253).
  • FIG. 11 is a diagram for describing a process of transmitting the second recovery ready signal in FIG. 7.
  • Referring to FIGS. 1, 2, 3, 7 and 11, in transmitting the second recovery ready signal 2ND_RR_SIG, the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the fourth communication interface circuit 115 b.
  • Accordingly, the second recovery ready signal 2ND_RR_SIG may be transmitted from the bridge board 300 to the mobile electronic device 100 through the first internal path IP1, the first communication interface circuit 315 a, the fourth communication interface circuit 115 b and the fourth internal path IP4 sequentially.
  • In some example embodiments, since the second recovery ready signal 2ND_RR_SIG is transmitted through the fourth communication interface circuit 115 b, the second recovery ready signal 2ND_RR_SIG may be interpreted according to the first communication scheme performed by the fourth communication interface circuit 115 b. As described above with reference to FIGS. 2 and 3, the first communication scheme may be based on the UART communication standard.
  • FIG. 12 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7.
  • Referring to FIGS. 1, 2, 3, 7 and 12, transmitting the bootloader recovery execution signal may be performed by the mobile electronic device 100.
  • In the transmitting the bootloader recovery execution signal, it may be determined whether the second recovery ready signal is received (S291).
  • In some example embodiments, the mobile electronic device 100 may interpret payload data included in signal received from the bridge board 300 to determine whether the second recovery ready signal is received. For example, when the received signal includes the string “se1 r”, the second processor 111 may determine that the second recovery ready signal is received.
  • In response to receiving the second recovery ready signal, e.g., the second recovery ready signal is received, the bootloader recovery execution signal may be transmitted based on the first internal path IP1 and the fourth internal path IP4 (S293).
  • FIG. 13 is a diagram for describing a process of transmitting the bootloader recovery execution signal in FIG. 7.
  • Referring to FIGS. 1, 2, 7 and 13, in transmitting a bootloader recovery execution signal BR_PG_SIG, the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the first communication interface circuit 315 a, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the fourth communication interface circuit 115 b.
  • Accordingly, the bootloader recovery execution signal BR_PG_SIG may be transmitted from the mobile electronic device 100 to the bridge board 300 through the fourth internal path IP4, the fourth communication interface circuit 115 b, the first communication interface circuit 315 a and the first internal path IP1 sequentially.
  • In some example embodiments, since the bootloader recovery execution signal BR_PG_SIG is transmitted through the first communication interface circuit 315 a, the bootloader recovery execution signal BR_PG_SIG may be interpreted according to the first communication scheme performed by the first communication interface circuit 315 a. As described above with reference to FIGS. 2 and 3, the first communication scheme may be based on the UART communication standard.
  • FIG. 14 is a flowchart illustrating example embodiments of transmitting the bootloader recovery execution signal in FIG. 7.
  • Referring to FIGS. 1, 2, 3, 7 and 14, in the transmitting the bootloader recovery execution signal, after transmitting the bootloader recovery execution signal, the third internal path IP3 of the mobile electronic device 100 may be enabled (S295). The enabling the third internal path IP3 may be performed by the mobile electronic device 100.
  • In some example embodiments, the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 to the third communication interface circuit 115 a based on the second control signal PCTL2 to enable the third internal path IP3 and disable the fourth internal path IP4.
  • After receiving the bootloader recovery execution signal, the second internal path IP2 of the bridge board 300 may be enabled (S297). The enabling the second internal path IP2 may be performed by the bridge board 300.
  • In some example embodiments, the first path selection circuit 315 c may connect the second and third pins 352 and 353 to the second communication interface 315 b based on the first control signal PCTL1 to enable the second internal path IP2 and disable the first internal path IP1.
  • FIG. 15 is a diagram for describing a process of transmitting the bootloader recovery data in FIG. 1.
  • Referring to FIGS. 1, 2, 3 and 15, in transmitting a bootloader recovery data BR_DAT, the first path selection circuit 315 c may connect the second and third pins 352 and 353 of the first connector 350 with the second communication interface circuit 315 b, and the second path selection circuit 115 c may connect the sixth and seventh pins 152 and 153 of the second connector 150 with the third communication interface circuit 115 a.
  • Accordingly, the bootloader recovery data BR_DAT may be transmitted to the bridge board 300 through the second internal path IP2, the second communication interface circuit 315 b, the third communication interface circuit 115 a and the third internal path IP3 sequentially.
  • In some example embodiments, since the bootloader recovery data BR_DAT is transmitted through the third communication interface circuit 115 a, the bootloader recovery data BR_DAT may be interpreted according to the second communication scheme performed by the third communication interface circuit 115 a. As described above with reference to FIGS. 2 and 3, the second communication scheme may be based on the USB communication standard.
  • FIG. 16 is a flowchart illustrating a method of recovering a bootloader in a mobile electronic device according to example embodiments.
  • In FIG. 16, a method of recovering a bootloader in a mobile electronic device may be performed by a bootloader recovery system in which a bridge board is electrically connected between the mobile electronic device and a host device. However, for convenience of description, only operations performed by the mobile electronic device will be described.
  • Referring to FIGS. 1, 7 and 16, operations having the same reference numerals may have the same or similar functions.
  • In the method of recovering the bootloader in the mobile electronic device, the mobile electronic device may determine whether the bootloader recovery request signal is received (S110).
  • In some example embodiments, the transmitting the bootloader recovery request signal from the bridge board to the mobile electronic device described above with reference to FIG. 1 may be performed before S110.
  • In response to receiving the bootloader recovery request signal (S110: YES), a first recovery ready signal may be transmitted from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path (S210).
  • Although not illustrated in detail, when the first recovery ready signal is received, the bridge board may transmit a second recovery ready signal to the mobile electronic device based on the first internal path and the fourth internal path.
  • In response to receiving the second recovery ready signal (S270: YES), the mobile electronic device may transmit bootloader recovery data to the bridge board based on the first internal path and the fourth internal path (S290). The host device may transmit the bootloader recovery data to the bridge board, the bridge board may transmit the bootloader recovery data to the mobile electronic device based on the second internal path and the third internal path, and the mobile electronic device may receive the bootloader recovery data (S300).
  • In response to non-receiving the second recovery ready signal (S270: NO), the mobile electronic device may determine whether a predetermined or alternatively, desired time interval is elapsed from a first time point. In some example embodiments, the first time point may represent a time point at which the first recovery ready signal is transmitted from the mobile electronic device to the bridge board.
  • In response to being the predetermined or alternatively, desired time interval from the first time point (S271: YES), the mobile electronic device may transmit a bootloader recovery execution cancellation signal from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path (S273). The mobile electronic device may perform a default booting (S700).
  • In some example embodiments, the bootloader recovery execution cancellation signal may include a “to” string as payload data.
  • In some example embodiments, the predetermined or alternatively, desired time internal in S270 may be ‘100 ms’.
  • The mobile electronic device may re-determine whether the second recovery ready signal is received (S270) within the predetermined or alternatively, desired time interval from the first time point (S271: NO).
  • FIG. 17 is a block diagram illustrating example embodiments of the mobile electronic device in the bootloader recovery system of FIG. 2.
  • Referring to FIG. 17, a mobile electronic device 1000 may include a SOC 2000, a memory device 1200, a storage device 1300, a plurality of functional modules 1400, 1500, 1600 and 1700, and/or a power management integrated circuit (PMIC) 1800.
  • The SOC 2000 controls overall operations of the mobile electronic device 1000. For example, the SOC 2000 may control the memory device 1200, the storage device 1300 and the plurality of functional modules 1400, 1500, 1600 and 1700. For example, the SOC 2000 may be an application processor (AP).
  • The SOC 2000 may include a system bus 2100, a host processor (CPU) 600 and a communication interface circuit (CIFC) 800.
  • In some example embodiments, the communication interface circuit 800 may correspond to the second connector 150 and the second internal path selector 113 or the second connector 150 and the second interface circuit 115 described above with reference to FIG. 3. Accordingly, the communication interface circuit 800 may communicate with an external device and/or a bridge board. For example, the communication interface circuit 800 may perform the method of recovering the bootloader in the mobile electronic device according to example embodiments.
  • The host processor 600 may be electrically connected to the system bus 2100 and may control overall operations of the SOC 2000. For example, the host processor 600 may include a central processing unit (CPU) or at least one of various processors.
  • The memory device 1200 and the storage device 1300 may store the bootloader, instructions, data, etc. necessary for operations of the mobile electronic device 1000. The memory device 1200 may include a volatile memory device, such as a dynamic random access memory (DRAM), a static random access memory (SRAM), a mobile DRAM, etc. The storage device 1300 may include a nonvolatile memory device, such as an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory, a phase change random access memory (PRAM), a resistance random access memory (RRAM), a nano floating gate memory (NFGM), a polymer random access memory (PoRAM), a magnetic random access memory (MRAM), a ferroelectric random access memory (FRAM), etc. In some example embodiments, the storage device 1300 may further include an embedded multimedia card (eMMC), a universal flash storage (UFS), a solid state drive (SSD), a hard disk drive (HDD), a CD-ROM, etc.
  • The functional modules 1400, 1500, 1600 and 1700 may perform various functions of the mobile electronic device 1000. For example, the mobile electronic device 1000 may include a communication module 1400 that performs a communication function (e.g., a code division multiple access (CDMA) module, a long term evolution (LTE) module, a radio frequency (RF) module, an ultra-wideband (UWB) module, a wireless local area network (WLAN) module, a worldwide interoperability for a microwave access (WIMAX) module, etc.), a camera module 1500 that performs a camera function, an input-output (I/O) module 1600 including a display module that performs a display function and a touch panel module that performs a touch sensing function, and an audio module 1700 including a microphone (MIC) module, a speaker module, etc. that performs input-output of audio signals. In some example embodiments, the mobile electronic device 1000 may further include a global positioning system (GPS) module, a gyroscope module, etc. However, the functional modules 1400, 1500, 1600 and 1700 in the mobile electronic device 1000 are not limited thereto.
  • The PMIC 1800 may provide an operating voltage to the SOC 2000, the memory device 1200, the storage device 1300 and the functional modules 1400, 1500, 1600 and 1700.
  • The mobile electronic device 1000 may be a device, such as a desktop computer, a laptop computer, a cellular phone, a smart phone, an MP3 player, a personal digital assistant (PDA), a portable multimedia player (PMP), a digital television, a digital camera, a server computer, a workstation, a set-top box, a portable game console, a navigation system, a wearable device, an internet of things (IoT) device, an internet of everything (IoE) device, an e-book, a virtual reality (VR) device, an augmented reality (AR) device, a drone, etc. The mobile electronic device 1000 may typically be operated in response to direct user input, but may also be used to communicate with other devices via the Internet or other network systems.
  • As described above, in the method of recovering the bootloader in the mobile electronic device according to example embodiments, the bootloader having an error may be recovered without disassembling the mobile electronic device. Accordingly, the efficiency of the development process may be easily improved without impairing the waterproof and/or dustproof capabilities of the mobile electronic device by executing the method of recovering the bootloader.
  • One or more of the elements disclosed above may include or be implemented in one or more processing circuitries such as hardware including logic circuits; a hardware/software combination such as a processor executing software; or a combination thereof. For example, the processing circuitries more specifically may include, but is not limited to, a central processing unit (CPU), an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a System-on-Chip (SoC), a programmable logic unit, a microprocessor, application-specific integrated circuit (ASIC), etc.
  • The example embodiments may be usefully used in the mobile electronic device in which a booting process is performed by the bootloader. The foregoing is illustrative of example embodiments and is not to be construed as limiting thereof. Although some example embodiments have been described, those skilled in the art will readily appreciate that many modifications are possible in the example embodiments without materially departing from the novel teachings and advantages of the example embodiments. Accordingly, all such modifications are intended to be included within the scope of the example embodiments as defined in the claims. Therefore, it is to be understood that the foregoing is illustrative of various example embodiments and is not to be construed as limited to the specific example embodiments disclosed, and that modifications to the disclosed example embodiments, as well as other example embodiments, are intended to be included within the scope of the appended claims.

Claims (20)

What is claimed is:
1. A method of recovering a bootloader in a mobile electronic device, the method comprising:
transmitting a bootloader recovery request signal from a bridge board to the mobile electronic device, the bridge board including a first internal path and a second internal path, the mobile electronic device including a third internal path and a fourth internal path, the bootloader recovery request signal being transmitted based on the first internal path and the third internal path;
changing a boot mode of the mobile electronic device based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal;
transmitting bootloader recovery data from a host device to the bridge board based on the changed boot mode; and
transmitting the bootloader recovery data from the bridge board to the mobile electronic device based on the second internal path and the third internal path.
2. The method of claim 1, wherein changing the boot mode includes:
transmitting a first recovery ready signal from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path;
transmitting a second recovery ready signal from the bridge board to the mobile electronic device based on the first internal path and the fourth internal path; and
transmitting a bootloader recovery execution signal from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path.
3. The method of claim 2, wherein transmitting the first recovery ready signal includes:
determining whether the bootloader recovery request signal is received;
enabling the fourth internal path in response to receiving the bootloader recovery request signal, the fourth internal path being used to communicate with the bridge board based on a first communication scheme; and
transmitting the first recovery ready signal from the mobile electronic device to the bridge board based on the first internal path and the enabled fourth internal path.
4. The method of claim 3, wherein transmitting the first recovery ready signal further includes:
disabling the third internal path in response to receiving the bootloader recovery request signal.
5. The method of claim 3, wherein transmitting the second recovery ready signal includes:
determining whether the first recovery ready signal is received; and
transmitting the second recovery ready signal from the bridge board to the mobile electronic device based on the first internal path and the enabled fourth internal path in response to receiving the first recovery ready signal.
6. The method of claim 3, wherein transmitting the bootloader recovery execution signal includes:
determining whether the second recovery ready signal is received; and
transmitting the bootloader recovery execution signal from the mobile electronic device to the bridge board based on the first internal path and the enabled fourth internal path in response to receiving the second recovery ready signal.
7. The method of claim 6, further comprising:
determining whether a predetermined time interval is elapsed from a first time point in response to non-receiving the second recovery ready signal, the first time point representing a time point at which the first recovery ready signal is transmitted from the mobile electronic device to the bridge board; and
transmitting a bootloader recovery execution cancellation signal from the mobile electronic device to the bridge board based on the first internal path and the fourth internal path in response to being elapsed the predetermined time interval from the first time point.
8. The method of claim 7, further comprising:
re-determining whether the second recovery ready signal is received within the predetermined time interval from the first time point.
9. The method of claim 2, wherein:
the first internal path and the fourth internal path are configured to operate based on a first communication scheme, and
the first recovery ready signal, the second recovery ready signal and the bootloader recovery execution signal are transmitted based on the first communication scheme.
10. The method of claim 9, wherein:
the second internal path and the third internal path are configured to operate based on a second communication scheme different from the first communication scheme, and
the bootloader recovery data is transmitted based on the second communication scheme.
11. The method of claim 10, wherein:
the first communication scheme is based on an universal asynchronous receiver transmitter (UART) communication standard, and
the second communication scheme is based on an universal serial bus (USB) communication standard.
12. The method of claim 2, wherein changing the boot mode includes:
activating the third internal path after the mobile electronic device transmits the bootloader recovery execution signal; and
activating the second internal path after the bridge board receives the bootloader recovery execution signal.
13. The method of claim 1, further comprising:
performing a default booting in response to non-receiving the bootloader recovery request signal.
14. The method of claim 1, further comprising:
receiving, by the mobile electronic device, the bootloader recovery data based on the third internal path; and
recovering the bootloader based on the bootloader recovery data.
15. The method of claim 1, wherein:
the bridge board includes a first connector and the mobile electronic device includes a second connector;
the bridge board and the mobile electronic device are connected to each other through the first connector and the second connector;
each of the first connector and the second connector includes a first pin and a second pin; and
the bootloader recovery request signal is generated by setting a voltage level of each of the first pin and the second pin to a logic high level.
16. The method of claim 1, wherein:
the bridge board includes a third connector, and the host device includes a fourth connector; and
the bridge board and the host device are connected to each other through the third connector and the fourth connector.
17. A bootloader recovery system comprising:
a bridge board including:
a first processor;
first and second internal paths; and
a first internal path selector configured to select one of the first and second internal paths under a control of the first processor;
a mobile electronic device electrically connected to the bridge board, and including:
a second processor;
third and fourth internal paths; and
a second internal path selector configured to select one of the third and fourth internal paths under a control of the second processor; and
a host device electrically connected to the mobile electronic device;
wherein the bridge board is configured to transmit a bootloader recovery request signal to the mobile electronic device based on the first internal path and the third internal path,
wherein the mobile electronic device is configured to change a boot mode based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal,
wherein the host device is configured to transmit bootloader recovery data to the bridge board based on the changed boot mode, and
wherein the bridge board is configured to transmit the bootloader recovery data to the mobile electronic device based on the second internal path and the third internal path.
18. The bootloader recovery system of claim 17, wherein:
the mobile electronic device is configured to transmit a first recovery ready signal to the bridge board based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal;
the bridge board is configured to transmit a second recovery ready signal to the mobile electronic device based on the first internal path and the fourth internal path in response to receiving the first recovery ready signal; and
the mobile electronic device is configured to transmit a bootloader recovery execution signal to the bridge board based on the first internal path and the fourth internal path in response to receiving the second recovery ready signal.
19. The bootloader recovery system of claim 17, wherein:
the first internal path and the fourth internal path are configured to operate based on a first communication scheme, and the second internal path and the third internal path is configured to operate based on a second communication scheme different from the first communication scheme; and
the first communication scheme is based on an universal asynchronous receiver transmitter (UART) communication standard, and
the second communication scheme is based on an universal serial bus (USB) communication standard.
20. A method of recovering a bootloader in a mobile electronic device, the method comprising:
transmitting a bootloader recovery request signal from a bridge board to the mobile electronic device, the bridge board including a first internal path and a second internal path, the mobile electronic device including a third internal path and a fourth internal path, the bootloader recovery request signal being transmitted based on the first internal path and the third internal path;
changing a boot mode of the mobile electronic device based on the first internal path and the fourth internal path in response to receiving the bootloader recovery request signal;
transmitting bootloader recovery data from a host device to the bridge board based on the changed boot mode;
transmitting the bootloader recovery data from the bridge board to the mobile electronic device based on the second internal path and the third internal path; and
recovering the bootloader based on the bootloader recovery data,
wherein the bridge board includes a first connector, the mobile electronic device includes a second connector, and the bridge board and the mobile electronic device are connected to each other through the first connector and the second connector;
wherein each of the first connector and the second connector includes a first pin and a second pin; and
wherein the bootloader recovery request signal is generated by setting a voltage level of the first pin and the second pin to a logic high level.
US17/581,015 2021-05-18 2022-01-21 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof Abandoned US20220374312A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/452,181 US12189481B2 (en) 2021-05-18 2023-08-18 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210063802A KR20220156171A (en) 2021-05-18 2021-05-18 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing the same
KR10-2021-0063802 2021-05-18

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/452,181 Continuation US12189481B2 (en) 2021-05-18 2023-08-18 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof

Publications (1)

Publication Number Publication Date
US20220374312A1 true US20220374312A1 (en) 2022-11-24

Family

ID=84060066

Family Applications (2)

Application Number Title Priority Date Filing Date
US17/581,015 Abandoned US20220374312A1 (en) 2021-05-18 2022-01-21 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof
US18/452,181 Active US12189481B2 (en) 2021-05-18 2023-08-18 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof

Family Applications After (1)

Application Number Title Priority Date Filing Date
US18/452,181 Active US12189481B2 (en) 2021-05-18 2023-08-18 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof

Country Status (3)

Country Link
US (2) US20220374312A1 (en)
KR (1) KR20220156171A (en)
CN (1) CN115373895A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230393943A1 (en) * 2021-05-18 2023-12-07 Samsung Electronics Co., Ltd. Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140281464A1 (en) * 2013-03-15 2014-09-18 Avalanche Technology, Inc. Method of implementing magnetic random access memory (mram) for mobile system-on chip boot
US20150277933A1 (en) * 2014-03-31 2015-10-01 Quanta Computer Inc. Method of operating multiple operating systems and the electronic device thereof
US20180121277A1 (en) * 2016-11-03 2018-05-03 Foxconn eMS, Inc. Automated boot failure prevention and recovery circuit and related method
US20210149578A1 (en) * 2018-07-12 2021-05-20 Huawei Technologies Co., Ltd. Data Restoration Method Used When Terminal Is Restored to Factory Settings, and Terminal
US20220308963A1 (en) * 2021-03-29 2022-09-29 Advanced Micro Devices, Inc. Method and apparatus for providing recovery from a computing device boot up error

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002052798A2 (en) * 2000-12-22 2002-07-04 Research In Motion Limited Wireless router system and method
KR100605031B1 (en) 2004-06-21 2006-07-31 주식회사 파이오링크 Fault recovery and upgrade method of embedded system using USB memory device
JP2006053607A (en) 2004-08-09 2006-02-23 Sony Corp Information processing device
US7765440B2 (en) * 2006-06-29 2010-07-27 Intel Corporation Method and apparatus for OS independent platform recovery
WO2014032230A1 (en) * 2012-08-29 2014-03-06 Intel Corporation Method, apparatus and system of recovering an operating system on a portable communication device
US9606955B2 (en) 2014-02-10 2017-03-28 Intel Corporation Embedded universal serial bus solutions
US10534618B2 (en) * 2016-09-27 2020-01-14 American Megatrends International, Llc Auto bootloader recovery in BMC
KR20180130132A (en) 2017-05-29 2018-12-07 엘지전자 주식회사 Method for booting and upgrading a central controller of an air conditioner
CN111386518B (en) 2017-11-28 2023-09-19 惠普发展公司,有限责任合伙企业 Via electronic device operating system repair
KR101947487B1 (en) 2018-04-12 2019-05-02 주식회사 케이디티 monitoring control device for automatic data recovery
WO2021178731A1 (en) * 2020-03-04 2021-09-10 Karl Denninghoff Neurological movement detection to rapidly draw user attention to search results
KR20220156171A (en) * 2021-05-18 2022-11-25 삼성전자주식회사 Method of recovering bootloader in mobile electronic device and bootloader recovery system performing the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140281464A1 (en) * 2013-03-15 2014-09-18 Avalanche Technology, Inc. Method of implementing magnetic random access memory (mram) for mobile system-on chip boot
US20150277933A1 (en) * 2014-03-31 2015-10-01 Quanta Computer Inc. Method of operating multiple operating systems and the electronic device thereof
US20180121277A1 (en) * 2016-11-03 2018-05-03 Foxconn eMS, Inc. Automated boot failure prevention and recovery circuit and related method
US10725844B2 (en) * 2016-11-03 2020-07-28 Foxconn eMS, Inc. Automated boot failure prevention and recovery circuit and related method
US20210149578A1 (en) * 2018-07-12 2021-05-20 Huawei Technologies Co., Ltd. Data Restoration Method Used When Terminal Is Restored to Factory Settings, and Terminal
US20220308963A1 (en) * 2021-03-29 2022-09-29 Advanced Micro Devices, Inc. Method and apparatus for providing recovery from a computing device boot up error

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230393943A1 (en) * 2021-05-18 2023-12-07 Samsung Electronics Co., Ltd. Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof
US12189481B2 (en) * 2021-05-18 2025-01-07 Samsung Electronics Co., Ltd. Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof

Also Published As

Publication number Publication date
CN115373895A (en) 2022-11-22
US12189481B2 (en) 2025-01-07
US20230393943A1 (en) 2023-12-07
KR20220156171A (en) 2022-11-25

Similar Documents

Publication Publication Date Title
US10990411B2 (en) System and method to install firmware volumes from NVMe boot partition
US9575686B2 (en) Memory controller system with non-volatile backup storage
CN102165418B (en) Turbo boot computer systems
US9558012B2 (en) System boot with external media
US9563439B2 (en) Caching unified extensible firmware interface (UEFI) and/or other firmware instructions in a non-volatile memory of an information handling system (IHS)
US10635450B2 (en) Electronic device performing booting operation based on boot-up instruction provided from endpoint device
US10592253B2 (en) Technologies for pre-memory phase initialization of a computing device
US9424134B2 (en) Boot management in a non-volatile memory system
US20100064036A1 (en) Peripheral device operation method, peripheral device and host
US20140181495A1 (en) System on chip including boot shell debugging hardware and driving method thereof
US9606811B2 (en) Operating method of data storage device
US8423754B2 (en) Computer system and method of booting the same
US20190065300A1 (en) Method of retrieving debugging data in uefi and computer system thereof
US10204011B1 (en) Techniques for partially restarting a computing device in response to a configuration change
US12189481B2 (en) Method of recovering bootloader in mobile electronic device and bootloader recovery system performing thereof
US20100017588A1 (en) System, method, and computer program product for providing an extended capability to a system
US8499142B1 (en) UEFI boot loader for loading non-UEFI compliant operating systems
US7849300B2 (en) Method for changing booting sources of a computer system and a related backup/restore method thereof
US10853085B2 (en) Adjustable performance boot system
US20250147884A1 (en) Apparatus for managing cache loss and operation method thereof
US12379920B2 (en) Bios update system
US9086895B1 (en) Controlling hardware driver selection
US11675680B2 (en) Computing system initialization system
CN110704237A (en) Method, apparatus and data processing system for agent-less partition backup
US20070250690A1 (en) Method and system for caching peripheral component interconnect device expansion read only memory data

Legal Events

Date Code Title Description
AS Assignment

Owner name: SAMSUNG ELECTRONICS CO., LTD., KOREA, REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KO, DAEMAN;PARK, SANGUK;NA, SUNGHYUN;AND OTHERS;REEL/FRAME:058813/0157

Effective date: 20211202

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO PAY ISSUE FEE