Nokia Lumia 630 (nokia-moneypenny)

From postmarketOS
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
Category testing
Pre-built images no
Original software Windows Phone
Original version 8.1
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
Features
USB Networking
Works
Flashing
Works
Touchscreen
Partial
Display
Works
WiFi
Broken
FDE
Broken
Mainline
Works
Battery
Broken
3D Acceleration
Broken
Audio
Broken
Bluetooth
Broken
Camera
Broken
GPS
Broken
Mobile data
Broken
Internal storage
SMS
Broken
Calls
Broken
USB OTG
Broken
NFC
Works
Sensors
Accelerometer
Broken
Magnetometer
Ambient Light
Proximity
Hall Effect
Barometer
Power Sensor
Misc
Built-in DVB
Camera Flash
Keyboard
Touchpad
USB-A
HDMI/DP
Ir TX
Ir RX
Stylus
Memory Card
Haptics
Ethernet
FOSS bootloader
This device is a Windows Phone.
See the Windows Phone page for common tips, guides and troubleshooting steps

Contributors

Maintainer(s)

Users owning this device

  • BlackEyedSquid (Notes: Lumia 635, 512MB RAM)
  • Brad1111 (Notes: Lumia 635 RM-974)
  • Chmod-rwx (Notes: RM-976)
  • FieryFlames (Notes: x2, a Lumia 630 UK variant and a Lumia 635 AT&T variant)
  • GEROGIANNIS (Notes: currently testing, Lumia 630)
  • JulianGro (Notes: dual SIM, working condition, not used for anything, stock Windows Phone 8.1)
  • Km2 (Notes: RM-976)
  • Kvo (Notes: Stock image at the moment)
  • Maxnet (Notes: RM-976)
  • 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.