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 _LINUX_MCA_H 20 #define _LINUX_MCA_H 21 #include <linux/device.h> 22 #define MCA_bus 0 23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24 typedef int (*MCA_ProcFn)(char* buf, int slot, void* dev); 25 enum MCA_AdapterStatus { 26 MCA_ADAPTER_NORMAL = 0, 27 MCA_ADAPTER_NONE = 1, 28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 29 MCA_ADAPTER_DISABLED = 2, 30 MCA_ADAPTER_ERROR = 3 31 }; 32 struct mca_device { 33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34 u64 dma_mask; 35 int pos_id; 36 int slot; 37 int index; 38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 39 int driver_loaded; 40 unsigned char pos[8]; 41 short pos_register; 42 enum MCA_AdapterStatus status; 43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 44 struct device dev; 45 char name[32]; 46 }; 47 #define to_mca_device(mdev) container_of(mdev, struct mca_device, dev) 48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 49 struct mca_bus_accessor_functions { 50 unsigned char (*mca_read_pos)(struct mca_device *, int reg); 51 void (*mca_write_pos)(struct mca_device *, int reg, 52 unsigned char byte); 53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 54 int (*mca_transform_irq)(struct mca_device *, int irq); 55 int (*mca_transform_ioport)(struct mca_device *, 56 int region); 57 void * (*mca_transform_memory)(struct mca_device *, 58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 59 void *memory); 60 }; 61 struct mca_bus { 62 u64 default_dma_mask; 63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64 int number; 65 struct mca_bus_accessor_functions f; 66 struct device dev; 67 char name[32]; 68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 69 }; 70 #define to_mca_bus(mdev) container_of(mdev, struct mca_bus, dev) 71 struct mca_driver { 72 const short *id_table; 73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 74 void *driver_data; 75 struct device_driver driver; 76 }; 77 #define to_mca_driver(mdriver) container_of(mdriver, struct mca_driver, driver) 78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 79 #endif 80