Switching form Linux to Android


#1

Hi

As bootloader is proprietary and released as firmware blob.
In order to install Linux from a Host PC just follow these simple steps

step 1. Download the Linux images from the 96Boards Website
step 2. Bring the board into fastboot-mode
step 3. Start the fastboot tool on the HostPC
step 4. Flash the Bootloader Image
step 5. Flash the boot image
step 6. Flash the rootfs image
step 7. Reboot

Now For some experiment need to switch back to android, while loading android images i found error that no system/usderdata partition are not available .

Can some one help me to resolve this. i need to switch back to android form Linux.

Regards
Shweta


#2

hi,

there are 2 ways to do that.

  1. you can use the SD install image with Android. It’s called dragonboard410c_sdcard_install_android-xx.zip in the release folder. And you can flash this on SD card, boot from it, and it will let you reinstall Android. This method works if you board is running Ubuntu/Linaro or if it is bricked.

  2. you can use the same method you used to install Linux image. But instead of using the “linux” bootloader image, you use the “android” bootloader image. That will restore the eMMC partition table to match the Android partitions. Then you can flash the Android images (system, userdata, …)

cheers


#3

Hi,

Thanks for quick reply,

Second option seams appropriate for my requirement.
Can you please let me know form where i will get the bootlader binaries for android.

thanks
Shweta


#4

here:

http://builds.96boards.org/releases/dragonboard410c/linaro/rescue/latest/dragonboard410c_bootloader_emmc_android-40.zip

once you put the board into fastboot mode, you should be able run the ./flashall script from the above tarball.


#5

Thanks , it working .

I have seen partition of Android bootlader, it has sufficient space (userdata partition 5 GB)to store Linux file system.

Can you please help me to understand why we need to use two difference bootlader.
Is there any plan to merge both bootlader ?

Regards
Shweta


#6

hi

it’s not really the bootloader, actually, it’s just the partition table, e.g. gpt_both0.bin file. Android has its own partition scheme where it needs a bunch of partition (userdata, system, cache, recovery, persist, misc, modem, …), for linux we create a simpler partition scheme to avoid splitting the eMMC into un-needed partition and wasting space.

It is true that userdata might be ~5GB, but that still wastes quite a bit of eMMC. That’s why we have this very simple partition scheme for linux with only 1 large “rootfs” partition (of course we kept the mandatory partitions that are used by the bootloaders). and if i remember correctly, the ‘rootfs’ partition is almost 7GB. So in fact it was a conscious decision to have different bootloaders, and that won’t change.

While we will keep it that way for the Linux releases, if you really need/want to use the Android partition scheme , that’s doable (and not difficult). You can flash the linux rootfs image .img file into userdata, and update the boot.img to use ‘/dev/disk/by-partlabel/userdata’ instead of ‘/dev/disk/by-partlabel/rootfs’.