diff --git a/build_library/README.disk_layout b/build_library/README.disk_layout
index 006ed9f..3a1613c 100644
--- a/build_library/README.disk_layout
+++ b/build_library/README.disk_layout
@@ -96,6 +96,18 @@
         # What file system will this partition be formatted with.
         "fs_format":"ext4",
 
+        # Optional, extra filesystem specific options passed to the program that
+        # creates the filesystem. For example, you can pass compression options
+        # to a compressed filesystem. This accepts a dictionary where the key is
+        # any of the valid fs_format values or a string, which will be used
+        # regardless of the fs_format value.
+        "fs_options":{
+          # Create an inode every 64 KiB of data on ext2 filesystems.
+          "ext2":"-i 65536",
+          # Compress squashfs with lzo.
+          "squashfs":"-comp lzo"
+        },
+
         # Optional, default is size of partition. Meaningless without
         # fs_format. Must be less than size of partition.
         # Size of filesystem in fs size
diff --git a/build_library/cgpt.py b/build_library/cgpt.py
index ecf5b24..8bf8508 100755
--- a/build_library/cgpt.py
+++ b/build_library/cgpt.py
@@ -241,7 +241,7 @@
   valid_layout_keys = set((
       '_comment', 'num', 'blocks', 'block_size', 'fs_blocks', 'fs_block_size',
       'uuid', 'label', 'format', 'fs_format', 'type', 'features', 'num',
-      'size', 'fs_size'))
+      'size', 'fs_size', 'fs_options'))
 
   config = _LoadStackedPartitionConfig(filename)
   try:
@@ -821,6 +821,38 @@
   return partition.get('fs_format')
 
 
+def GetFilesystemOptions(options, image_type, layout_filename, num):
+  """Returns the filesystem options of a given partition and layout type.
+
+  Args:
+    options: Flags passed to the script
+    image_type: Type of image eg base/test/dev/factory_install
+    layout_filename: Path to partition configuration file
+    num: Number of the partition you want to read from
+
+  Returns:
+    The selected partition's filesystem options
+  """
+
+  partitions = GetPartitionTableFromConfig(options, layout_filename, image_type)
+  partition = GetPartitionByNumber(partitions, num)
+
+  fs_options = partition.get('fs_options', {})
+  if isinstance(fs_options, dict):
+    fs_format = partition.get('fs_format')
+    result = fs_options.get(fs_format, '')
+  elif isinstance(fs_options, basestring):
+    result = fs_options
+  else:
+    raise InvalidLayout('Partition number %s: fs_format must be a string or '
+                        'dict, not "%s"' % (num, fs_options.__class__.__name__))
+  if '"' in result or "'" in result:
+    raise InvalidLayout('Partition number %s: fs_format cannot have quotes' %
+                        num)
+
+  return result
+
+
 def GetFilesystemSize(options, image_type, layout_filename, num):
   """Returns the filesystem size of a given partition for a given layout type.
 
@@ -957,6 +989,10 @@
           'usage': ['<image_type>', '<disk_layout>', '<partition_num>'],
           'func': GetFilesystemSize,
       },
+      'readfsoptions': {
+          'usage': ['<image_type>', '<disk_layout>', '<partition_num>'],
+          'func': GetFilesystemOptions,
+      },
       'readlabel': {
           'usage': ['<image_type>', '<disk_layout>', '<partition_num>'],
           'func': GetLabel,
diff --git a/build_library/legacy_disk_layout.json b/build_library/legacy_disk_layout.json
index c88138d..ac5a14d 100644
--- a/build_library/legacy_disk_layout.json
+++ b/build_library/legacy_disk_layout.json
@@ -111,6 +111,9 @@
         "label":"ROOT-A",
         "type":"rootfs",
         "fs_format":"ext2",
+        "fs_options": {
+          "squashfs":"-noI -no-xattrs -comp lzo -Xalgorithm lzo1x_999 -Xcompression-level 9"
+        },
         "size":"2048 MiB",
         "fs_size":"1224 MiB",
         "uuid": "clear"
