Porting to a new device/Miscellaneous tips
Appearance
During initramfs generation: "modprobe: WARNING: Module drm not found in directory /lib/modules/..."
This means, that a module can not be put in an initramfs. When you are not using a mainline kernel, it is likely that there are no modules configured, but the code is built directly into the kernel. This means, it is expected and can be ignored.
The screen doesn't get updated
There is a known bug where if you execute cat /sys/class/graphics/fb0/modes > /sys/class/graphics/fb0/mode
exactly one frame is drawn, and the screen isn't updated otherwise.
If that is the case, add msm-fb-refresher
to device package's depends
.
Device reboots
- If your device always reboots after the same time (e.g. 2 minutes) after booting, you probably need to feed (or disable) a watchdog. Try to search your kernel config for watchdog, and also the internet for watchdog + your phone name.
- Android: The kernel config option
CONFIG_ANDROID_LOW_MEMORY_KILLER
may cause reboots. Please check if you have disabled it. If this helps you, please let us know, so we can consider checking for this option. - Android: it is possible to get the
dmesg
log from just before the crash after the reboot if you enable some kernel options.
SSH / udev / touch screen doesn't work
- Make sure that
DEVTMPFS
is enabled in your kernel config. Do not enableDEVTMPFS_MOUNT
.
I can't access the framebuffer device
cat /dev/random > /dev/fb0
returns:cat: write error: No such device
- This could be caused by a proprietary 3d driver enabled in the kernel config. Try to disable it (the actual config options may be different).