Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Variables
ubi-user.h File Reference
#include <linux/types.h>

Go to the source code of this file.

Data Structures

struct  ubi_attach_req
 
struct  ubi_mkvol_req
 
struct  ubi_rsvol_req
 
struct  ubi_rnvol_req
 
struct  ubi_leb_change_req
 
struct  ubi_map_req
 
struct  ubi_set_vol_prop_req
 

Macros

#define UBI_VOL_NUM_AUTO   (-1)
 
#define UBI_DEV_NUM_AUTO   (-1)
 
#define UBI_MAX_VOLUME_NAME   127
 
#define UBI_IOC_MAGIC   'o'
 
#define UBI_IOCMKVOL   _IOW(UBI_IOC_MAGIC, 0, struct ubi_mkvol_req)
 
#define UBI_IOCRMVOL   _IOW(UBI_IOC_MAGIC, 1, __s32)
 
#define UBI_IOCRSVOL   _IOW(UBI_IOC_MAGIC, 2, struct ubi_rsvol_req)
 
#define UBI_IOCRNVOL   _IOW(UBI_IOC_MAGIC, 3, struct ubi_rnvol_req)
 
#define UBI_CTRL_IOC_MAGIC   'o'
 
#define UBI_IOCATT   _IOW(UBI_CTRL_IOC_MAGIC, 64, struct ubi_attach_req)
 
#define UBI_IOCDET   _IOW(UBI_CTRL_IOC_MAGIC, 65, __s32)
 
#define UBI_VOL_IOC_MAGIC   'O'
 
#define UBI_IOCVOLUP   _IOW(UBI_VOL_IOC_MAGIC, 0, __s64)
 
#define UBI_IOCEBER   _IOW(UBI_VOL_IOC_MAGIC, 1, __s32)
 
#define UBI_IOCEBCH   _IOW(UBI_VOL_IOC_MAGIC, 2, __s32)
 
#define UBI_IOCEBMAP   _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req)
 
#define UBI_IOCEBUNMAP   _IOW(UBI_VOL_IOC_MAGIC, 4, __s32)
 
#define UBI_IOCEBISMAP   _IOR(UBI_VOL_IOC_MAGIC, 5, __s32)
 
#define UBI_IOCSETVOLPROP
 
#define MAX_UBI_MTD_NAME_LEN   127
 
#define UBI_MAX_RNVOL   32
 

Enumerations

enum  { UBI_DYNAMIC_VOLUME = 3, UBI_STATIC_VOLUME = 4 }
 
enum  { UBI_VOL_PROP_DIRECT_WRITE = 1 }
 

Variables

enum { ... }  __attribute__
 
: volume name

struct ubi_mkvol_req - volume description data structure used in volume creation requests. : volume number : volume alignment : volume size in bytes : volume type (UBI_DYNAMIC_VOLUME or UBI_STATIC_VOLUME) : reserved for future, not used, has to be zeroed : volume name length : reserved for future, not used, has to be zeroed

This structure is used by user-space programs when creating new volumes. The field is only necessary when creating static volumes.

The field specifies the required alignment of the volume logical eraseblock. This means, that the size of logical eraseblocks will be aligned to this number, i.e., (UBI device logical eraseblock size) mod () = 0.

To put it differently, the logical eraseblock of this volume may be slightly shortened in order to make it properly aligned. The alignment has to be multiple of the flash minimal input/output unit, or %1 to utilize the entire available space of logical eraseblocks.

The field may be useful, for example, when one wants to maintain a block device on top of an UBI volume. In this case, it is desirable to fit an integer number of blocks in logical eraseblocks of this UBI volume. With alignment it is possible to update this volume using plane UBI volume image BLOBs, without caring about how to properly align them.

struct ubi_mkvol_req __packed
 

Macro Definition Documentation

#define MAX_UBI_MTD_NAME_LEN   127

Definition at line 193 of file ubi-user.h.

#define UBI_CTRL_IOC_MAGIC   'o'

Definition at line 165 of file ubi-user.h.

#define UBI_DEV_NUM_AUTO   (-1)

Definition at line 145 of file ubi-user.h.

#define UBI_IOC_MAGIC   'o'

Definition at line 152 of file ubi-user.h.

#define UBI_IOCATT   _IOW(UBI_CTRL_IOC_MAGIC, 64, struct ubi_attach_req)

Definition at line 168 of file ubi-user.h.

#define UBI_IOCDET   _IOW(UBI_CTRL_IOC_MAGIC, 65, __s32)

Definition at line 170 of file ubi-user.h.

#define UBI_IOCEBCH   _IOW(UBI_VOL_IOC_MAGIC, 2, __s32)

Definition at line 181 of file ubi-user.h.

#define UBI_IOCEBER   _IOW(UBI_VOL_IOC_MAGIC, 1, __s32)

Definition at line 179 of file ubi-user.h.

#define UBI_IOCEBISMAP   _IOR(UBI_VOL_IOC_MAGIC, 5, __s32)

Definition at line 187 of file ubi-user.h.

#define UBI_IOCEBMAP   _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req)

Definition at line 183 of file ubi-user.h.

#define UBI_IOCEBUNMAP   _IOW(UBI_VOL_IOC_MAGIC, 4, __s32)

Definition at line 185 of file ubi-user.h.

#define UBI_IOCMKVOL   _IOW(UBI_IOC_MAGIC, 0, struct ubi_mkvol_req)

Definition at line 155 of file ubi-user.h.

#define UBI_IOCRMVOL   _IOW(UBI_IOC_MAGIC, 1, __s32)

Definition at line 157 of file ubi-user.h.

#define UBI_IOCRNVOL   _IOW(UBI_IOC_MAGIC, 3, struct ubi_rnvol_req)

Definition at line 161 of file ubi-user.h.

#define UBI_IOCRSVOL   _IOW(UBI_IOC_MAGIC, 2, struct ubi_rsvol_req)

Definition at line 159 of file ubi-user.h.

#define UBI_IOCSETVOLPROP
Value:

Definition at line 189 of file ubi-user.h.

#define UBI_IOCVOLUP   _IOW(UBI_VOL_IOC_MAGIC, 0, __s64)

Definition at line 177 of file ubi-user.h.

#define UBI_MAX_RNVOL   32

Definition at line 196 of file ubi-user.h.

#define UBI_MAX_VOLUME_NAME   127

Definition at line 148 of file ubi-user.h.

#define UBI_VOL_IOC_MAGIC   'O'

Definition at line 174 of file ubi-user.h.

#define UBI_VOL_NUM_AUTO   (-1)

Definition at line 144 of file ubi-user.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
UBI_DYNAMIC_VOLUME 
UBI_STATIC_VOLUME 

Definition at line 204 of file ubi-user.h.

anonymous enum
Enumerator:
UBI_VOL_PROP_DIRECT_WRITE 

Definition at line 216 of file ubi-user.h.

Variable Documentation

enum { ... } __attribute__