aboutsummaryrefslogtreecommitdiff
path: root/linaro_image_tools/media_create
diff options
context:
space:
mode:
authorJames Tunnicliffe <james.tunnicliffe@linaro.org>2012-04-16 14:12:37 +0100
committerJames Tunnicliffe <james.tunnicliffe@linaro.org>2012-04-16 14:12:37 +0100
commitb00df1e30773a01eddfc4dbf5ddbb793fb9bdfb2 (patch)
treeaf363e77ee2a08522a48ccf410dd2b70286504ce /linaro_image_tools/media_create
parent4675645d6fc2fb774447351eb4705e1a6e064c1b (diff)
Patch from https://bugs.launchpad.net/linaro-image-tools/+bug/962147
Adds the --directory option and FastModel board.
Diffstat (limited to 'linaro_image_tools/media_create')
-rw-r--r--linaro_image_tools/media_create/__init__.py5
-rw-r--r--linaro_image_tools/media_create/boards.py30
-rw-r--r--linaro_image_tools/media_create/partitions.py1
3 files changed, 35 insertions, 1 deletions
diff --git a/linaro_image_tools/media_create/__init__.py b/linaro_image_tools/media_create/__init__.py
index 0cae106..da63d9c 100644
--- a/linaro_image_tools/media_create/__init__.py
+++ b/linaro_image_tools/media_create/__init__.py
@@ -82,7 +82,10 @@ def get_args_parser():
'--mmc', dest='device', help='The storage device to use.')
group.add_argument(
'--image-file', '--image_file', dest='device',
- help='File where we should write the QEMU image.')
+ help='File where we should write an image file.')
+ group.add_argument(
+ '--directory', '--directory', dest='directory',
+ help='Directory where image and accessories should be written to.')
parser.add_argument(
'--dev', required=True, dest='board', choices=KNOWN_BOARDS,
help='Generate an SD card or image for the given board.')
diff --git a/linaro_image_tools/media_create/boards.py b/linaro_image_tools/media_create/boards.py
index c484f97..7423548 100644
--- a/linaro_image_tools/media_create/boards.py
+++ b/linaro_image_tools/media_create/boards.py
@@ -212,6 +212,7 @@ class BoardConfig(object):
_live_serial_opts = ''
extra_boot_args_options = None
supports_writing_to_mmc = True
+ outputs_directory = False
LOADER_MIN_SIZE_S = align_up(1 * 1024 ** 2, SECTOR_SIZE) / SECTOR_SIZE
BOOT_MIN_SIZE_S = align_up(50 * 1024 ** 2, SECTOR_SIZE) / SECTOR_SIZE
ROOT_MIN_SIZE_S = align_up(50 * 1024 ** 2, SECTOR_SIZE) / SECTOR_SIZE
@@ -1335,6 +1336,34 @@ class VexpressA9Config(VexpressConfig):
pass
+class FastModelConfig(BoardConfig):
+ supports_writing_to_mmc = False
+ outputs_directory = True
+
+ @classmethod
+ def _get_bootcmd(cls, d_img_data):
+ """Get the bootcmd for FastModel.
+
+ We override this as we don't do uboot.
+ """
+ return ""
+
+ @classmethod
+ def _make_boot_files_v2(cls, boot_env, chroot_dir, boot_dir,
+ boot_device_or_file, k_img_data, i_img_data,
+ d_img_data):
+ logger = logging.getLogger("linaro_image_tools")
+ logger.info("WTF=%s." % boot_device_or_file )
+ output_dir=os.path.dirname(boot_device_or_file)
+ cmd = [ "cp", "-v", _get_file_matching("%s/boot/img.axf" % chroot_dir), output_dir ]
+ proc = cmd_runner.run(cmd, as_root=True)
+ proc.wait()
+ cmd = [ "cp", "-v", k_img_data, i_img_data, d_img_data, output_dir ]
+ proc = cmd_runner.run(cmd, as_root=True)
+ proc.wait()
+ return
+
+
class SamsungConfig(BoardConfig):
@classproperty
def extra_serial_opts(cls):
@@ -1479,6 +1508,7 @@ board_configs = {
'panda': PandaConfig,
'vexpress': VexpressConfig,
'vexpress-a9': VexpressA9Config,
+ 'fastmodel': FastModelConfig,
'ux500': Ux500Config,
'snowball_sd': SnowballSdConfig,
'snowball_emmc': SnowballEmmcConfig,
diff --git a/linaro_image_tools/media_create/partitions.py b/linaro_image_tools/media_create/partitions.py
index 067da68..e63741e 100644
--- a/linaro_image_tools/media_create/partitions.py
+++ b/linaro_image_tools/media_create/partitions.py
@@ -590,4 +590,5 @@ class Media(object):
def __init__(self, path):
self.path = path
+ self.directory = None
self.is_block_device = path.startswith('/dev/')