| The Android Open Source Project | 1dc9e47 | 2009-03-03 19:28:35 -0800 | [diff] [blame] | 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 | **************************************************************************** | 
|  | 11 | ****************************************************************************/ | 
|  | 12 | #ifndef _LINUX_MCA_H | 
|  | 13 | #define _LINUX_MCA_H | 
|  | 14 |  | 
|  | 15 | #include <linux/device.h> | 
|  | 16 |  | 
|  | 17 | #define MCA_bus 0 | 
|  | 18 |  | 
|  | 19 | typedef int (*MCA_ProcFn)(char* buf, int slot, void* dev); | 
|  | 20 |  | 
|  | 21 | enum MCA_AdapterStatus { | 
|  | 22 | MCA_ADAPTER_NORMAL = 0, | 
|  | 23 | MCA_ADAPTER_NONE = 1, | 
|  | 24 | MCA_ADAPTER_DISABLED = 2, | 
|  | 25 | MCA_ADAPTER_ERROR = 3 | 
|  | 26 | }; | 
|  | 27 |  | 
|  | 28 | struct mca_device { | 
|  | 29 | u64 dma_mask; | 
|  | 30 | int pos_id; | 
|  | 31 | int slot; | 
|  | 32 |  | 
|  | 33 | int index; | 
|  | 34 |  | 
|  | 35 | int driver_loaded; | 
|  | 36 |  | 
|  | 37 | unsigned char pos[8]; | 
|  | 38 |  | 
|  | 39 | short pos_register; | 
|  | 40 |  | 
|  | 41 | enum MCA_AdapterStatus status; | 
|  | 42 | struct device dev; | 
|  | 43 | char name[32]; | 
|  | 44 | }; | 
|  | 45 | #define to_mca_device(mdev) container_of(mdev, struct mca_device, dev) | 
|  | 46 |  | 
|  | 47 | struct mca_bus_accessor_functions { | 
|  | 48 | unsigned char (*mca_read_pos)(struct mca_device *, int reg); | 
|  | 49 | void (*mca_write_pos)(struct mca_device *, int reg, | 
|  | 50 | unsigned char byte); | 
|  | 51 | int (*mca_transform_irq)(struct mca_device *, int irq); | 
|  | 52 | int (*mca_transform_ioport)(struct mca_device *, | 
|  | 53 | int region); | 
|  | 54 | void * (*mca_transform_memory)(struct mca_device *, | 
|  | 55 | void *memory); | 
|  | 56 | }; | 
|  | 57 |  | 
|  | 58 | struct mca_bus { | 
|  | 59 | u64 default_dma_mask; | 
|  | 60 | int number; | 
|  | 61 | struct mca_bus_accessor_functions f; | 
|  | 62 | struct device dev; | 
|  | 63 | char name[32]; | 
|  | 64 | }; | 
|  | 65 | #define to_mca_bus(mdev) container_of(mdev, struct mca_bus, dev) | 
|  | 66 |  | 
|  | 67 | struct mca_driver { | 
|  | 68 | const short *id_table; | 
|  | 69 | void *driver_data; | 
|  | 70 | struct device_driver driver; | 
|  | 71 | }; | 
|  | 72 | #define to_mca_driver(mdriver) container_of(mdriver, struct mca_driver, driver) | 
|  | 73 |  | 
|  | 74 | #endif |