Lines Matching full:volume

34 /* Volume identifier header magic number (ASCII "UBI!") */
38 * Volume type constants used in the volume identifier header.
40 * @UBI_VID_DYNAMIC: dynamic volume
41 * @UBI_VID_STATIC: static volume
49 * Volume flags used in the volume table record.
51 * @UBI_VTBL_AUTORESIZE_FLG: auto-resize this volume
53 * %UBI_VTBL_AUTORESIZE_FLG flag can be set only for one volume in the volume
54 * table. UBI automatically re-sizes the volume which has this flag and makes
55 * the volume to be of largest possible size. This means that if after the
57 * present on the device, it automatically appends all of them to the volume
59 * reserved physical eraseblocks are not taken). So, if there is a volume with
62 * reserved for this volume. Note, the %UBI_VTBL_AUTORESIZE_FLG bit is cleared
63 * after the volume had been initialized.
72 * number is required to calculate the volume sized and put them to the volume
78 * eraseblock handling, and then re-sizes the volume, not vice-versa. This
88 * @UBI_COMPAT_DELETE: delete this internal volume before anything is written
91 * @UBI_COMPAT_PRESERVE: preserve this internal volume - do not touch its
129 * is changed radically. This field is duplicated in the volume identifier
133 * volume identifier header and user data, relative to the beginning of the
158 * struct ubi_vid_hdr - on-flash UBI volume identifier header.
159 * @magic: volume identifier header magic number (%UBI_VID_HDR_MAGIC)
162 * @vol_type: volume type (%UBI_VID_DYNAMIC or %UBI_VID_STATIC)
165 * @compat: compatibility of this volume (%0, %UBI_COMPAT_DELETE,
167 * @vol_id: ID of this volume
171 * @used_ebs: total number of used logical eraseblocks in this volume
178 * @hdr_crc: volume identifier header CRC checksum
190 * and @lnum values in the volume identifier header. Suppose we have a logical
227 * UBI purposes. In this implementation there is only one internal volume - the
228 * layout volume. Internal volumes are the main mechanism of UBI extensions.
229 * For example, in future one may introduce a journal internal volume. Internal
237 * journal volume. And in this case, older UBI binaries, which know nothing
238 * about the journal volume, would just delete this volume and work perfectly
243 * eraseblock if this is a static volume. In case of dynamic volumes, it does
258 * eraseblocks the data of the volume takes. For dynamic volumes this field is
263 * eraseblocks of this volume. This is very handy when one uses block-oriented
264 * software (say, cramfs) on top of the UBI volume.
294 /* The layout volume contains the volume table */
300 #define UBI_LAYOUT_VOLUME_NAME "layout volume"
306 /* The maximum volume name length */
309 /* Size of the volume table record */
312 /* Size of the volume table record without the ending CRC */
316 * struct ubi_vtbl_record - a record in the volume table.
317 * @reserved_pebs: how many physical eraseblocks are reserved for this volume
318 * @alignment: volume alignment
321 * @vol_type: volume type (%UBI_DYNAMIC_VOLUME or %UBI_STATIC_VOLUME)
322 * @upd_marker: if volume update was started but not finished
323 * @name_len: volume name length
324 * @name: the volume name
325 * @flags: volume flags (%UBI_VTBL_AUTORESIZE_FLG)
329 * The volume table records are stored in the volume table, which is stored in
330 * the layout volume. The layout volume consists of 2 logical eraseblock, each
331 * of which contains a copy of the volume table (i.e., the volume table is
332 * duplicated). The volume table is an array of &struct ubi_vtbl_record
333 * objects indexed by the volume ID.
336 * %UBI_MAX_VOLUMES records, the volume table contains %UBI_MAX_VOLUMES
340 * The @upd_marker flag is used to implement volume update. It is set to %1
342 * interrupted, UBI knows that the volume is corrupted.
344 * The @alignment field is specified when the volume is created and cannot be
472 * struct ubi_fm_volhdr - Fastmap volume header
474 * @magic: Fastmap volume header magic number (%UBI_FM_VHDR_MAGIC)
475 * @vol_id: volume id of the fastmapped volume
476 * @vol_type: type of the fastmapped volume
477 * @data_pad: data_pad value of the fastmapped volume
478 * @used_ebs: number of used LEBs within this volume