Home | History | Annotate | Download | only in mtd
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef __UBI_USER_H__
     20 #define __UBI_USER_H__
     21 #include <linux/types.h>
     22 #define UBI_VOL_NUM_AUTO (- 1)
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #define UBI_DEV_NUM_AUTO (- 1)
     25 #define UBI_MAX_VOLUME_NAME 127
     26 #define UBI_IOC_MAGIC 'o'
     27 #define UBI_IOCMKVOL _IOW(UBI_IOC_MAGIC, 0, struct ubi_mkvol_req)
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define UBI_IOCRMVOL _IOW(UBI_IOC_MAGIC, 1, __s32)
     30 #define UBI_IOCRSVOL _IOW(UBI_IOC_MAGIC, 2, struct ubi_rsvol_req)
     31 #define UBI_IOCRNVOL _IOW(UBI_IOC_MAGIC, 3, struct ubi_rnvol_req)
     32 #define UBI_CTRL_IOC_MAGIC 'o'
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define UBI_IOCATT _IOW(UBI_CTRL_IOC_MAGIC, 64, struct ubi_attach_req)
     35 #define UBI_IOCDET _IOW(UBI_CTRL_IOC_MAGIC, 65, __s32)
     36 #define UBI_VOL_IOC_MAGIC 'O'
     37 #define UBI_IOCVOLUP _IOW(UBI_VOL_IOC_MAGIC, 0, __s64)
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define UBI_IOCEBER _IOW(UBI_VOL_IOC_MAGIC, 1, __s32)
     40 #define UBI_IOCEBCH _IOW(UBI_VOL_IOC_MAGIC, 2, __s32)
     41 #define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req)
     42 #define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, __s32)
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #define UBI_IOCEBISMAP _IOR(UBI_VOL_IOC_MAGIC, 5, __s32)
     45 #define UBI_IOCSETVOLPROP _IOW(UBI_VOL_IOC_MAGIC, 6, struct ubi_set_vol_prop_req)
     46 #define UBI_IOCVOLCRBLK _IOW(UBI_VOL_IOC_MAGIC, 7, struct ubi_blkcreate_req)
     47 #define UBI_IOCVOLRMBLK _IO(UBI_VOL_IOC_MAGIC, 8)
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define MAX_UBI_MTD_NAME_LEN 127
     50 #define UBI_MAX_RNVOL 32
     51 enum {
     52   UBI_DYNAMIC_VOLUME = 3,
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54   UBI_STATIC_VOLUME = 4,
     55 };
     56 enum {
     57   UBI_VOL_PROP_DIRECT_WRITE = 1,
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 };
     60 struct ubi_attach_req {
     61   __s32 ubi_num;
     62   __s32 mtd_num;
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64   __s32 vid_hdr_offset;
     65   __s16 max_beb_per1024;
     66   __s8 padding[10];
     67 };
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 struct ubi_mkvol_req {
     70   __s32 vol_id;
     71   __s32 alignment;
     72   __s64 bytes;
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74   __s8 vol_type;
     75   __s8 padding1;
     76   __s16 name_len;
     77   __s8 padding2[4];
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79   char name[UBI_MAX_VOLUME_NAME + 1];
     80 } __packed;
     81 struct ubi_rsvol_req {
     82   __s64 bytes;
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84   __s32 vol_id;
     85 } __packed;
     86 struct ubi_rnvol_req {
     87   __s32 count;
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89   __s8 padding1[12];
     90   struct {
     91     __s32 vol_id;
     92     __s16 name_len;
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94     __s8 padding2[2];
     95     char name[UBI_MAX_VOLUME_NAME + 1];
     96   } ents[UBI_MAX_RNVOL];
     97 } __packed;
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 struct ubi_leb_change_req {
    100   __s32 lnum;
    101   __s32 bytes;
    102   __s8 dtype;
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104   __s8 padding[7];
    105 } __packed;
    106 struct ubi_map_req {
    107   __s32 lnum;
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109   __s8 dtype;
    110   __s8 padding[3];
    111 } __packed;
    112 struct ubi_set_vol_prop_req {
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114   __u8 property;
    115   __u8 padding[7];
    116   __u64 value;
    117 } __packed;
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 struct ubi_blkcreate_req {
    120   __s8 padding[128];
    121 } __packed;
    122 #endif
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124