1655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/**************************************************************************** 2655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 3655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 4655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** This header was automatically generated from a Linux kernel header 5655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** of the same name, to make information necessary for userspace to 6655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** call into the kernel available to libc. It contains only constants, 7655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** structures, and macros generated from the original header, and thus, 8655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** contains no copyrightable information. 9655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 10655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** To edit the content of this header, modify the corresponding 11655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** source file (e.g. under external/kernel-headers/original/) then 12655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** run bionic/libc/kernel/tools/update_all.py 13655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 14655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** Any manual change here will be lost the next time this script will 15655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** be run. You've been warned! 16655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng *** 17655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng **************************************************************************** 18655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng ****************************************************************************/ 19655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#ifndef __UBI_USER_H__ 20655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define __UBI_USER_H__ 21655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#include <linux/types.h> 22d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define UBI_VOL_NUM_AUTO (- 1) 23655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define UBI_DEV_NUM_AUTO (- 1) 25655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_MAX_VOLUME_NAME 127 26655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOC_MAGIC 'o' 27655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCMKVOL _IOW(UBI_IOC_MAGIC, 0, struct ubi_mkvol_req) 28655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCRMVOL _IOW(UBI_IOC_MAGIC, 1, __s32) 30655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCRSVOL _IOW(UBI_IOC_MAGIC, 2, struct ubi_rsvol_req) 31655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCRNVOL _IOW(UBI_IOC_MAGIC, 3, struct ubi_rnvol_req) 32655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_CTRL_IOC_MAGIC 'o' 33655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCATT _IOW(UBI_CTRL_IOC_MAGIC, 64, struct ubi_attach_req) 35655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCDET _IOW(UBI_CTRL_IOC_MAGIC, 65, __s32) 36655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_VOL_IOC_MAGIC 'O' 37655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCVOLUP _IOW(UBI_VOL_IOC_MAGIC, 0, __s64) 38655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCEBER _IOW(UBI_VOL_IOC_MAGIC, 1, __s32) 40655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCEBCH _IOW(UBI_VOL_IOC_MAGIC, 2, __s32) 41655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCEBMAP _IOW(UBI_VOL_IOC_MAGIC, 3, struct ubi_map_req) 42655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCEBUNMAP _IOW(UBI_VOL_IOC_MAGIC, 4, __s32) 43655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_IOCEBISMAP _IOR(UBI_VOL_IOC_MAGIC, 5, __s32) 45d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao#define UBI_IOCSETVOLPROP _IOW(UBI_VOL_IOC_MAGIC, 6, struct ubi_set_vol_prop_req) 46ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris#define UBI_IOCVOLCRBLK _IOW(UBI_VOL_IOC_MAGIC, 7, struct ubi_blkcreate_req) 47ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris#define UBI_IOCVOLRMBLK _IO(UBI_VOL_IOC_MAGIC, 8) 48ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define MAX_UBI_MTD_NAME_LEN 127 50655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#define UBI_MAX_RNVOL 32 51655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum { 52d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao UBI_DYNAMIC_VOLUME = 3, 53ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao UBI_STATIC_VOLUME = 4, 55655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 56655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengenum { 57d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao UBI_VOL_PROP_DIRECT_WRITE = 1, 58ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 60655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_attach_req { 61d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 ubi_num; 62d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 mtd_num; 63ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 vid_hdr_offset; 65d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s16 max_beb_per1024; 66d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding[10]; 67655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng}; 68ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_mkvol_req { 70d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 vol_id; 71d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 alignment; 72d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s64 bytes; 73ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 vol_type; 75d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding1; 76d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s16 name_len; 77d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding2[4]; 78ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char name[UBI_MAX_VOLUME_NAME + 1]; 80655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __packed; 81655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_rsvol_req { 82d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s64 bytes; 83ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 vol_id; 85655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __packed; 86655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_rnvol_req { 87d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 count; 88ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 89d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding1[12]; 90d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao struct { 91d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 vol_id; 92d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s16 name_len; 93ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 94d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding2[2]; 95d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao char name[UBI_MAX_VOLUME_NAME + 1]; 96d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao } ents[UBI_MAX_RNVOL]; 97655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __packed; 98ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_leb_change_req { 100d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 lnum; 101d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 bytes; 102d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 dtype; 103ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding[7]; 105655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __packed; 106655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_map_req { 107d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s32 lnum; 108ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 109d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 dtype; 110d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding[3]; 111655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __packed; 112655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Chengstruct ubi_set_vol_prop_req { 113ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 114d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u8 property; 115d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u8 padding[7]; 116d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __u64 value; 117655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng} __packed; 118ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 119ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferrisstruct ubi_blkcreate_req { 120d7db594b8d1dab36b711bd887a9dd21675c87243Tao Bao __s8 padding[128]; 121ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris} __packed; 122655a7c081f83b8351ed5f11a6c6accd9458293a8Ben Cheng#endif 123ba8d4f460b51161eb82cf1006cb34a3cc1389f47Christopher Ferris/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 124