[Upgrading, Modifying and Unlocking] junocake:
I have a Qualcomm Mobile Development Platoform MSM8930 and expansion board and I'm trying to boot a mainline kernel and Debian environment, no Android or chroot. I've tried using fastboot, but believe this is the wrong approach, and would like some help on using (L)ittle (K)ernel to boot. My current goal is to boot linux, a ramdisk, and mount a rootfs from a SDcard. I don't need it permanently installed, just booted via USB.

Hardware:

Phone is a Qualcomm Mobile Development Platfomr (MDP), also know as FLUID, running Android 4.0.4 built from codeaurora.org, additional details:

https:// developer.qualcomm.com/mobile-development/development-devices/snapdragon-s4-msm8960-mdps

https:// codeaurora.org/xwiki/bin/QAEP/

Expansion board attaches to a port under the battery, which has USB, ethernet, serial, JTAG, and a barrel plug connections.

Compiling and Booting:

Uses (L)ittle (K)ernel to boot into fastboot, and can go into fastboot by holding volume down when powering on. There's not a lot of technical information on lk that I could find, so my current efforts are with using fastboot.

More info: https:// codeaurora.org/2010/03/02/little-kernel-based-android-bootloader/

I'm compiling a kernel from codeaurora.org since drivers for the 8930 are lacking in mainline right now, see attached config.gz.

Kernel Build procedure:

git clone git://codeaurora.org/kernel/msm.git
cd msm/
git checkout origin/msm-3.4
make msm8960_defconfig
Remove video cam modules since it errors outs
make -j9

Booting the zImage from above with fastboot with the command:

fastboot -b 81194804 -c "console=ttyMSM0,115200,n8" boot zImage

Nothing happens after the cmdline, even if a initrd is passed. I'm wondering if the serial console isn't working correclty, and I've tried multiple ttyMSM devices as well as ttyHSL0. The MSM serial drivers are compiled into the kernel and not modular (see attached config.gz).

Android Bootloader - UART_DM Initialized!!!
[0] welcome to lk

[10] platform_init()
[10] target_init()
[20] display_init
[90] USB init ept @ 0x88f52000
[130] fastboot_init()
[130] udc_start()
[260] -- reset --
[260] -- portchange --
[370] -- reset --
[370] -- portchange --
[510] fastboot: processing commands
[11570] fastboot: download:0014e800
[11680] fastboot: boot
[11690] Power on reason 32
[11690] booting linux @ 0x8119c804, ramdisk @ 0x82194804 (0)
[11690] cmdline: console=ttyMSM0,115200,n8 androidboot.emmc=true androidboot.serialno=e4674106 androidboot.baseband=msm

Here are the boot console messages from Android 4.0.4, showing lk booting the Android kernel:

Android Bootloader - UART_DM Initialized!!!
[0] welcome to lk

[10] platform_init()
[10] target_init()
[20] display_init
[1260] TZ channel swith returned 0
[1290]
kernel @ 81194804 (5565160 bytes)
[1290] ramdisk @ 81143000 (331872 bytes)
[1290] cmdline = 'console=ttyHSL0,115200,n8 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x3F'
[1300]
Booting Linux
[1300] Power on reason 32
[1310] booting linux @ 0x81194804, ramdisk @ 0x81143000 (331872)
[1310] cmdline: console=ttyHSL0,115200,n8 androidboot.hardware=qcom user_debug=31 msm_rtb.filter=0x3F androidboot.emmc=true androidboot.serialno=e4674106 androidboot.authorized_kernel=true androidboot.baseband=msm
[ 0.000000] Booting Linux on physical CPU 0