blob: bf428c6c86e38700398ccc3e4d29482cc9849b71 [file] [log] [blame]
// Copyright 2022 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
{
config: {
// Disables zxcrypt for minfs partitions.
// This argument is ignored when using Fxfs instead of minfs, which has its own encryption.
no_zxcrypt: { type: "bool" },
// FVM is in a ram-disk, thus minfs doesn't require zxcrypt.
fvm_ramdisk: { type: "bool" },
// When set, allows zxcrypt to attach and unseal minfs partitions not in a ram-disk (but
// don't mount).
zxcrypt_non_ramdisk: { type: "bool" },
// Enables all GPT devices.
gpt_all: { type: "bool" },
// Perform decompression in a sandboxed component.
// TODO(fxbug.dev/96844): This should be the only supported config; remove this flag.
sandbox_decompression: { type: "bool" },
// Normally the partition limits (minfs-max-bytes and blofs-max-bytes) apply only to
// non-ramdisk devices. This is to prevent device hardware configuration from leaking into
// ramdisk uses. When present, this flag makes them apply to all partitions of the
// corresponding type (this use used for tests).
apply_limits_to_ramdisk: { type: "bool" },
// Enables checking filesystems before mounting (if supported).
check_filesystems: { type: "bool" },
// Maximum number of bytes a blobfs partition can grow to. This applies only to non-ramdisk
// partitions unless "apply-limits-to-ramdisk" is set.
blobfs_max_bytes: { type: "uint64" },
// Maximum number of bytes the data partition can grow to. This applies only to non-ramdisk
// partitions unless "apply-limits-to-ramdisk" is set.
data_max_bytes: { type: "uint64" },
// Automatically formats the data partition if it is found to be corrupted.
format_data_on_corruption: { type: "bool" },
// Use the given format as the filesystem for the data partition.
data_filesystem_format: {
type: "string",
max_size: 64,
},
// Allow legacy names for the data partition.
allow_legacy_data_partition_names: { type: "bool" },
// Enables NAND devices.
nand: { type: "bool" },
// Enables blobfs partitions.
blobfs: { type: "bool" },
// Enables bootpart partitions.
bootpart: { type: "bool" },
// Enables the durable partition (small partition of settings that survives factory resets).
durable: { type: "bool" },
// Enables the factory partition (small partition of settings set in the factory and never
// written to otherwise).
factory: { type: "bool" },
// Enables a single FVM device.
fvm: { type: "bool" },
// Enables a single GPT device.
gpt: { type: "bool" },
// Enables MBR devices.
mbr: { type: "bool" },
// Enables data partitions.
data: { type: "bool" },
// Disables everything except fvm, gpt and bootpart.
netboot: { type: "bool" },
},
}