Updating the modem firmware

With the modem firmware loader up and running, you can update the modem firmware.

The modem firmware package has several HEX files. The firmware is divided in to several files named firmware.update.image.segments.[n].hex that contain separate segments of the firmware.
To successfully update the modem, you must program the firmware segments in correct order.
  1. Take the lowest numbered firmware.update.image.segments.[n].hex file.
  2. Split the content of the hex file into contiguous sections that are page aligned and no larger than X bytes.
  3. From the previous step, write the following:
    1. The starting address of the section to 0x20000010.
    2. The length of the section to 0x20000014.
    3. The data of the section to 0x20000018.
    4. Write 0x3 to 0x2000000C.
  4. Write 1 to 0x4002A004 to start the IPC transaction.
  5. Poll IPC.MODEM_CTRL_EVENT and acknowledge the event.
  6. Repeat steps 2 to 5 until all sections have been programmed.
  7. Repeat steps 2 to 6 using the next firmware.update.image.segments.[n].hex file until all files have been programmed.