123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- /*
- *
- * Linux MegaRAID device driver
- *
- * Copyright (c) 2003-2004 LSI Logic Corporation.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version
- * 2 of the License, or (at your option) any later version.
- *
- * FILE : megaraid_mm.h
- */
- #ifndef MEGARAID_MM_H
- #define MEGARAID_MM_H
- #include <linux/spinlock.h>
- #include <linux/fs.h>
- #include <asm/uaccess.h>
- #include <linux/module.h>
- #include <linux/moduleparam.h>
- #include <linux/pci.h>
- #include <linux/list.h>
- #include <linux/miscdevice.h>
- #include "mbox_defs.h"
- #include "megaraid_ioctl.h"
- #define LSI_COMMON_MOD_VERSION "2.20.2.7"
- #define LSI_COMMON_MOD_EXT_VERSION \
- "(Release Date: Sun Jul 16 00:01:03 EST 2006)"
- #define LSI_DBGLVL dbglevel
- // The smallest dma pool
- #define MRAID_MM_INIT_BUFF_SIZE 4096
- /**
- * mimd_t : Old style ioctl packet structure (deprecated)
- *
- * @inlen :
- * @outlen :
- * @fca :
- * @opcode :
- * @subopcode :
- * @adapno :
- * @buffer :
- * @pad :
- * @length :
- * @mbox :
- * @pthru :
- * @data :
- * @pad :
- *
- * Note : This structure is DEPRECATED. New applications must use
- * : uioc_t structure instead. All new hba drivers use the new
- * : format. If we get this mimd packet, we will convert it into
- * : new uioc_t format and send it to the hba drivers.
- */
- typedef struct mimd {
- uint32_t inlen;
- uint32_t outlen;
- union {
- uint8_t fca[16];
- struct {
- uint8_t opcode;
- uint8_t subopcode;
- uint16_t adapno;
- #if BITS_PER_LONG == 32
- uint8_t __user *buffer;
- uint8_t pad[4];
- #endif
- #if BITS_PER_LONG == 64
- uint8_t __user *buffer;
- #endif
- uint32_t length;
- } __attribute__ ((packed)) fcs;
- } __attribute__ ((packed)) ui;
- uint8_t mbox[18]; /* 16 bytes + 2 status bytes */
- mraid_passthru_t pthru;
- #if BITS_PER_LONG == 32
- char __user *data; /* buffer <= 4096 for 0x80 commands */
- char pad[4];
- #endif
- #if BITS_PER_LONG == 64
- char __user *data;
- #endif
- } __attribute__ ((packed))mimd_t;
- #endif // MEGARAID_MM_H
- // vi: set ts=8 sw=8 tw=78:
|