booting droid 4 xt894 with current kernel

booting hp t410 with current kernel

booting n8x0 with current kernel

unofficial n800 usb host mode

dynamic tick timer for linux

unofficial omap linux patches

linux for psion 5mx and revo kernel patches

proboot linux bootloader for psion 5mx pro

xpsitouch linux touch panel button handler for psion

linux fast serial port enabler for w83627hf

amd 76x native power management for linux

misc amd64 stuff for linux

powerbook 5300/1400 trex pcmcia driver for linux

pjb-100 personal jukebox usb driver for linux-2.6

xawtv-3.76 patch for remote X11 displays

dog toys



Here are some instructions to get droid 4 xt894 booted with mainline kernel

As of Linux 4.16-rc6, you probably want at least the following pending
patches applied

- backlight: add TI LMU backlight driver
- drm/omap: add framedone interrupt support
- drm/omap: add manual update detection helper
- drm/omap: add support for manually updated displays
- fdd192037fce ("ARM: dts: omap4-droid4: Fix USB PHY port naming")
- e5b9fd7bdeb5 ("ARM: dts: omap4-droid4: Configure MDM6600 USB PHY")
- 5d1ebbda0318 ("phy: mapphone-mdm6600: Add USB PHY driver for MDM6600 on Droid 4")

Then there are also pending CPCAP ASoC patches for audio.

List of some interesting links to follow the development

- droid 4 voice call test patch
- Sebastian Reichel's mainline kernel status matrix and other information
- droid4-kexecboot bootloader images
- xdadevelopers thread on booting raw partitions
- maemo leste images
- postmarketOS issue 1275
- sailfishOS test images

Debug UART

There is a debug uart at tty[SO]2 multiplexed with the USB connector. To use
it, you need a custom cable with D+ and D- connected to a 3.3V UART. You need
to leave VBUS disconnected to avoid the connector getting multiplexed back to
USB. It's easiest to make the custom UART by ordering a micro-USB-B breakout
board and connecting the USB serial cable wires to it. I used the sparkfun
break out board here, others should work fine too.

The wire connections are:
d-	device uart tx	usb serial rx ftdi yellow, pl2303 white
d+	device uart rx	usb serial tx ftdi orange, pl2303 green
gnd	device ground	usb serial gnd
vbus	do not connect


With droid4-kexecboot, there is no need to unlock the device compared to
using SafeStrap and ddroid. Please just follow the instructions in the

For using older setup for booting with SafeStrap and ddroid, Sebastian Reichel
has written some instructions on device table, rooting and install.


Note that droid 4 has few limitations. Some eMMC partitions are locked down,
and changing the first two partitions risks bricking the system. So it's best
to treat eMMC as a giant bootloader for kexec with just few usable partitions :)

So far it seems that the following partitions can be reformatted to
be used for Linux

mmcblk1p23	webtop		1.3GB
mmcblk1p22	preinstall	608MB
mmcblk1p25	emstorage	8GB	only if SafeStrap is not used

Also note that droid 4's modem is locked to be usable only with verizon
network in the U.S, in other countries any operator seems to work. The
mdm6600 modem can be used with ModemManager and qmicli for data and GPS.

The W3GLTE modem responds USB UART AT commands if powered, but is unable
to access the SIM card. It seems W3GLTE needs to read the SIM information
from mdm6600 over TS 27.010 n_gsm UART mux. There is some information
available here, and some reviews here and here.


Droid 4 has a Motorola custom PMIC called cpcap. It's connected over
SPI and controls things like regulators, USB and audio. Linux now has
various cpcap devices supported for regulators, battery charging and USB.
Unfortunately there is no documentation available for cpcap, but some
of the internal components like charging and ADC seem simlar to the ones
documented in NXP PMIC MC1378UG.pdf.

If you plan on working on adding more support, please coordinate the
effort on linux-omap mailing list to avoid duplicate work.


back to main page