diff mbox

[Branch,~linaro-image-tools/linaro-image-tools/trunk] Rev 636: Add workaround for Arndale bootcmd on OpenEmbedded (LP: #1208815)

Message ID 20130816093226.14513.85994.launchpad@ackee.canonical.com
State Accepted
Headers show

Commit Message

Fathi Boudra Aug. 16, 2013, 9:32 a.m. UTC
------------------------------------------------------------
revno: 636
committer: Fathi Boudra <fathi.boudra@linaro.org>
branch nick: linaro-image-tools
timestamp: Fri 2013-08-16 12:30:08 +0300
message:
  Add workaround for Arndale bootcmd on OpenEmbedded (LP: #1208815)
modified:
  linaro-media-create


--
lp:linaro-image-tools
https://code.launchpad.net/~linaro-image-tools/linaro-image-tools/trunk

You are subscribed to branch lp:linaro-image-tools.
To unsubscribe from this branch go to https://code.launchpad.net/~linaro-image-tools/linaro-image-tools/trunk/+edit-subscription
diff mbox

Patch

=== modified file 'linaro-media-create'
--- linaro-media-create	2013-04-03 10:05:46 +0000
+++ linaro-media-create	2013-08-16 09:30:08 +0000
@@ -234,6 +234,17 @@ 
     # In case we're only extracting the kernel packages, avoid
     # using uuid because we don't have a working initrd
     if extract_kpkgs:
+        # XXX: workaround https://bugs.launchpad.net/bugs/1208815
+        # When we use OE, we don't have initrd/UUID and fallback to pass
+        # root=/dev/mmcblk0p3 to the kernel. It's based on mmc_option value
+        # provided by the hardware configuration (mmc_id: '0:2').
+        # At U-Boot stage, the value is correct and we load from mmc 0:2.
+        # At the kernel stage, the value becomes incorrect because Arndale
+        # has eMMC and rootfs can be found on /dev/mmcblk1p3.
+        # Since the boot commands are calculated based on the same mmc_id
+        # parameter, Arndale can't boot in this use case.
+        if board_config.board == 'arndale':
+            board_config.mmc_device_id = board_config.mmc_device_id + 1
         # XXX: this needs to be smarter as we can't always assume mmcblk devices
         rootfs_id = '/dev/mmcblk%dp%s' % (
                 board_config.mmc_device_id, 2 + board_config.mmc_part_offset)