Memboot

From WebOS Internals
Jump to: navigation, search

Memboot

Memboot is an option to boot webOS devices using a kernel supplied via usb and novacom, its quite useful as a second-last-option before doctoring, to remove a custom kernel which doesnt boot.

Stuff you'll need:

  • Up-to-date SDK (especially novacom & novacomd)
  • Up-to-date WebOS Doctor Image
  • A little bit of knowledge and understanding of the next steps... But when you play with custom kernels, you should have that, right?

From the WebOS Doctor Image you'll need to extract the (original) kernel, that has been installed on the device:

  • open the .jar file (rename it to .zip is a hint, if you don't know how to access the contents)
  • inside, there is an archive /resources/webOS.tar - open/extract that one, too
  • inside webOS.tar, there is an archive nova-cust-image-rootfs.tar.gz - open/extract that one
  • inside the rootfs, in /boot there'll be the uImage you're searching for. See below for some examples of uImages for various webOS versions.
  • Copy the uImage to the novacom folder on your computer:
    • for Windows: program files\palm\sdk\bin
    • for Linux: /opt/Palm/novacom/

Memboot is a feature of bootie, the bootloader installed on the device. To get into bootie mode you must:

  • power off the phone
  • put in a USB cable connected to your computer
  • hold the volume up key, while powering on the device

Now you should have that big usb-resembling logo on the screen:

  • Start the memboot using the following command:
    • On Linux: (after opening a shell)
    /opt/Palm/novacom/novacom boot mem:// < uImage-2.6.24-palm-joplin-3430
    • On Windows : (after running cmd.exe)
    cd \program files\palm\sdk\bin
    novacom boot mem:// < uImage-2.6.24-palm-joplin-3430

(specify the name of YOUR kernel, of course)

More Information:

uImage kernel names:

  • 1.4.5: uImage-2.6.24-palm-joplin-3430
  • 2.1.0 (Pre2): uImage-2.6.24-palm-joplin-3430
  • 2.1.x/2.2x (Veer): uImage-2.6.29-palm-shank
  • 2.2.x (Pre3): uImage-2.6.32.9-palm-rib
  • 3.0.x (TouchPad): uImage-2.6.35-palm-tenderloin
  • 3.0.x (TouchPad Go): uImage-2.6.35-palm-shortloin