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 MAX_UBI_MTD_NAME_LEN 127
     47 #define UBI_MAX_RNVOL 32
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 enum {
     50  UBI_DYNAMIC_VOLUME = 3,
     51  UBI_STATIC_VOLUME = 4,
     52 };
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 enum {
     55  UBI_VOL_PROP_DIRECT_WRITE = 1,
     56 };
     57 struct ubi_attach_req {
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59  __s32 ubi_num;
     60  __s32 mtd_num;
     61  __s32 vid_hdr_offset;
     62  __s16 max_beb_per1024;
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64  __s8 padding[10];
     65 };
     66 struct ubi_mkvol_req {
     67  __s32 vol_id;
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69  __s32 alignment;
     70  __s64 bytes;
     71  __s8 vol_type;
     72  __s8 padding1;
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74  __s16 name_len;
     75  __s8 padding2[4];
     76  char name[UBI_MAX_VOLUME_NAME + 1];
     77 } __packed;
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 struct ubi_rsvol_req {
     80  __s64 bytes;
     81  __s32 vol_id;
     82 } __packed;
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84 struct ubi_rnvol_req {
     85  __s32 count;
     86  __s8 padding1[12];
     87  struct {
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89  __s32 vol_id;
     90  __s16 name_len;
     91  __s8 padding2[2];
     92  char name[UBI_MAX_VOLUME_NAME + 1];
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94  } ents[UBI_MAX_RNVOL];
     95 } __packed;
     96 struct ubi_leb_change_req {
     97  __s32 lnum;
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99  __s32 bytes;
    100  __s8 dtype;
    101  __s8 padding[7];
    102 } __packed;
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 struct ubi_map_req {
    105  __s32 lnum;
    106  __s8 dtype;
    107  __s8 padding[3];
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 } __packed;
    110 struct ubi_set_vol_prop_req {
    111  __u8 property;
    112  __u8 padding[7];
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114  __u64 value;
    115 } __packed;
    116 #endif
    117