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 __MTD_TRANS_H__ 20 #define __MTD_TRANS_H__ 21 #include <linux/mutex.h> 22 struct hd_geometry; 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 struct mtd_info; 25 struct mtd_blktrans_ops; 26 struct file; 27 struct inode; 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 struct mtd_blktrans_dev { 30 struct mtd_blktrans_ops *tr; 31 struct list_head list; 32 struct mtd_info *mtd; 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 struct mutex lock; 35 int devnum; 36 int blksize; 37 unsigned long size; 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 int readonly; 40 void *blkcore_priv; 41 }; 42 struct blkcore_priv; 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 struct mtd_blktrans_ops { 45 char *name; 46 int major; 47 int part_bits; 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 int (*readsect)(struct mtd_blktrans_dev *dev, 50 unsigned long block, char *buffer); 51 int (*writesect)(struct mtd_blktrans_dev *dev, 52 unsigned long block, char *buffer); 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 int (*getgeo)(struct mtd_blktrans_dev *dev, struct hd_geometry *geo); 55 int (*flush)(struct mtd_blktrans_dev *dev); 56 int (*open)(struct mtd_blktrans_dev *dev); 57 int (*release)(struct mtd_blktrans_dev *dev); 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 void (*add_mtd)(struct mtd_blktrans_ops *tr, struct mtd_info *mtd); 60 void (*remove_dev)(struct mtd_blktrans_dev *dev); 61 struct list_head devs; 62 struct list_head list; 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 struct module *owner; 65 struct mtd_blkcore_priv *blkcore_priv; 66 }; 67 #endif 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69