Nokia Lumia 630 (nokia-moneypenny)

From postmarketOS Wiki
Nokia Lumia 630
Nokia Lumia 630 running sxmo on postmarketOS
Nokia Lumia 630 running sxmo on postmarketOS
Manufacturer Nokia
Name Lumia 630
Codename nokia-moneypenny
Released 2014
Type handset
Hardware
Chipset Qualcomm Snapdragon 400 (MSM8226)
CPU 1.2 GHz Quad-Core ARM Cortex-A7
GPU Qualcomm Adreno 305
Display 480x854 IPS
Storage 8 GB
Memory 512 MB
Architecture armv7
Software
Original software Windows Phone
Original version 8.1
postmarketOS
Category testing
Pre-built images no
Mainline yes
Features
Flashing
Works
USB Networking
Works
Internal storage
SD card
Battery
Broken
Screen
Works
Touchscreen
Partial
Multimedia
3D Acceleration
Broken
Audio
Broken
Camera
Broken
Camera Flash
Connectivity
WiFi
Broken
Bluetooth
Broken
GPS
Broken
NFC
Works
Modem
Calls
Broken
SMS
Broken
Mobile data
Broken
Miscellaneous
FDE
Broken
USB OTG
Broken
HDMI/DP
Sensors
Accelerometer
Broken
Magnetometer
Ambient Light
Proximity
Hall Effect
Haptics
Barometer
This device is a Windows Phone.
See the Windows Mobile page for common tips, guides and troubleshooting steps

Contributors

Maintainer(s)

Users owning this device

  • AppData 174 (Notes: RM-976. USB port constantly reconnecting)
  • BlackEyedSquid (Notes: Lumia 635, 512MB RAM)
  • Brad1111 (Notes: Lumia 635 RM-974)
  • Chmod-rwx (Notes: RM-976)
  • FieryFlames (Notes: x2)
  • GEROGIANNIS (Notes: currently testing, Lumia 630)
  • JulianGro (Notes: dual SIM, working condition, not in use, stock Windows Phone 8.1)
  • Kekson1a (Notes: Bootlooping, shows 'EMMC write: Read back verify failed at sector x,num sectors 64' error when flashing)
  • Km2 (Notes: RM-976)
  • Kvo (Notes: Stock image at the moment)
  • Marshift (Notes: possibly 635?)
  • Maxnet (Notes: RM-976)
  • NBon (Notes: Untested yet)
  • Retr0 (Notes: Almost dead battery, running stock FW)
  • TravMurav (Notes: RM-978, dual-sim)


Current porting status

  • Mainline boots and has touch, screen, and side keys working.
  • Touch has issues on some Lumia 630s.
  • All 4 cores are now up!
  • USB is currently being tested, I can't personally confirm if USB networking is working but someone with a Lumia 735 said it is for them.
  • WLAN & BT being looked at
  • Charging only works if fully powered off, and if BCD battery threshold for OS loading is set below 100% (e.g. set it to 90%-ish)

Installation guide

Not much currently works, but if you want to try this out here's a guide:

Unlocking bootloader

See the general guide Unlocking the Bootloader for instructions.

Some firmwares of the lumia 635 are known to fail with WPInternals (namely TMO-US), in that case just flash the non-carrier firmware [1] onto these devices (as if you were "debranding" them) [2] and you should be able to unlock them.

Install developer menu and bootshim

After you have unlocked the bootloader of your phone, you will have to install the developer menu and bootshim onto your phone. This is made easy by the LumiaQuickStart script.

  • Clone the LumiaQuickStart repo [3]
  • Use WPInternals to reboot your phone into mass storage mode.
  • Run install.ps1 as administrator. Provide the path to EFIESP (Windows might also have mounted it inside MainOS).

After the script finishes, you should see a boot menu upon restart, which means we're ready to:

Install lk2nd

  • Download emmc_appsboot.mbn [4]
  • Copy emmc_appsboot.mbn to your phone's EFIESP folder
  • Unmount mass storage and restart your phone by holding the volume down and power buttons for a few seconds

If all went well, you should enter lk2nd by pressing volume up on the bootmenu or holding volume up on the NOKIA bootlogo.

Booting linux

Since we're going to be booting linux through lk2nd, we're going to need fastboot [5]

Run fastboot devices, you should see your device's serial number listed here

Now build Mainline4Lumia with this config

If all went well, you should see a zImage in arch/arm/boot. We're going to need to transform this into a workable boot.img.

  • Download mkbootimg (debian package as an example)
  • Append moneypenny's dtb by doing cat arch/arm/boot/dts/qcom-msm8226-nokia-moneypenny.dtb >> arch/arm/boot/zImage
  • Locate your ramdisk (or use whichever one you want)
  • Run mkbootimg --kernel arch/arm/boot/zImage --ramdisk PATHTORAMDISK -o boot.img

If all went well, this process should've yielded you a boot.img that works with fastboot.

All that remains is for you to run fastboot boot PATHTOBOOTIMG and stare at your lumia as it displays those four penguins, defying all of ballmer's efforts.

Installing a distro

TODO/UNTESTED (on branch v6.2-msm8226-nokia)

It is recommended that you install a distro (such as postmarketOS or Void Linux) on an SD Card and not directly on your device's eMMC.

  • Format your SD card to have 1 ext4 partition.
  • Extract an armv7 rootfs onto the partition. Alternatively, you can use pmbootstrap to flash the rootfs to the SD card. (pmbootstrap install --sdcard=/dev/sdX)
  • Insert your SD card into your device. Then get into lk2nd and boot linux with kernel parameters that point to your sdcard by running fastboot boot boot.img --cmdline "root=/dev/mmcblk1p1 rootwait"

See also

Internal links

External links

  • [6] Close to mainline linux kernel w/ support for moneypenny and a few other msm8x26 lumias on msm8x26 branch. Use msm8x26-touchscreen branch for touchscreen, until it gets committed into msm8x26.
  • [7] EDK2 for moneypenny 512mb variant. This does boot Linux!
  • [8] LittleKernel for moneypenny and some other lumias. This does ` from not boot Linux!! Useful for chain loading lk2nd to dump regulators when porting a lumia to linux.
  • [9] Boot shim used to boot EDK2.
  • [10] About the project, has links to our social medias too.