// (c) 2010 Thomas Schoebel-Theuer / 1&1 Internet AG #ifndef MARS_IF_DEVICE_H #define MARS_IF_DEVICE_H #define HT_SHIFT 6 //???? #define MARS_MAX_SEGMENT_SIZE (1U << (9+HT_SHIFT)) struct if_device_mars_ref_aspect { GENERIC_ASPECT(mars_ref); struct generic_callback cb; }; struct if_device_input { MARS_INPUT(if_device); struct request_queue *q; struct gendisk *disk; struct block_device *bdev; spinlock_t req_lock; struct generic_object_layout mref_object_layout; }; struct if_device_output { MARS_OUTPUT(if_device); }; struct if_device_brick { MARS_BRICK(if_device); bool is_active; struct if_device_output hidden_output; }; MARS_TYPES(if_device); #endif