Comment 8 for bug 1231266

Revision history for this message
Pranav Tipnis (pranav-tipnis) wrote :

@botao-sun: No, manually setting env variables is just a temporary solution.

Ideally, lamc should write env variables for arndale while flashing SD card. But currently, it does not update env variables if env variables are already present. Let me elaborate further.

Here are my recent observations on different approaches:

1) I changed bootargs and bootcmd (setting it to incorrect values) in my SD card. Then I flashed my SD card using lamc. The lamc did not update env variables and the boot failed as I had set wrong bootargs and bootcmd.

2) I erased my SD card (bl1, spl, u-boot, and env section) completely. Then I flashed my SD card using lamc. This time lamc updated env section with correct values. So it seems that lamc updates env section only if it is zero. I don't know the intricacies of lamc, but this is my assumption from the observation.

What you did by re-partitioning SD card did not erase env section. Hence you still faced the boot failure issue.

Here is the steps you can follow to erase SD card and flashing SD card through lamc. This should boot without any manual intervention:

# dd if=/dev/zero of=/dev/sdc count=2000 bs=512 (This will erase bl1, spl, u-boot, and uboot env section)

# linaro-android-media-create --mmc /dev/sdc --dev arndale --boot boot.tar.bz2 --system system.tar.bz2 --userdata userdata.tar.bz2 (Flash SD card with arndale images)

The above steps should work without manual setting of any env variables.

@Vishal,
So the bug seems to be in linaro-image-tools only. It does not update env section if something is present. But it writes correctly in case env section is all zeros. This is my observation. Please try at your end to verify.